Kazalo[Skrij][Pokaži]
Svet se hitro spreminja zaradi umetne inteligence in strojnega učenja, ki vpliva na vse vidike našega vsakdana.
Od glasovnih pomočnikov, ki uporabljajo NLP in strojno učenje za rezervacijo sestankov, iskanje dogodkov v našem koledarju in predvajanje glasbe do naprav, ki so tako natančne, da lahko predvidevajo naše potrebe, še preden jih sploh upoštevamo.
Računalniki lahko igrajo šah, izvajajo operacije in se razvijejo v pametnejše, človeku podobne stroje s pomočjo algoritmov strojnega učenja.
Smo v času nenehnega tehnološkega napredka in če vidimo, kako so se računalniki razvijali skozi čas, lahko napovedujemo, kaj se bo zgodilo v prihodnosti.
Demokratizacija računalniških orodij in metod je eden ključnih vidikov te revolucije, ki izstopa. Podatkovni strokovnjaki so v zadnjih petih letih ustvarili zmogljive računalnike za obdelavo podatkov z lahkoto uvedbo najsodobnejših metodologij. Rezultati so osupljivi.
V tej objavi si bomo natančno ogledali strojno učenje algoritmi in vse njihove različice.
Torej, kaj so algoritmi strojnega učenja?
Pristop, ki ga uporablja sistem AI za izvajanje svoje naloge – na splošno napovedovanje izhodnih vrednosti iz danih vhodnih podatkov – je znan kot algoritem strojnega učenja.
Algoritem strojnega učenja je proces, ki uporablja podatke in se uporablja za ustvarjanje modelov strojnega učenja, ki so pripravljeni za proizvodnjo. Če je strojno učenje vlak, ki opravlja delo, so algoritmi strojnega učenja lokomotive, ki premikajo delo.
Najboljši pristop strojnega učenja za uporabo bo določen s poslovnim problemom, ki ga poskušate rešiti, vrsto nabora podatkov, ki ga uporabljate, in viri, ki jih imate na voljo.
Algoritmi strojnega učenja so tisti, ki nabor podatkov spremenijo v model. Odvisno od vrste težave, na katero poskušate odgovoriti, razpoložljive procesorske moči in vrste podatkov, ki jih imate, se lahko algoritmi za nadzor, nenadzorovani ali z okrepitvijo uspešno obnesejo.
Torej, govorili smo o nadzorovanem, nenadzorovanem učenju in učenju z okrepitvijo, toda kaj so? Raziščimo jih.
Nadzorovano, nenadzorovano in učenje s krepitvijo
Nadzorovano učenje
Pri nadzorovanem učenju se model umetne inteligence razvije na podlagi vložkov, ki so bili zagotovljeni, in oznake, ki predstavlja napovedani rezultat. Na podlagi vhodov in izhodov model razvije enačbo za preslikavo in z uporabo te enačbe za preslikavo napoveduje oznako vhodov v prihodnosti.
Recimo, da moramo ustvariti model, ki bo razlikoval med psom in mačko. Več fotografij mačk in psov je vnesenih v model z oznakami, ki označujejo, ali so mačke ali psi, da se model izuri.
Model želi vzpostaviti enačbo, ki povezuje oznake na vhodnih fotografijah s temi slikami. Tudi če model še nikoli ni videl slike, po treningu lahko ugotovi, ali gre za mačko ali psa.
Nenadzorovano učenje
Nenadzorovano učenje vključuje usposabljanje modela AI samo na vhodih, ne da bi jih označili. Model razdeli vhodne podatke v skupine s sorodnimi značilnostmi.
Prihodnja oznaka vhoda je nato napovedana glede na to, kako tesno se njegovi atributi ujemajo z eno od klasifikacij. Razmislite o situaciji, ko moramo skupino rdečih in modrih kroglic razdeliti v dve kategoriji.
Predpostavimo, da so druge lastnosti kroglic enake, razen barve. Na podlagi tega, kako lahko kroglice razdeli v dva razreda, model išče značilnosti, ki se med kroglicami razlikujejo.
Dve skupini kroglic - ena modra in ena rdeča - nastaneta, ko so kroglice razdeljene v dve skupini glede na njihov odtenek.
Okrepitveno učenje
Pri učenju s krepitvijo si model umetne inteligence prizadeva povečati celoten dobiček tako, da deluje tako dobro, kot lahko v določenih okoliščinah. Povratne informacije o njegovih prejšnjih rezultatih pomagajo modelu pri učenju.
Pomislite na scenarij, ko je robotu naročeno, da izbere pot med točkama A in B. Robot najprej izbere enega od tečajev, ker nima predhodnih izkušenj.
Robot prejme podatke o poti, po kateri se pelje, in pridobi znanje iz nje. Robot lahko uporabi vnos za odpravo težave, ko naslednjič naleti na podobno okoliščino.
Na primer, če robot izbere možnost B in prejme nagrado, kot je pozitivna povratna informacija, tokrat razume, da mora izbrati način B, da poveča svojo nagrado.
Zdaj končno, kar vsi čakate, so algoritmi.
Glavni algoritmi strojnega učenja
1. Linearna regresija
Najpreprostejši pristop strojnega učenja, ki odstopa od nadzorovanega učenja, je linearna regresija. Z znanjem iz neodvisnih spremenljivk se večinoma uporablja za reševanje težav z regresijo in ustvarjanje napovedi o neprekinjenih odvisnih spremenljivkah.
Iskanje črte najboljšega prileganja, ki lahko pomaga pri napovedovanju izida za neprekinjene odvisne spremenljivke, je cilj linearne regresije. Cene stanovanj, starost in plače so nekateri primeri stalnih vrednosti.
Model, znan kot preprosta linearna regresija, uporablja ravno črto za izračun povezave med eno neodvisno spremenljivko in eno odvisno spremenljivko. V večkratni linearni regresiji sta več kot dve neodvisni spremenljivki.
Model linearne regresije ima štiri osnovne predpostavke:
- Linearnost: med X in povprečjem Y obstaja linearna povezava.
- Homoskedastičnost: Za vsako vrednost X je preostala varianca enaka.
- Neodvisnost: opazovanja so neodvisna drug od drugega v smislu neodvisnosti.
- Normalnost: Ko je X fiksen, je Y normalno porazdeljen.
Linearna regresija je odlična za podatke, ki jih je mogoče ločiti vzdolž črt. Prekomerno opremljanje lahko nadzoruje z uporabo tehnik regularizacije, navzkrižne validacije in zmanjševanja dimenzij. Vendar pa obstajajo primeri, ko je potreben obsežen inženiring funkcij, kar lahko občasno povzroči prekomerno opremljanje in hrup.
2. Logistična regresija
Logistična regresija je še ena tehnika strojnega učenja, ki odstopa od nadzorovanega učenja. Njegova glavna uporaba je klasifikacija, medtem ko se lahko uporablja tudi za regresijske probleme.
Logistična regresija se uporablja za napovedovanje kategorično odvisne spremenljivke z uporabo informacij iz neodvisnih faktorjev. Cilj je razvrstiti izhode, ki so lahko le med 0 in 1.
Uteženo vsoto vhodov obdela sigmoidna funkcija, aktivacijska funkcija, ki pretvarja vrednosti med 0 in 1.
Osnova logistične regresije je ocena največje verjetnosti, metoda za izračun parametrov predpostavljene verjetnostne porazdelitve glede na specifične opazovane podatke.
3. Drevo odločitev
Druga metoda strojnega učenja, ki se odcepi od nadzorovanega učenja, je drevo odločitev. Za vprašanja klasifikacije in regresije je mogoče uporabiti pristop drevesa odločanja.
To orodje za odločanje, ki spominja na drevo, uporablja vizualne predstavitve za prikaz pričakovanih rezultatov, stroškov in posledic dejanj. Z razdelitvijo podatkov na ločene dele je ideja analogna človeškemu umu.
Podatki so bili razdeljeni na različne dele, kolikor smo jih lahko granulirali. Glavni cilj drevesa odločanja je zgraditi model usposabljanja, ki ga je mogoče uporabiti za napovedovanje razreda ciljne spremenljivke. Manjkajoče vrednosti je mogoče samodejno obravnavati z drevesom odločitev.
Ni potrebe po enkratnem kodiranju, navideznih spremenljivkah ali drugih korakih predhodne obdelave podatkov. Je tog v smislu, da ji je težko dodati sveže podatke. Če imate dodatne označene podatke, morate znova usposobiti drevo na celotnem naboru podatkov.
Posledično so drevesa odločitev slaba izbira za vsako aplikacijo, ki zahteva dinamično spremembo modela.
Glede na vrsto ciljne spremenljivke so drevesa odločitev razvrščena v dve vrsti:
- Kategorična spremenljivka: drevo odločitev, v katerem je spremenljivka cilja kategorična.
- Neprekinjena spremenljivka: drevo odločitev, v katerem je spremenljivka cilja neprekinjena.
4. Naključni gozd
Metoda naključnega gozda je naslednja tehnika strojnega učenja in je nadzorovan algoritem strojnega učenja, ki se obsežno uporablja pri vprašanjih klasifikacije in regresije. Je tudi metoda, ki temelji na drevesu, podobna drevesu odločanja.
Gozd dreves ali številna drevesa odločanja se uporablja z metodo naključnega gozda za presojanje. Pri obravnavanju nalog klasifikacije je metoda naključnega gozda uporabila kategorične spremenljivke, medtem ko je regresijske naloge obravnavala z nizi podatkov, ki vsebujejo neprekinjene spremenljivke.
Metoda naključnega gozda naredi ansambel ali mešanje številnih modelov, kar pomeni, da so napovedi narejene z uporabo skupine modelov in ne samo enega.
Sposobnost uporabe tako za klasifikacijske kot regresijske probleme, ki sestavljajo večino sodobnih sistemov strojnega učenja, je ključna prednost naključnega gozda.
Ensemble uporablja dve različni strategiji:
- Polaganje v vrečko: s tem se ustvari več podatkov za nabor podatkov o usposabljanju. To se naredi, da se zmanjšajo razlike v napovedih.
- Pospeševanje je proces združevanja šibkih učencev z močnimi z izgradnjo zaporednih modelov, kar ima za posledico končni model z največjo natančnostjo.
5. Naivni Bayes
Problem binarne (dvorazredne) in večrazredne klasifikacije je mogoče rešiti z uporabo Naive Bayesove tehnike. Ko je metoda razložena z uporabo binarnih ali kategorijskih vhodnih vrednosti, jo je najlažje razumeti. Predpostavka naivnega Bayesovega klasifikatorja je, da obstoj ene lastnosti v razredu ne vpliva na prisotnost drugih lastnosti.
Zgornja formula označuje:
- P(H): Verjetnost, da je hipoteza H pravilna. Predhodna verjetnost se imenuje ta.
- P(E): Verjetnost dokazov
- P(E|H): Verjetnost, da je hipoteza podprta z dokazi.
- P(H|E): Verjetnost, da je hipoteza resnična, glede na dokaze.
Naivni Bayesov klasifikator bi pri določanju verjetnosti določenega rezultata upošteval vsako od teh značilnosti posebej, tudi če so ti atributi med seboj povezani. Naivni Bayesov model je preprost za sestavo in učinkovit za velike nabore podatkov.
Znano je, da deluje bolje kot celo najbolj zapletene tehnike kategorizacije, medtem ko je osnovna. Gre za zbirko algoritmov, ki vsi temeljijo na Bayesovem izreku in ne na eni sami metodi.
6. K-Najbližji sosedje
Tehnika K-najbližjih sosedov (kNN) je podmnožica nadzorovanega strojnega učenja, ki se lahko uporablja za reševanje težav s klasifikacijo in regresijo. Algoritem KNN predvideva, da je v bližini mogoče najti primerljive predmete.
Spominjam se ga kot srečanja podobno mislečih posameznikov. kNN izkorišča zamisel o podobnosti med drugimi podatkovnimi točkami z uporabo bližine, bližine ali razdalje. Za označevanje nevidnih podatkov na podlagi najbližjih označenih opaznih podatkovnih točk se uporablja matematična metoda za določitev ločitve med točkami na grafu.
Določiti morate razdaljo med podatkovnimi točkami, da ugotovite najbližje primerljive točke. Za to se lahko uporabijo meritve razdalje, kot so Evklidska razdalja, Hammingova razdalja, Manhattanska razdalja in Minkowskijeva razdalja. K je znano kot najbližje sosedsko število in je pogosto liho število.
KNN je mogoče uporabiti za probleme klasifikacije in regresije. Napoved, narejena, ko se KNN uporablja za težave z regresijo, temelji na povprečju ali mediani K-najbolj podobnih pojavov.
Rezultat klasifikacijskega algoritma, ki temelji na KNN, je mogoče določiti kot razred z najvišjo frekvenco med K najbolj podobnimi pojavi. Vsaka instanca v bistvu odda glas za svoj razred, napoved pa pripada razredu, ki prejme največ glasov.
7. K-sredstva
To je tehnika za nenadzorovano učenje, ki obravnava težave z združevanjem v skupine. Podatkovni nizi so razdeljeni na določeno število grozdov – poimenujmo ga K – tako, da so podatkovne točke vsakega grozda homogene in se razlikujejo od tistih v drugih grozdih.
Metodologija združevanja v skupine K-means:
- Za vsako gručo algoritem K-means izbere k centrov ali točk.
- Z najbližjimi središči ali K grozdi vsaka podatkovna točka tvori grozd.
- Zdaj se proizvajajo novi centroidi glede na že prisotne člane grozda.
- Najbližja razdalja za vsako podatkovno točko se izračuna z uporabo teh posodobljenih središč. Dokler se središča ne spremenijo, se ta postopek ponavlja.
Je hitrejša, zanesljivejša in enostavnejša za razumevanje. Če obstajajo težave, prilagodljivost k-means olajša prilagoditve. Ko so nabori podatkov različni ali dobro izolirani drug od drugega, so rezultati najboljši. Ne more upravljati napačnih podatkov ali izstopajočih vrednosti.
8. Podporni vektorski stroji
Pri uporabi tehnike SVM za razvrščanje podatkov so neobdelani podatki prikazani kot pike v n-dimenzionalnem prostoru (kjer je n število funkcij, ki jih imate). Podatke je potem mogoče enostavno razvrstiti, ker je vrednost vsake značilnosti nato povezana z določeno koordinato.
Če želite podatke ločiti in jih postaviti na graf, uporabite črte, znane kot klasifikatorji. Ta pristop izriše vsako podatkovno točko kot točko v n-dimenzionalnem prostoru, kjer je n število funkcij, ki jih imate, in vrednost vsake značilnosti je določena koordinatna vrednost.
Zdaj bomo poiskali vrstico, ki deli podatke na dva niza podatkov, ki sta bila različno kategorizirana. Razdalje od najbližjih točk v vsaki od dveh skupin bodo vzdolž te črte najbolj oddaljene.
Ker sta dve najbližji točki tisti, ki sta najbolj oddaljeni od črte v zgornjem primeru, je črta, ki deli podatke v dve skupini, ki sta bili različno kategorizirani, srednja črta. Naš klasifikator je ta vrstica.
9. Zmanjšanje dimenzij
Z uporabo pristopa zmanjševanja razsežnosti imajo lahko podatki o usposabljanju manj vhodnih spremenljivk. Preprosto povedano, se nanaša na proces krčenja velikosti vašega nabora funkcij. Predstavljajmo si, da ima vaš nabor podatkov 100 stolpcev; zmanjšanje dimenzij bo zmanjšalo ta znesek na 20 stolpcev.
Model samodejno postaja vse bolj izpopolnjen in ima večjo nevarnost prenamestitve, ko se število funkcij povečuje. Največja težava pri delu s podatki v večjih dimenzijah je tako imenovano »prekletstvo dimenzionalnosti«, ki se pojavi, ko vaši podatki vsebujejo preveliko število značilnosti.
Za zmanjšanje dimenzij je mogoče uporabiti naslednje elemente:
- Za iskanje in izbiro ustreznih lastnosti se uporablja izbira lastnosti.
- Z uporabo že obstoječih funkcij inženiring funkcij ročno ustvari nove funkcije.
zaključek
Možno je tako nenadzorovano kot nadzorovano strojno učenje. Izberite nadzorovano učenje, če so vaši podatki manj bogati in dobro označeni za usposabljanje.
Veliki nabori podatkov bi pogosto delovali in prinesli boljše rezultate z uporabo nenadzorovanega učenja. Globoko učenje metode so najboljše, če imate na voljo veliko zbirko podatkov.
Okrepitveno učenje in globoko okrepljeno učenje so nekatere teme, ki ste jih preučevali. Značilnosti, uporabe in omejitve nevronskih mrež so vam zdaj jasne. Nenazadnje ste razmišljali o možnostih za različne programske jezike, IDE in platforme, ko je prišlo do ustvarjanja lastnih modeli strojnega učenja.
Naslednja stvar, ki jo morate storiti, je, da začnete preučevati in uporabljati vsakega strojno učenje pristop. Tudi če je tema obsežna, je vsako temo mogoče razumeti v nekaj urah, če se osredotočite na njeno globino. Vsak predmet je ločen od drugih.
Razmišljati morate o enem vprašanju naenkrat, ga preučiti, uporabiti v praksi in uporabiti jezik po svoji izbiri za implementacijo algoritma(-ov) v njem.
Pustite Odgovori