logo

Vrste strojnega učenja

Strojno učenje je podmnožica umetne inteligence, ki stroju omogoča samodejno učenje iz podatkov, izboljšanje zmogljivosti iz preteklih izkušenj in napovedovanje . Strojno učenje vsebuje nabor algoritmov, ki delujejo na ogromni količini podatkov. Podatki se posredujejo tem algoritmom, da jih usposobijo, in na podlagi urjenja zgradijo model in izvedejo določeno nalogo.

Vrste strojnega učenja

Ti algoritmi ML pomagajo rešiti različne poslovne težave, kot so regresija, klasifikacija, napovedovanje, združevanje v gruče in povezave itd.

Strojno učenje glede na metode in način učenja delimo predvsem na štiri vrste, ki so:

  1. Nadzorovano strojno učenje
  2. Nenadzorovano strojno učenje
  3. Polnadzorovano strojno učenje
  4. Okrepitveno učenje
Vrste strojnega učenja

V tej temi bomo podali podroben opis vrst strojnega učenja skupaj z njihovimi ustreznimi algoritmi:

1. Nadzorovano strojno učenje

Kot že ime pove, Nadzorovano strojno učenje temelji na nadzoru. To pomeni, da pri tehniki nadzorovanega učenja usposabljamo stroje z uporabo 'označenega' nabora podatkov in na podlagi usposabljanja stroj napove rezultat. Tukaj označeni podatki določajo, da so nekateri vhodi že preslikani v izhod. Bolj dragoceno, lahko rečemo; najprej usposobimo stroj z vhodom in ustreznim izhodom, nato pa od stroja zahtevamo, da predvidi izhod z uporabo testnega nabora podatkov.

Razumejmo nadzorovano učenje na primeru. Recimo, da imamo vhodni nabor slik mačk in psov. Torej, najprej bomo zagotovili usposabljanje stroja za razumevanje slik, kot je oblika in velikost repa mačke in psa, oblika oči, barva, višina (psi so višji, mačke so manjše) itd. Po končanem usposabljanju vnesemo sliko mačke in zahtevamo od stroja, da identificira predmet in napove rezultat. Zdaj je stroj že dobro izurjen, tako da bo preveril vse lastnosti predmeta, kot so višina, oblika, barva, oči, ušesa, rep itd., in ugotovil, da gre za mačko. Torej ga bo uvrstil v kategorijo Cat. To je postopek, kako naprava identificira predmete v nadzorovanem učenju.

Glavni cilj tehnike nadzorovanega učenja je preslikati vhodno spremenljivko (x) z izhodno spremenljivko (y). Nekatere resnične aplikacije nadzorovanega učenja so Ocena tveganja, odkrivanje goljufij, filtriranje neželene pošte, itd.

Kategorije nadzorovanega strojnega učenja

Nadzorovano strojno učenje je mogoče razvrstiti v dve vrsti težav, ki sta navedeni spodaj:

    Razvrstitev Regresija

a) Razvrstitev

Klasifikacijski algoritmi se uporabljajo za reševanje problemov klasifikacije, pri katerih je izhodna spremenljivka kategorična, kot je ' Da ali Ne, moški ali ženska, rdeča ali modra itd . Klasifikacijski algoritmi predvidevajo kategorije, prisotne v naboru podatkov. Nekateri primeri klasifikacijskih algoritmov iz resničnega sveta so Zaznavanje neželene pošte, filtriranje e-pošte itd.

logično v niz

Spodaj je navedenih nekaj priljubljenih algoritmov za razvrščanje:

    Algoritem naključnega gozda Algoritem odločitvenega drevesa Algoritem logistične regresije Algoritem podpornega vektorskega stroja

b) Regresija

Regresijski algoritmi se uporabljajo za reševanje regresijskih problemov, pri katerih obstaja linearna povezava med vhodnimi in izhodnimi spremenljivkami. Uporabljajo se za napovedovanje stalnih izhodnih spremenljivk, kot so tržni trendi, vremenske napovedi itd.

Nekaj ​​priljubljenih regresijskih algoritmov je navedenih spodaj:

    Preprost algoritem linearne regresije Multivariatni regresijski algoritem Algoritem odločitvenega drevesa Regresija z lasom

Prednosti in slabosti nadzorovanega učenja

Prednosti:

  • Ker nadzorovano učenje deluje z označenim naborom podatkov, tako da lahko imamo natančno predstavo o razredih predmetov.
  • Ti algoritmi so v pomoč pri napovedovanju rezultatov na podlagi predhodnih izkušenj.

Slabosti:

  • Ti algoritmi ne morejo rešiti kompleksnih nalog.
  • Lahko predvidi napačen izhod, če se testni podatki razlikujejo od podatkov o usposabljanju.
  • Za urjenje algoritma je potrebno veliko računskega časa.

Aplikacije nadzorovanega učenja

Nekatere običajne uporabe nadzorovanega učenja so navedene spodaj:

    Segmentacija slike:
    Pri segmentaciji slik se uporabljajo algoritmi nadzorovanega učenja. V tem procesu se klasifikacija slik izvaja na različnih slikovnih podatkih z vnaprej določenimi oznakami.Medicinska diagnoza:
    Nadzorovani algoritmi se uporabljajo tudi v medicini za diagnostične namene. Izvaja se z uporabo medicinskih slik in preteklih označenih podatkov z oznakami za bolezenska stanja. S takim postopkom lahko stroj identificira bolezen pri novih bolnikih.Odkrivanje prevar -Klasifikacijski algoritmi nadzorovanega učenja se uporabljajo za prepoznavanje goljufivih transakcij, goljufivih strank itd. To se naredi z uporabo preteklih podatkov za identifikacijo vzorcev, ki lahko vodijo do morebitne goljufije.Zaznavanje neželene pošte -Pri odkrivanju in filtriranju neželene pošte se uporabljajo algoritmi za razvrščanje. Ti algoritmi klasificirajo e-pošto kot neželeno pošto ali ne. Neželena pošta se pošlje v mapo z vsiljeno pošto.Prepoznavanje govora -Algoritmi nadzorovanega učenja se uporabljajo tudi pri prepoznavanju govora. Algoritem se uri z glasovnimi podatki in z njim je mogoče izvesti različne identifikacije, kot so glasovno aktivirana gesla, glasovni ukazi itd.

2. Nenadzorovano strojno učenje

Učenje brez nadzora g se razlikuje od tehnike nadzorovanega učenja; kot že ime pove, ni potrebe po nadzoru. To pomeni, da se pri nenadzorovanem strojnem učenju stroj uri z uporabo neoznačenega nabora podatkov in stroj predvidi izhod brez kakršnega koli nadzora.

Pri nenadzorovanem učenju se modeli usposabljajo s podatki, ki niso niti klasificirani niti označeni, model pa na te podatke deluje brez nadzora.

Glavni cilj algoritma za nenadzorovano učenje je združiti ali razvrstiti nerazvrščen nabor podatkov glede na podobnosti, vzorce in razlike. Stroji dobijo navodila, naj najdejo skrite vzorce iz vhodnega nabora podatkov.

Vzemimo primer, da ga bolje razumemo; Recimo, da obstaja košara s slikami sadja in jo vnesemo v model strojnega učenja. Slike so modelu popolnoma neznane, naloga stroja pa je najti vzorce in kategorije predmetov.

pretvori int v niz v javi

Tako bo zdaj stroj odkril svoje vzorce in razlike, kot so barvne razlike, razlike v obliki, in predvidel izhod, ko bo testiran s testnim naborom podatkov.

Kategorije nenadzorovanega strojnega učenja

Učenje brez nadzora lahko nadalje razvrstimo v dve vrsti, ki sta navedeni spodaj:

    Grozdenje Združenje

1) Grozdenje

Tehnika združevanja v gruče se uporablja, ko želimo iz podatkov poiskati inherentne skupine. To je način za združevanje predmetov v gručo, tako da objekti z največ podobnosti ostanejo v eni skupini in imajo manj ali nič podobnosti s predmeti drugih skupin. Primer algoritma združevanja v skupine je združevanje strank glede na njihovo nakupovalno vedenje.

Spodaj je navedenih nekaj priljubljenih algoritmov za združevanje v gruče:

    Algoritem združevanja v skupine K-Means Algoritem srednjega premika Algoritem DBSCAN Analiza glavnih komponent Neodvisna analiza komponent

2) Združenje

Učenje asociacijskih pravil je nenadzorovana tehnika učenja, ki najde zanimive odnose med spremenljivkami znotraj velikega nabora podatkov. Glavni cilj tega učnega algoritma je najti odvisnost ene podatkovne postavke od druge podatkovne postavke in ustrezno preslikati te spremenljivke, tako da lahko ustvari največji dobiček. Ta algoritem se uporablja predvsem v Analiza tržne košarice, rudarjenje spletne uporabe, kontinuirana proizvodnja itd.

java povratni niz

Nekateri priljubljeni algoritmi učenja asociacijskih pravil so Apriorni algoritem, Eclat, algoritem rasti FP.

Prednosti in slabosti algoritma nenadzorovanega učenja

Prednosti:

  • Te algoritme je mogoče uporabiti za zapletene naloge v primerjavi z nadzorovanimi, ker ti algoritmi delujejo na neoznačenem nizu podatkov.
  • Nenadzorovani algoritmi so bolj primerni za različne naloge, saj je pridobivanje neoznačenega nabora podatkov lažje v primerjavi z označenim naborom podatkov.

Slabosti:

  • Izhod nenadzorovanega algoritma je lahko manj natančen, ker nabor podatkov ni označen, algoritmi pa niso vnaprej usposobljeni z natančnim izhodom.
  • Delo z nenadzorovanim učenjem je težje, saj deluje z neoznačenim naborom podatkov, ki se ne preslika z izhodom.

Aplikacije nenadzorovanega učenja

    Analiza omrežja:Nenadzorovano učenje se uporablja za prepoznavanje plagiatorstva in avtorskih pravic v analizi dokumentnega omrežja besedilnih podatkov za znanstvene članke.Sistemi priporočil:Priporočilni sistemi pogosto uporabljajo tehnike nenadzorovanega učenja za izdelavo priporočilnih aplikacij za različne spletne aplikacije in spletna mesta za e-trgovino.Odkrivanje nepravilnosti:Zaznavanje anomalij je priljubljena aplikacija nenadzorovanega učenja, ki lahko identificira nenavadne podatkovne točke v naboru podatkov. Uporablja se za odkrivanje goljufivih transakcij.Razčlenitev singularne vrednosti:Singular Value Decomposition ali SVD se uporablja za pridobivanje določenih informacij iz baze podatkov. Na primer, pridobivanje informacij o vsakem uporabniku, ki se nahaja na določeni lokaciji.

3. Polnadzorovano učenje

Polnadzorovano učenje je vrsta algoritma strojnega učenja, ki je med nadzorovanim in nenadzorovanim strojnim učenjem. . Predstavlja vmesno podlago med algoritmi za nadzorovano (z označenimi podatki o usposabljanju) in algoritmi za nenadzorovano učenje (brez označenih podatkov za usposabljanje) ter uporablja kombinacijo označenih in neoznačenih naborov podatkov med obdobjem usposabljanja.

A Čeprav je delno nadzorovano učenje srednja pot med nadzorovanim in nenadzorovanim učenjem in deluje na podlagi podatkov, ki so sestavljeni iz nekaj oznak, je večinoma sestavljeno iz neoznačenih podatkov. Ker so etikete drage, imajo lahko za poslovne namene malo etiket. Popolnoma se razlikuje od nadzorovanega in nenadzorovanega učenja, saj temeljita na prisotnosti in odsotnosti oznak.

Za premagovanje pomanjkljivosti nadzorovanega učenja in algoritmov nenadzorovanega učenja je uveden koncept delno nadzorovanega učenja. . Glavni cilj delno nadzorovanega učenja je učinkovita uporaba vseh razpoložljivih podatkov in ne le označenih podatkov, kot je pri nadzorovanem učenju. Na začetku so podobni podatki združeni v skupine skupaj z nenadzorovanim učnim algoritmom, nato pa pomaga pri označevanju neoznačenih podatkov v označene podatke. To je zato, ker so označeni podatki sorazmerno dražja pridobitev kot neoznačeni podatki.

Te algoritme si lahko predstavljamo s primerom. Nadzorovano učenje je, kjer je študent pod nadzorom inštruktorja doma in na fakulteti. Nadalje, če ta učenec sam analizira isti koncept brez pomoči inštruktorja, gre za nenadzorovano učenje. Pri delno nadzorovanem učenju se mora študent ponovno pregledati po analizi istega koncepta pod vodstvom inštruktorja na fakulteti.

Prednosti in slabosti delno nadzorovanega učenja

Prednosti:

  • Algoritem je preprost in enostaven za razumevanje.
  • Je zelo učinkovit.
  • Uporablja se za odpravljanje pomanjkljivosti algoritmov nadzorovanega in nenadzorovanega učenja.

Slabosti:

  • Rezultati ponovitev morda niso stabilni.
  • Teh algoritmov ne moremo uporabiti za podatke na ravni omrežja.
  • Natančnost je nizka.

4. Učenje s krepitvijo

Okrepljeno učenje deluje na podlagi procesa, ki temelji na povratnih informacijah, v katerem agent AI (programska komponenta A) samodejno raziskuje svojo okolico z udarjanjem in sledenjem, ukrepanjem, učenjem iz izkušenj in izboljšanjem svoje učinkovitosti. Agent je nagrajen za vsako dobro dejanje in kaznovan za vsako slabo dejanje; zato je cilj agenta za okrepitveno učenje čim večje nagrade.

Pri učenju z okrepitvijo ni označenih podatkov, kot je nadzorovano učenje, in agenti se učijo le iz svojih izkušenj.

Proces učenja s krepitvijo je podoben človeškemu; na primer, otrok se nauči različnih stvari iz izkušenj v svojem vsakdanjem življenju. Primer učenja s krepitvijo je igranje igre, kjer je igra okolje, poteze agenta na vsakem koraku določajo stanja, cilj agenta pa je doseči visoko oceno. Agent prejme povratne informacije v smislu kazni in nagrad.

Zaradi svojega načina dela se utrjevalno učenje uporablja na različnih področjih, kot npr Teorija iger, operacijske raziskave, teorija informacij, večagentni sistemi.

Učni problem z okrepitvijo je mogoče formalizirati z uporabo Markovljev postopek odločanja (MDP). V MDP je agent nenehno v interakciji z okoljem in izvaja dejanja; na vsako dejanje se okolje odzove in ustvari novo stanje.

Kategorije učenja s krepitvijo

Učenje s krepitvijo je kategorizirano predvsem v dve vrsti metod/algoritmov:

psevdokoda java
    Učenje s pozitivno okrepitvijo:Učenje s pozitivno okrepitvijo določa povečanje težnje, da bi se zahtevano vedenje ponovilo z dodajanjem nečesa. Povečuje moč vedenja agenta in pozitivno vpliva nanj.Negativno ojačitveno učenje:Negativno učenje z okrepitvijo deluje ravno nasprotno od pozitivnega RL. Poveča težnjo, da bi se specifično vedenje ponovilo z izogibanjem negativnemu stanju.

Primeri uporabe okrepitvenega učenja v resničnem svetu

    Video igre:
    Algoritmi RL so zelo priljubljeni v igralnih aplikacijah. Uporablja se za pridobitev nadčloveške zmogljivosti. Nekatere priljubljene igre, ki uporabljajo algoritme RL, so AlphaGO in AlphaGO Zero .Upravljanje virov:
    Prispevek »Upravljanje virov z učenjem globoke krepitve« je pokazal, kako uporabljati RL v računalniku za samodejno učenje in razporejanje virov, da čakajo na različna opravila, da bi zmanjšali povprečno upočasnitev opravil.Robotika:
    RL se pogosto uporablja v aplikacijah robotike. Roboti se uporabljajo v industriji in proizvodnji, zmogljivejši pa so ti roboti z učenjem s krepitvijo. Obstajajo različne industrije, ki imajo svojo vizijo gradnje inteligentnih robotov z uporabo umetne inteligence in tehnologije strojnega učenja.Rudarjenje besedila
    Rudarjenje po besedilu, ena od odličnih aplikacij NLP-ja, se zdaj izvaja s pomočjo Reinforcement Learning podjetja Salesforce.

Prednosti in slabosti učenja s krepitvijo

Prednosti

  • Pomaga pri reševanju zapletenih problemov iz resničnega sveta, ki jih je težko rešiti s splošnimi tehnikami.
  • Učni model RL je podoben učenju ljudi; zato je mogoče najti najbolj natančne rezultate.
  • Pomaga pri doseganju dolgoročnih rezultatov.

Slabost

  • Algoritmi RL niso prednostni za preproste probleme.
  • Algoritmi RL zahtevajo ogromno podatkov in izračunov.
  • Preveč učenja s krepitvijo lahko povzroči preobremenitev stanj, kar lahko oslabi rezultate.

Prekletstvo dimenzionalnosti omejuje učenje s krepitvijo za resnične fizične sisteme.