Sadržaj[Sakrij][Prikaži]
Svijet se brzo mijenja zahvaljujući umjetnoj inteligenciji i strojnom učenju, koje ima utjecaja na svaki aspekt našeg svakodnevnog života.
Od glasovnih asistenata koji koriste NLP i mašinsko učenje za rezerviranje termina, traženje događaja u našem kalendaru i puštanje muzike do uređaja koji su toliko precizni da mogu predvidjeti naše potrebe prije nego što ih uzmemo u obzir.
Kompjuteri mogu igrati šah, raditi operacije i razvijati se u pametnije mašine nalik ljudima uz pomoć algoritama za mašinsko učenje.
Nalazimo se u vremenu kontinuiranog tehnološkog napretka, a gledajući kako su se kompjuteri razvijali kroz vrijeme, možemo predvidjeti šta će se dogoditi u budućnosti.
Demokratizacija računarskih alata i metoda jedan je od ključnih aspekata ove revolucije koja se ističe. Naučnici podataka stvorili su moćne računare za krckanje podataka tokom posljednjih pet godina bez napora implementirajući najsavremenije metodologije. Ishodi su zapanjujući.
U ovom postu ćemo pažljivo pogledati mašinsko učenje algoritmi i sve njihove varijacije.
Dakle, šta su algoritmi mašinskog učenja?
Pristup koji koristi AI sistem da izvrši svoj zadatak – generalno, predviđanje izlaznih vrednosti iz datih ulaznih podataka – poznat je kao algoritam mašinskog učenja.
Algoritam mašinskog učenja je proces koji koristi podatke i koristi se za kreiranje modela mašinskog učenja koji su spremni za proizvodnju. Ako je mašinsko učenje voz koji obavlja posao, onda su algoritmi mašinskog učenja lokomotive koje pokreću rad.
Najbolji pristup mašinskog učenja za korištenje bit će određen poslovnim problemom koji pokušavate riješiti, vrstom skupa podataka koji koristite i resursima koje imate na raspolaganju.
Algoritmi mašinskog učenja su oni koji pretvaraju skup podataka u model. Ovisno o vrsti problema na koji pokušavate odgovoriti, raspoloživoj procesorskoj snazi i vrsti podataka koje imate, algoritmi učenja pod nadzorom, bez nadzora ili s pojačavanjem mogu dobro funkcionirati.
Dakle, razgovarali smo o nadgledanom, nenadgledanom učenju i učenju s pojačavanjem, ali šta su oni? Hajde da ih istražimo.
Nadzirano, nenadgledano i učenje s pojačanjem
Nadzirano učenje
U nadziranom učenju, AI model se razvija na osnovu inputa koji je dat i oznake koja predstavlja predviđeni ishod. Na osnovu ulaza i izlaza, model razvija jednadžbu za mapiranje i koristeći tu jednačinu za mapiranje predviđa oznaku ulaza u budućnosti.
Recimo da trebamo napraviti model koji može razlikovati psa od mačke. Više fotografija mačaka i pasa se unose u model s oznakama koje pokazuju da li su mačke ili psi kako bi se model obučio.
Model nastoji uspostaviti jednačinu koja povezuje oznake na ulaznim fotografijama sa tim slikama. Čak i ako model nikada ranije nije vidio sliku, nakon treninga može prepoznati da li je riječ o mački ili psu.
Učenje bez nadzora
Učenje bez nadzora uključuje obuku AI modela samo na ulazima bez njihovog označavanja. Model dijeli ulazne podatke u grupe sa srodnim karakteristikama.
Buduća oznaka ulaza se tada predviđa u zavisnosti od toga koliko se njegovi atributi podudaraju sa jednom od klasifikacija. Razmotrimo situaciju u kojoj moramo podijeliti grupu crvenih i plavih loptica u dvije kategorije.
Pretpostavimo da su ostale karakteristike loptica identične, osim boje. Na osnovu toga kako može podijeliti loptice u dvije klase, model traži karakteristike koje se razlikuju između loptica.
Dvije grupe loptica - jedna plava i jedna crvena - nastaju kada se kuglice podijele u dvije grupe na osnovu njihove nijanse.
Učenje ojačanja
U učenju s pojačanjem, AI model nastoji maksimizirati ukupni profit tako što djeluje najbolje što može u određenim okolnostima. Povratne informacije o prethodnim rezultatima pomažu modelu da nauči.
Razmislite o scenariju kada je robotu naloženo da odabere rutu između tačaka A i B. Robot prvo bira bilo koji od kurseva jer nema prethodnog iskustva.
Robot prima podatke o ruti kojom ide i iz toga stiče znanje. Robot može koristiti input da popravi problem sljedeći put kada naiđe na sličnu okolnost.
Na primjer, ako robot odabere opciju B i dobije nagradu, kao što je pozitivna povratna informacija, ovaj put razumije da mora odabrati način B da poveća svoju nagradu.
Sada konačno ono što svi čekate su algoritmi.
Glavni algoritmi mašinskog učenja
1. Linearna regresija
Najjednostavniji pristup mašinskom učenju koji odstupa od učenja pod nadzorom je linearna regresija. Sa znanjem iz nezavisnih varijabli, uglavnom se koristi za rješavanje problema regresije i stvaranje predviđanja o kontinuiranim zavisnim varijablama.
Pronalaženje linije najboljeg uklapanja, koja može pomoći u predviđanju ishoda za kontinuirane zavisne varijable, je cilj linearne regresije. Cijene kuća, starost i plate neki su primjeri kontinuiranih vrijednosti.
Model poznat kao jednostavna linearna regresija koristi ravnu liniju za izračunavanje veze između jedne nezavisne varijable i jedne zavisne varijable. Postoji više od dvije nezavisne varijable u višestrukoj linearnoj regresiji.
Model linearne regresije ima četiri osnovne pretpostavke:
- Linearnost: Postoji linearna veza između X i srednje vrijednosti Y.
- Homoskedastičnost: Za svaku vrijednost X, rezidualna varijansa je ista.
- Nezavisnost: Posmatranja su nezavisna jedna od druge u smislu nezavisnosti.
- Normalnost: Kada je X fiksiran, Y je normalno raspoređen.
Linearna regresija ima izuzetan učinak za podatke koji se mogu odvojiti duž linija. Može kontrolirati prekomjerno prilagođavanje korištenjem tehnika regularizacije, unakrsnog provjeravanja i smanjenja dimenzionalnosti. Međutim, postoje slučajevi u kojima je potreban opsežan inženjering karakteristika, što povremeno može dovesti do prenamjene i buke.
2. Logistička regresija
Logistička regresija je još jedna tehnika mašinskog učenja koja odstupa od učenja pod nadzorom. Njegova glavna upotreba je klasifikacija, a može se koristiti i za probleme regresije.
Logistička regresija se koristi za predviđanje kategoričke zavisne varijable koristeći informacije iz nezavisnih faktora. Cilj je klasifikovati izlaze, koji mogu pasti samo između 0 i 1.
Ponderirani zbroj ulaza obrađuje sigmoidna funkcija, aktivacijska funkcija koja pretvara vrijednosti između 0 i 1.
Osnova logističke regresije je procjena maksimalne vjerovatnoće, metoda za izračunavanje parametara pretpostavljene distribucije vjerovatnoće datih specifičnim posmatranim podacima.
3. Stablo odluka
Još jedna metoda mašinskog učenja koja se odvaja od učenja pod nadzorom je stablo odlučivanja. I za pitanja klasifikacije i za pitanja regresije, može se koristiti pristup stabla odlučivanja.
Ovaj alat za donošenje odluka, koji nalikuje stablu, koristi vizuelne prikaze da pokaže očekivane rezultate, troškove i posledice akcija. Podjelom podataka u zasebne dijelove, ideja je analogna ljudskom umu.
Podaci su podijeljeni na različite dijelove onoliko koliko smo mogli granulirati. Glavni cilj stabla odlučivanja je da se izgradi model obuke koji se može koristiti za predviđanje klase ciljne varijable. Nedostajućim vrijednostima se može automatski rukovati pomoću stabla odlučivanja.
Ne postoji zahtjev za jednokratno kodiranje, lažne varijable ili druge korake prethodne obrade podataka. On je krut u smislu da mu je teško dodati svježe podatke. Ako imate dodatne označene podatke, trebali biste ponovo obučiti stablo na cijelom skupu podataka.
Kao rezultat toga, stabla odluka su loš izbor za bilo koju aplikaciju koja zahtijeva dinamičku promjenu modela.
Na osnovu vrste ciljne varijable, stabla odluka su klasifikovana u dva tipa:
- Kategorična varijabla: Stablo odlučivanja u kojem je varijabla cilja Kategorična.
- Kontinuirana varijabla: Stablo odlučivanja u kojem je varijabla cilja Kontinuirana.
4. Slučajna šuma
Metoda slučajne šume je sljedeća tehnika mašinskog učenja i nadzirani je algoritam mašinskog učenja koji se intenzivno koristi u pitanjima klasifikacije i regresije. To je također metoda zasnovana na stablu, slična stablu odlučivanja.
Šuma drveća, ili mnoga stabla odlučivanja, koristi se metodom slučajne šume za donošenje presuda. Prilikom rukovanja zadacima klasifikacije, metoda slučajne šume koristila je kategoričke varijable dok je rukovala zadacima regresije sa skupovima podataka koji sadrže kontinuirane varijable.
Ansambl, ili miješanje mnogih modela, je ono što radi metoda slučajne šume, što znači da se predviđanja izrađuju koristeći grupu modela, a ne samo jedan.
Mogućnost korištenja i za probleme klasifikacije i za regresijske probleme, koji čine većinu modernih sistema mašinskog učenja, ključna je prednost nasumične šume.
Ansambl koristi dvije različite strategije:
- Bagging: Radeći ovo, proizvodi se više podataka za skup podataka za obuku. To se radi kako bi se smanjile varijacije u prognozama.
- Podsticanje je proces kombinovanja slabih učenika sa jakim učenicima izgradnjom uzastopnih modela, što rezultira konačnim modelom sa maksimalnom preciznošću.
5. Naivni Bayes
Problem binarne (dvoklasne) i višeklasne klasifikacije može se riješiti korištenjem Naive Bayesove tehnike. Kada je metoda objašnjena korištenjem binarnih ili kategorija ulaznih vrijednosti, najjednostavnije je shvatiti. Pretpostavka koju je napravio naivni Bayesov klasifikator je da postojanje jedne karakteristike u klasi nema uticaja na prisustvo bilo koje druge karakteristike.
Gornja formula pokazuje:
- P(H): Vjerovatnoća da je hipoteza H tačna. Prethodna vjerovatnoća se naziva ovim.
- P(E): Vjerovatnoća dokaza
- P(E|H): Vjerovatnoća da je hipoteza podržana dokazima.
- P(H|E): Vjerovatnoća da je hipoteza tačna, s obzirom na dokaze.
Naivni Bayesov klasifikator bi uzeo u obzir svaku od ovih karakteristika pojedinačno kada bi određivao vjerovatnoću određenog rezultata, čak i ako su ti atributi povezani jedni s drugima. Naivni Bayesian model je jednostavan za konstruisanje i efikasan za velike skupove podataka.
Poznato je da radi bolje od čak i najsloženijih tehnika kategorizacije, iako je osnovna. To je zbirka algoritama koji su svi zasnovani na Bayesovoj teoremi, a ne na jednoj metodi.
6. K-najbliži susjedi
Tehnika K-najbližih susjeda (kNN) je podskup nadgledanog mašinskog učenja koji se može koristiti za rješavanje problema klasifikacije i regresije. KNN algoritam pretpostavlja da se u blizini mogu naći uporedivi objekti.
Sećam se toga kao okupljanja istomišljenika. kNN koristi ideju sličnosti između drugih tačaka podataka koristeći blizinu, blizinu ili udaljenost. Da bi se nevidljivi podaci označili na osnovu najbližih označenih vidljivih tačaka podataka, koristi se matematička metoda za određivanje razdvajanja između tačaka na grafu.
Morate odrediti udaljenost između tačaka podataka kako biste identificirali najbliže uporedive tačke. Za to se mogu koristiti mjerenja udaljenosti kao što su Euklidska udaljenost, Hamingova udaljenost, Manhattan udaljenost i Minkowski udaljenost. K je poznat kao broj najbližeg susjeda i često je neparan broj.
KNN se može primijeniti na probleme klasifikacije i regresije. Predviđanje napravljeno kada se KNN koristi za probleme regresije zasniva se na srednjoj vrijednosti ili medijani K-najsličnijih pojava.
Rezultat klasifikacionog algoritma zasnovanog na KNN-u može se odrediti kao klasa sa najvećom frekvencijom među K najsličnijim pojavama. Svaka instanca u suštini daje glas za svoju klasu, a predviđanje pripada klasi koja dobije najviše glasova.
7. K-srednja
To je tehnika za učenje bez nadzora koja se bavi problemima grupiranja. Skupovi podataka podijeljeni su u određeni broj klastera – nazovimo to K – na takav način da su tačke podataka svakog klastera homogene i različite od onih u drugim klasterima.
K-means metodologija grupiranja:
- Za svaki klaster, K-means algoritam bira k centara ili tačaka.
- Sa najbližim centrima ili K klasterima, svaka tačka podataka formira klaster.
- Sada se novi centroidi proizvode ovisno o već prisutnim članovima klastera.
- Najbliža udaljenost za svaku tačku podataka izračunava se pomoću ovih ažuriranih centara. Sve dok se centroidi ne promijene, ovaj proces se ponavlja.
Brži je, pouzdaniji i jednostavniji za razumijevanje. Ako postoje problemi, prilagodljivost k-means-a čini prilagođavanje jednostavnim. Kada su skupovi podataka različiti ili dobro izolovani jedan od drugog, rezultati su najbolji. Ne može upravljati pogrešnim podacima ili izuzetcima.
8. Mašine za podršku vektorima
Kada koristite SVM tehniku za klasifikaciju podataka, neobrađeni podaci se prikazuju kao tačke u n-dimenzionalnom prostoru (gdje je n broj karakteristika koje imate). Podaci se tada mogu lako klasificirati jer se vrijednost svake karakteristike zatim povezuje sa određenom koordinatom.
Da biste odvojili podatke i stavili ih na grafikon, koristite linije poznate kao klasifikatori. Ovaj pristup prikazuje svaku tačku podataka kao tačku u n-dimenzionalnom prostoru, gdje je n broj karakteristika koje imate, a vrijednost svake karakteristike je specifična vrijednost koordinata.
Sada ćemo locirati liniju koja dijeli podatke u dva skupa podataka koji su različito kategorizirani. Udaljenosti od najbližih tačaka u svakoj od dvije grupe bit će najudaljenije duž ove linije.
Budući da su dvije najbliže točke one koje su najudaljenije od linije u gornjem primjeru, linija koja dijeli podatke u dvije grupe koje su drugačije kategorizirane je srednja linija. Naš klasifikator je ova linija.
9. Smanjenje dimenzionalnosti
Koristeći pristup smanjenja dimenzionalnosti, podaci za obuku mogu imati manje ulaznih varijabli. Jednostavno rečeno, odnosi se na proces smanjenja veličine vašeg skupa karakteristika. Zamislimo da vaš skup podataka ima 100 kolona; smanjenje dimenzionalnosti će smanjiti taj iznos na 20 stupaca.
Model automatski postaje sofisticiraniji i ima veći rizik od preopterećenja kako se broj funkcija povećava. Najveći problem s radom s podacima u većim dimenzijama je ono što je poznato kao "prokletstvo dimenzionalnosti", koje se javlja kada vaši podaci sadrže prevelik broj karakteristika.
Za postizanje smanjenja dimenzionalnosti mogu se koristiti sljedeći elementi:
- Za pronalaženje i odabir relevantnih karakteristika koristi se odabir karakteristika.
- Koristeći već postojeće karakteristike, inženjering karakteristika ručno kreira nove karakteristike.
zaključak
Moguće je i mašinsko učenje bez nadzora ili pod nadzorom. Odaberite učenje pod nadzorom ako su vaši podaci manje bogati i dobro označeni za obuku.
Veliki skupovi podataka često bi radili i davali bolje rezultate koristeći učenje bez nadzora. Duboko učenje metode su najbolje ako imate veliku kolekciju podataka koja je lako dostupna.
Ojačavanje učenja i učenje sa dubokim pojačanjem neke su teme koje ste proučavali. Karakteristike, upotreba i ograničenja neuronskih mreža su vam sada jasni. Na kraju, ali ne i najmanje važno, razmotrili ste opcije za različite programske jezike, IDE-ove i platforme kada je u pitanju kreiranje vlastitog Modeli mašinskog učenja.
Sljedeće što trebate učiniti je da počnete proučavati i koristiti svaki od njih mašinsko učenje pristup. Čak i ako je tema široka, bilo koja tema se može razumjeti za nekoliko sati ako se fokusirate na njenu dubinu. Svaki subjekt se izdvaja od ostalih.
Morate razmišljati o jednom po jednom pitanju, proučavati ga, primjenjivati ga u praksi i koristiti jezik po svom izboru da implementirate algoritam(e) u njemu.
Ostavite odgovor