Strojno učenje podskup je umjetne inteligencije koji omogućuje stroju da automatski uči iz podataka, poboljšava izvedbu iz prošlih iskustava i daje predviđanja . Strojno učenje sadrži skup algoritama koji rade na ogromnoj količini podataka. Podaci se šalju tim algoritmima da ih obuče, a na temelju obuke oni izgrade model i izvrše određeni zadatak.
Ovi ML algoritmi pomažu u rješavanju različitih poslovnih problema kao što su regresija, klasifikacija, predviđanje, grupiranje i pridruživanje itd.
Na temelju metoda i načina učenja, strojno učenje se uglavnom dijeli na četiri vrste, a to su:
- Nadzirano strojno učenje
- Strojno učenje bez nadzora
- Polu-nadzirano strojno učenje
- Učenje s pojačanjem
U ovoj temi pružit ćemo detaljan opis vrsta strojnog učenja zajedno s njihovim odgovarajućim algoritmima:
može apstraktna klasa imati konstruktor
1. Nadzirano strojno učenje
Kao što mu ime govori, Nadzirano strojno učenje temelji se na nadzoru. To znači da u tehnici nadziranog učenja mi treniramo strojeve pomoću 'označenog' skupa podataka, a na temelju treninga stroj predviđa izlaz. Ovdje označeni podaci određuju da su neki od ulaza već preslikani na izlaz. Što je još dragocjenije, možemo reći; prvo treniramo stroj s ulazom i odgovarajućim izlazom, a zatim tražimo od stroja da predvidi izlaz pomoću skupa testnih podataka.
Razmotrimo nadzirano učenje na primjeru. Pretpostavimo da imamo ulazni skup podataka slika mačaka i pasa. Dakle, prvo ćemo omogućiti stroju obuku da razumije slike, kao što je oblik i veličina repa mačke i psa, oblik očiju, boja, visina (psi su viši, mačke su manje), itd. Nakon završetka obuke, unosimo sliku mačke i tražimo od stroja da identificira objekt i predvidi rezultat. Sada je stroj dobro uvježban, pa će provjeriti sve karakteristike predmeta, kao što su visina, oblik, boja, oči, uši, rep itd., i ustanoviti da se radi o mački. Dakle, stavit će ga u kategoriju Cat. Ovo je proces kojim stroj identificira objekte u nadziranom učenju.
Glavni cilj tehnike nadziranog učenja je mapiranje ulazne varijable(x) s izlaznom varijablom(y). Neke stvarne primjene nadziranog učenja su Procjena rizika, otkrivanje prijevara, filtriranje neželjene pošte, itd.
Kategorije nadziranog strojnog učenja
Nadzirano strojno učenje može se klasificirati u dvije vrste problema koji su navedeni u nastavku:
a) Klasifikacija
Klasifikacijski algoritmi koriste se za rješavanje problema klasifikacije u kojima je izlazna varijabla kategorična, kao što je ' Da ili Ne, Muško ili Žensko, Crveno ili Plavo, itd . Algoritmi klasifikacije predviđaju kategorije prisutne u skupu podataka. Neki primjeri algoritama klasifikacije iz stvarnog svijeta su Otkrivanje neželjene pošte, filtriranje e-pošte itd.
Neki popularni algoritmi klasifikacije navedeni su u nastavku:
b) Regresija
Regresijski algoritmi koriste se za rješavanje problema regresije u kojima postoji linearni odnos između ulaznih i izlaznih varijabli. Oni se koriste za predviđanje kontinuiranih izlaznih varijabli, kao što su tržišni trendovi, vremenska prognoza itd.
Neki popularni regresijski algoritmi navedeni su u nastavku:
Prednosti i nedostaci nadziranog učenja
Prednosti:
- Budući da učenje pod nadzorom radi s označenim skupom podataka, tako da možemo imati točnu predodžbu o klasama objekata.
- Ovi algoritmi su korisni u predviđanju rezultata na temelju prethodnog iskustva.
Nedostaci:
- Ovi algoritmi nisu u stanju riješiti složene zadatke.
- Može predvidjeti pogrešan izlaz ako se testni podaci razlikuju od podataka za obuku.
- Za treniranje algoritma potrebno je mnogo računalnog vremena.
Primjene nadziranog učenja
Neke uobičajene primjene nadziranog učenja navedene su u nastavku:
U segmentaciji slike koriste se algoritmi nadziranog učenja. U ovom procesu, klasifikacija slika se izvodi na različitim slikovnim podacima s unaprijed definiranim oznakama.
Nadzirani algoritmi također se koriste u medicini u dijagnostičke svrhe. To se radi korištenjem medicinskih slika i prošlih označenih podataka s oznakama za stanja bolesti. S takvim procesom, stroj može identificirati bolest za nove pacijente.
2. Nenadzirano strojno učenje
Učenje bez nadzora g razlikuje se od tehnike nadziranog učenja; kao što mu ime kaže, nema potrebe za nadzorom. To znači da se u nenadziranom strojnom učenju stroj obučava pomoću neoznačenog skupa podataka, a stroj predviđa izlaz bez ikakvog nadzora.
U nenadziranom učenju, modeli se treniraju s podacima koji nisu klasificirani niti označeni, a model postupa s tim podacima bez ikakvog nadzora.
Glavni cilj algoritma za učenje bez nadzora je grupirati ili kategorizirati nerazvrstani skup podataka prema sličnostima, obrascima i razlikama. Strojevi dobivaju upute da pronađu skrivene uzorke iz ulaznog skupa podataka.
Uzmimo primjer da bismo ga bolje razumjeli; pretpostavimo da postoji košara sa slikama voća i da to unesemo u model strojnog učenja. Slike su potpuno nepoznate modelu, a zadatak stroja je pronaći obrasce i kategorije objekata.
numpy zbrajanje
Dakle, sada će stroj otkriti svoje uzorke i razlike, kao što su razlika u boji, razlika u obliku, i predvidjeti izlaz kada se testira s testnim skupom podataka.
Kategorije nenadziranog strojnog učenja
Učenje bez nadzora može se dalje klasificirati u dvije vrste, koje su navedene u nastavku:
1) Grupiranje
Tehnika klasteriranja se koristi kada želimo pronaći inherentne grupe iz podataka. To je način grupiranja objekata u klaster tako da objekti s najviše sličnosti ostanu u jednoj skupini i imaju manje ili nimalo sličnosti s objektima drugih skupina. Primjer algoritma klasteriranja je grupiranje kupaca prema njihovom kupovnom ponašanju.
Neki od popularnih algoritama grupiranja navedeni su u nastavku:
2) Udruga
Učenje pravila asocijacije tehnika je učenja bez nadzora, koja pronalazi zanimljive odnose među varijablama unutar velikog skupa podataka. Glavni cilj ovog algoritma za učenje je pronaći ovisnost jedne podatkovne stavke o drugoj podatkovnoj stavci i mapirati te varijable u skladu s tim tako da može generirati maksimalnu dobit. Ovaj algoritam se uglavnom primjenjuje u Analiza tržišne košarice, rudarenje korištenja weba, kontinuirana proizvodnja itd.
Neki popularni algoritmi učenja pravila pridruživanja su Apriori algoritam, Eclat, FP-algoritam rasta.
Prednosti i nedostaci algoritma nenadziranog učenja
Prednosti:
- Ovi se algoritmi mogu koristiti za komplicirane zadatke u usporedbi s nadziranim jer ti algoritmi rade na neoznačenom skupu podataka.
- Nenadzirani algoritmi su poželjniji za razne zadatke jer je dobivanje neoznačenog skupa podataka lakše u usporedbi s označenim skupom podataka.
Nedostaci:
- Izlaz nenadziranog algoritma može biti manje precizan jer skup podataka nije označen, a algoritmi nisu prethodno obučeni s točnim izlazom.
- Rad s nenadziranim učenjem je teži jer radi s neoznačenim skupom podataka koji se ne preslikava s izlazom.
Primjene nenadziranog učenja
3. Polu-nadzirano učenje
Polu-nadzirano učenje vrsta je algoritma strojnog učenja koji se nalazi između nadziranog i nenadziranog strojnog učenja . Predstavlja međuosnovu između algoritama nadziranog (s označenim podacima o obuci) i nenadziranog učenja (bez označenih podataka o obuci) i koristi kombinaciju označenih i neoznačenih skupova podataka tijekom razdoblja obuke.
A Iako je polunadzirano učenje sredina između nadziranog i nenadziranog učenja i radi na podacima koji se sastoje od nekoliko oznaka, uglavnom se sastoji od neoznačenih podataka. Budući da su oznake skupe, ali za korporativne potrebe mogu imati malo oznaka. Potpuno se razlikuje od nadziranog i nenadziranog učenja jer se temelji na prisutnosti i odsutnosti etiketa.
inttostr java
Kako bi se prevladali nedostaci nadziranog učenja i algoritama nenadziranog učenja, uvodi se koncept polunadziranog učenja . Glavni cilj polu-nadziranog učenja je učinkovito koristiti sve dostupne podatke, a ne samo označene podatke kao kod nadziranog učenja. U početku se slični podaci grupiraju zajedno s algoritmom učenja bez nadzora, a nadalje, pomaže u označavanju neoznačenih podataka u označene podatke. To je zato što su označeni podaci relativno skuplji od neoznačenih podataka.
Ove algoritme možemo zamisliti na primjeru. Učenje pod nadzorom je gdje je učenik pod nadzorom instruktora kod kuće i na fakultetu. Nadalje, ako taj učenik sam analizira isti koncept bez ikakve pomoći instruktora, to je učenje bez nadzora. Pod polu-nadziranim učenjem, student se mora ponoviti nakon analize istog koncepta pod vodstvom instruktora na koledžu.
Prednosti i nedostaci polunadziranog učenja
Prednosti:
- Algoritam je jednostavan i lako razumljiv.
- Vrlo je učinkovit.
- Koristi se za rješavanje nedostataka algoritama nadziranog i nenadziranog učenja.
Nedostaci:
- Rezultati ponavljanja možda neće biti stabilni.
- Ne možemo primijeniti te algoritme na podatke na razini mreže.
- Točnost je niska.
4. Učenje s potkrepljenjem
Učenje s pojačanjem radi na procesu temeljenom na povratnim informacijama, u kojem AI agent (softverska komponenta) automatski istražuje svoje okruženje udaranjem i tragom, poduzimanjem radnji, učenjem iz iskustava i poboljšavanjem svoje izvedbe. Agent biva nagrađen za svaku dobru radnju i biva kažnjen za svaku lošu radnju; stoga je cilj agenta za potkrepljeno učenje maksimizirati nagrade.
U učenju s potkrepljenjem nema označenih podataka poput učenja pod nadzorom, a agenti uče samo iz svojih iskustava.
Proces učenja s potkrepljenjem sličan je ljudskom biću; na primjer, dijete uči razne stvari kroz iskustva u svom svakodnevnom životu. Primjer učenja s potkrepljenjem je igranje igre, gdje je igra okruženje, potezi agenta u svakom koraku definiraju stanja, a cilj agenta je postići visok rezultat. Agent dobiva povratnu informaciju u smislu kazne i nagrade.
Zbog svog načina rada, učenje s potkrepljivanjem koristi se u različitim područjima kao što su Teorija igara, Operacijska istraživanja, Teorija informacija, višeagentni sustavi.
Problem učenja s potkrepljenjem može se formalizirati pomoću Markovljev proces odlučivanja (MDP). U MDP-u, agent je u stalnoj interakciji s okolinom i izvodi akcije; na svaku radnju okolina reagira i stvara novo stanje.
Kategorije potkrepljenog učenja
Učenje s potkrepljenjem kategorizirano je uglavnom u dvije vrste metoda/algoritama:
css mijenja veličinu slike
Slučajevi korištenja učenja s pojačanjem u stvarnom svijetu
RL algoritmi su vrlo popularni u aplikacijama za igre. Koristi se za postizanje nadljudskih performansi. Neke popularne igre koje koriste RL algoritme su AlphaGO i AlphaGO Zero .
Dokument 'Upravljanje resursima s dubokim učenjem pojačanja' pokazao je kako koristiti RL u računalu za automatsko učenje i raspored resursa da čekaju na različite poslove kako bi se smanjilo prosječno usporavanje posla.
RL se široko koristi u aplikacijama robotike. Roboti se koriste u industrijskom i proizvodnom području, a ti su roboti postali moćniji s potkrepljenim učenjem. Postoje različite industrije koje imaju svoju viziju izgradnje inteligentnih robota koristeći AI i tehnologiju strojnog učenja.
Text-mining, jedna od sjajnih aplikacija NLP-a, sada se implementira uz pomoć Reinforcement Learning tvrtke Salesforce.
Prednosti i nedostaci učenja s potkrepljenjem
Prednosti
- Pomaže u rješavanju složenih problema iz stvarnog svijeta koje je teško riješiti općim tehnikama.
- Model učenja RL sličan je učenju ljudskih bića; stoga se mogu pronaći najtočniji rezultati.
- Pomaže u postizanju dugoročnih rezultata.
Hendikep
- RL algoritmi nisu poželjni za jednostavne probleme.
- RL algoritmi zahtijevaju ogromne podatke i proračune.
- Previše učenja s potkrepljenjem može dovesti do preopterećenja stanja što može oslabiti rezultate.
Prokletstvo dimenzionalnosti ograničava učenje potkrepljenja za stvarne fizičke sustave.