ma šinsko učenje
DESCRIPTION
Ma šinsko učenje. Mladen Nikolić. Šta je mašinsko učenje ?. Disciplina koja se bavi izgradnjom prilagodljivih računarskih sistema koji su sposobni da poboljšavaju svoje performanse učenjem. - PowerPoint PPT PresentationTRANSCRIPT
11
MaMašinsko učenješinsko učenje
Mladen NikolićMladen Nikolić
22
Šta je mašinsko učenjeŠta je mašinsko učenje??
Disciplina koja se bavi izgradnjom Disciplina koja se bavi izgradnjom prilagodljivih računarskih sistema koji prilagodljivih računarskih sistema koji su sposobni da poboljšavaju svoje su sposobni da poboljšavaju svoje performanse učenjem.performanse učenjem.
Disciplina koja se bavi proučavanjem Disciplina koja se bavi proučavanjem generalizacije i konstrukcijom i generalizacije i konstrukcijom i analizom algoritama koji analizom algoritama koji generalizuju.generalizuju.
33
PodaciPodaci
Podaci na osnovu kojih se generalizuje se Podaci na osnovu kojih se generalizuje se nezivaju nezivaju podacima za treningpodacima za trening, a njihov , a njihov skup skup trening skuptrening skup..
Podaci na kojima se vrši generalizacija Podaci na kojima se vrši generalizacija najčešće se nazivaju najčešće se nazivaju podaci za testiranjepodaci za testiranje, , a njihov skup a njihov skup test skuptest skup..
Pojedinačne podatke nazivamo Pojedinačne podatke nazivamo instancamainstancama..
Instance ćemo označavati promenljivom Instance ćemo označavati promenljivom x.x.
44
PrimerPrimer Naučiti kakvi dani su pogodni za bavljenje Naučiti kakvi dani su pogodni za bavljenje
vodenim sportovima.vodenim sportovima. Podatci sePodatci se,, na primer, na primer, mogu pretstaviti kao mogu pretstaviti kao
konjunkcije uslova nad nekim promenljivim koje konjunkcije uslova nad nekim promenljivim koje smatramo relevantnim.smatramo relevantnim. Na primer Na primer• Oblačnost Oblačnost {Vedro, Obla{Vedro, Oblačnočno}}• Temperatura vazduha {Toplo, Hladno}Temperatura vazduha {Toplo, Hladno}• VlaVlažnost žnost {Normalna, Visoka}{Normalna, Visoka}• Vetar {Jak, Slab}Vetar {Jak, Slab}• Temperatura vode {Toplo, Hladno}Temperatura vode {Toplo, Hladno}• Prognoza {Promenljivo, Stabilno}Prognoza {Promenljivo, Stabilno}
U ovakvom sluU ovakvom slučaju jedna intanca može da budečaju jedna intanca može da bude• (Toplo, Normalna, Slab, Toplo, Promenljivo)(Toplo, Normalna, Slab, Toplo, Promenljivo)
55
Dizajn sistema koji učiDizajn sistema koji uči
Prilikom dizajna sistema koji uči bitno Prilikom dizajna sistema koji uči bitno je učiniti sledeće izbore:je učiniti sledeće izbore:• Izbor formulacije problema učenjaIzbor formulacije problema učenja• Definisanje ciljne funkcijeDefinisanje ciljne funkcije• Definisanje prostora hipotezaDefinisanje prostora hipoteza• Izbor mere efikasnostiIzbor mere efikasnosti• Izbor algoritma koji učiIzbor algoritma koji uči
66
Osnovne formulacije problema Osnovne formulacije problema učenjaučenja
Nadgledano učenjeNadgledano učenje• Zajedno sa trening podacima algoritmu Zajedno sa trening podacima algoritmu
koji uči pružaju se i željeni izlazi.koji uči pružaju se i željeni izlazi. Nenadgledano učenjeNenadgledano učenje
• Algoritmu koji uči se daju samo podaci Algoritmu koji uči se daju samo podaci bez izlaza.bez izlaza.
77
PrimerPrimer
OblačnosOblačnostt
VazduhVazduh VlažnostVlažnost VetaVetarr
VodaVoda PrognozaPrognoza SporSportt
VedroVedro ToploToplo NormalnaNormalna JakJak ToploToplo StabilnoStabilno DaDa
VedroVedro ToploToplo VisokaVisoka JakJak ToploToplo StabilnoStabilno DaDa
OblačnoOblačno HladnoHladno VisokaVisoka JakJak ToploToplo PromenljivoPromenljivo NeNe
VedroVedro ToploToplo VisokaVisoka JakJak HladnHladnoo
PromenljivoPromenljivo DaDa
88
Učenje kao aproksimiranje funkcijaUčenje kao aproksimiranje funkcija
Učenje se najčešće može videti kao Učenje se najčešće može videti kao vid aproksimacije funkcija.vid aproksimacije funkcija.
Funkcija koju treba aproksimirati se Funkcija koju treba aproksimirati se naziva naziva ciljna funkcijaciljna funkcija..
Funkciju kojom aproksimiramo ciljnu, Funkciju kojom aproksimiramo ciljnu, nazivamo nazivamo hipotezomhipotezom ili ili modelom modelom podatakapodataka..
Ciljnu funkciju ćemo označavati sa Ciljnu funkciju ćemo označavati sa c.c. Hipotezu ćemo označavati sa Hipotezu ćemo označavati sa hh..
99
Prostor hipotezaProstor hipoteza
Prostor hipotezaProstor hipoteza je skup svih je skup svih dopustivih hipoteza.dopustivih hipoteza.
Izbor prostora hipoteza je presudan Izbor prostora hipoteza je presudan za kvalitet procesa učenja.za kvalitet procesa učenja.
Učenje se može videti kao pretraga Učenje se može videti kao pretraga prostora hipoteza vođena podacima.prostora hipoteza vođena podacima.
Prostor hipoteza ćemo označavati sa Prostor hipoteza ćemo označavati sa HH..
1010
PrimerPrimer Ciljna funkcija, na primer, može biti zadata Ciljna funkcija, na primer, može biti zadata
tabelom.tabelom. Hipoteze mogu biti vektori vrednosti Hipoteze mogu biti vektori vrednosti
promenljivih kojima opisujemo dane.promenljivih kojima opisujemo dane. Dodaćemo dve specijalne vrednostiDodaćemo dve specijalne vrednosti
• ? – ? – svaka vrednost je prihvatljivasvaka vrednost je prihvatljiva• ØØ – nijedna vrednost nije prihvatljiva – nijedna vrednost nije prihvatljiva
Primer hipoteze koja kaže da je hladno Primer hipoteze koja kaže da je hladno vreme sa visokvreme sa visokomom vlavlažnošću pogodno za žnošću pogodno za bavljenje vodenim sportovimabavljenje vodenim sportovima• <?,Hladno,Visoka,?,?,?><?,Hladno,Visoka,?,?,?>
1111
Mera efikasnostiMera efikasnosti
Mogući su različiti izbori.Mogući su različiti izbori. Od tog izbora dosta zavisi šta je to Od tog izbora dosta zavisi šta je to
što će biti naučeno.što će biti naučeno.
1212
PrimerPrimer
Smatraćemo da je hipoteza koja se Smatraćemo da je hipoteza koja se slaže sa svim podacima za trening slaže sa svim podacima za trening dobra, a hipoteza koja se ne slaže sa dobra, a hipoteza koja se ne slaže sa bilo kojom instancom iz trening bilo kojom instancom iz trening skupa, loša.skupa, loša.
1313
Algoritam učenjaAlgoritam učenja
Postoji veliki broj algoritama učenja.Postoji veliki broj algoritama učenja. Razlikuju se po domenima na koje su Razlikuju se po domenima na koje su
primenljivi, performansama, načinu primenljivi, performansama, načinu pružanja podataka i slično.pružanja podataka i slično.
1414
PrimerPrimer
Koristićemo algoritam koji nalazi Koristićemo algoritam koji nalazi najspecifičniju hipotezu koja odgovara najspecifičniju hipotezu koja odgovara podacima.podacima.
Find-S:Find-S:• Inicijalizovati Inicijalizovati hh na < Ø, Ø, Ø, Ø, Ø, Ø>na < Ø, Ø, Ø, Ø, Ø, Ø>• Za svaku pozitivnu instancu iz trening skupaZa svaku pozitivnu instancu iz trening skupa
Za svaku promenljivu Za svaku promenljivu AAii u u hh
• Ako uslov za Ako uslov za AAii nije zadovoljen, nije zadovoljen, zamenitizameniti postojeću postojeću vrednost vrednost sledesledećom opštijom vrednošću tako da ćom opštijom vrednošću tako da x x zadovoljava zadovoljava h.h.
• VratitiVratiti h. h.
1515
PrimerPrimer
KorakKorak OblačnosOblačnostt
VazduhVazduh VlažnostVlažnost VetaVetarr
VodaVoda PrognozaPrognoza
00 ØØ ØØ ØØ ØØ ØØ ØØ
11 VedroVedro ToploToplo NormalnaNormalna JakJak ToploToplo StabilnoStabilno
22 VedroVedro ToploToplo ?? JakJak ToploToplo StabilnoStabilno
33 VedroVedro ToploToplo ?? JakJak ?? ??
OblačnosOblačnostt
VazduhVazduh VlažnostVlažnost VetaVetarr
VodaVoda PrognozaPrognoza SporSportt
VedroVedro ToploToplo NormalnaNormalna JakJak ToploToplo StabilnoStabilno DaDa
VedroVedro ToploToplo VisokaVisoka JakJak ToploToplo StabilnoStabilno DaDa
OblačnoOblačno HladnoHladno VisokaVisoka JakJak ToploToplo PromenljivoPromenljivo NeNe
VedroVedro ToploToplo VisokaVisoka JakJak HladnHladnoo
PromenljivoPromenljivo DaDa
1616
Neki problemi učenjaNeki problemi učenja
KlasifikacijaKlasifikacija RegresijaRegresija OdlučivanjeOdlučivanje Učenje jezikaUčenje jezika
1717
PrimerPrimer
Problem određivanja da li je dan Problem određivanja da li je dan pogodan za vodene sportove je pogodan za vodene sportove je problem klasifikacije. Postoje dve problem klasifikacije. Postoje dve klaseklase• 1 – Dan je pogodan1 – Dan je pogodan• 2 – Dan nije pogodan2 – Dan nije pogodan
1818
Teorijski modeli učenjaTeorijski modeli učenja
Algoritmi Algoritmi su su dugo dugo privlaprivlaččiliili više više pažnje od teorijskih modela.pažnje od teorijskih modela.
Teorijski modeli pokušavaju da Teorijski modeli pokušavaju da odgovore pre svega na sledeća odgovore pre svega na sledeća pitanja:pitanja:• Šta se može naučiti, koliko dobro i pod Šta se može naučiti, koliko dobro i pod
kojim uslovimakojim uslovima??• Kako se menja kvalitet učenja u Kako se menja kvalitet učenja u
zavisnosti od obima trening podatakazavisnosti od obima trening podataka??
1919
Neki poznatiji modeli učenjaNeki poznatiji modeli učenja
Glodov model “graničnog učenja” Glodov model “graničnog učenja” (1964)(1964)
Valiantov PAC model (1984)Valiantov PAC model (1984) SStatistička teorija učenja (tatistička teorija učenja (Vapnik i Vapnik i
drugi od drugi od šezdesetih do kraja šezdesetih do kraja devedesetih)devedesetih)
2020
PAC modelPAC model
PAC – Probably approximately correct.PAC – Probably approximately correct. Aproksimativnost podrazumeva definisanje Aproksimativnost podrazumeva definisanje
gregreške.ške. Greška hipoteze Greška hipoteze h h u odnosu na ciljnu u odnosu na ciljnu
funkciju funkciju cc i raspodelu i raspodelu DD je verovatnoća da je verovatnoća da će će hh dodeliti pogrešnu vrednost instanci dodeliti pogrešnu vrednost instanci xx izabranoj prema raspodeli izabranoj prema raspodeli DD..• E(hE(h|D|D))=P(c(x)≠h(x))=P(c(x)≠h(x))
2121
PAC modelPAC model C – skup ciljnih funkcijaC – skup ciljnih funkcija X – skup instanci kardinalnosti X – skup instanci kardinalnosti nn LL – – algoritam koji uči algoritam koji uči Kažemo da je skup C Kažemo da je skup C PAC naučivPAC naučiv (PAC learnable) koristeći (PAC learnable) koristeći
algoritam L i prostor hipoteza H ako za sve algoritam L i prostor hipoteza H ako za sve • funkcije c iz skupa Cfunkcije c iz skupa C,,• raspodele raspodele DD nad X nad X,,• 00<< εε <<½,½,• 00< < δ δ <½,<½,
L sa verovatnoL sa verovatnoćom bar 1-ćom bar 1-δδ vraća hipotezu h iz H takvu da je vraća hipotezu h iz H takvu da je E(E(h|D)≤h|D)≤εε u vremenu koje je polinomijalno u odnosu na 1 u vremenu koje je polinomijalno u odnosu na 1//εε, , 1/1/δδ, , nn i i složenost funkcije složenost funkcije cc..
Složenost funkcije Složenost funkcije cc je dužina njenog kodiranja u skupu C je dužina njenog kodiranja u skupu C uzevši u obzir neku reprezentaciju.uzevši u obzir neku reprezentaciju.
2222
PAC modelPAC model
Očigledno se zahteva da prostor Očigledno se zahteva da prostor hipoteza H sadrži hipotezu sa hipoteza H sadrži hipotezu sa proizvoljno malom greškom za svaku proizvoljno malom greškom za svaku ciljnu funkciju.ciljnu funkciju.
To nije uvek moguće obezbediti.To nije uvek moguće obezbediti. U U tom slučaju od algoritma možemo tom slučaju od algoritma možemo
zahtevati da nađe hipotezu sa zahtevati da nađe hipotezu sa najmanjom greškom.najmanjom greškom.
2323
Obim podataka za treningObim podataka za trening Podaci za trening često nisu lako dostupni. Podaci za trening često nisu lako dostupni. Stoga je zahtevnost za takvim podacima vrlo Stoga je zahtevnost za takvim podacima vrlo
bitna.bitna. Pokazuje se da je za PAC učenje dovoljan broj Pokazuje se da je za PAC učenje dovoljan broj
instanci instanci m m dat sa:dat sa:
• m≥(lnm≥(ln|H|+ln(1/|H|+ln(1/δδ))))//22εε()()
Obično je dovoljno i mnogo manje instanci.Obično je dovoljno i mnogo manje instanci. Ova ocena je neprimenljiva u slučaju Ova ocena je neprimenljiva u slučaju
beskonačnog prostora hipoteza.beskonačnog prostora hipoteza.
2424
PrimerPrimer
S obzirom na moguće vrednosti koje S obzirom na moguće vrednosti koje možemo dodeliti promenljivim možemo dodeliti promenljivim veličina prostora hipoteza je 4veličina prostora hipoteza je 4nn gde je gde je n broj promenljivih koje smatramo n broj promenljivih koje smatramo bitnim. Stoga jebitnim. Stoga je• m≥(nm≥(n**ln4ln4+ln(1/+ln(1/δδ))))//22εε
OvOva ocenaa ocena je polinomijaln je polinomijalnaa u u zavisnosti od n, 1zavisnosti od n, 1//δδ, 1/, 1/εε i nezavisna i nezavisna od slood složenosti ciljne funkcije.ženosti ciljne funkcije.
2525
PrimerPrimer
Vremenska složenost algoritma Find-Vremenska složenost algoritma Find-S je linearna u odnosu na obim S je linearna u odnosu na obim podataka za trening, a nezavisna od podataka za trening, a nezavisna od 11//δδ, 1/, 1/εε i slo i složenosti ciljne funkcije.ženosti ciljne funkcije.
Stoga je skup ciljnih funkcija u našem Stoga je skup ciljnih funkcija u našem problemu PAC naučiv koristeći problemu PAC naučiv koristeći algoritam Find-S i odabrani prostor algoritam Find-S i odabrani prostor hipoteza.hipoteza.
2626
SloSloženost prostora funkcijaženost prostora funkcija
U formuli za veličinu uzorka složenost U formuli za veličinu uzorka složenost prostora funkcija se ogledala preko prostora funkcija se ogledala preko njegove kardinalnosti.njegove kardinalnosti.
Druga mera bi mogla biti njegova Druga mera bi mogla biti njegova dimenzionalnost.dimenzionalnost.
Postoji bolja mera složenosti od obe Postoji bolja mera složenosti od obe pomenute koja potiče iz statističke pomenute koja potiče iz statističke teorije učenja.teorije učenja.
2727
VC dimenzijaVC dimenzija VC – Vapnik-ČervonenkisVC – Vapnik-Červonenkis X – skup svih mogućih instanci.X – skup svih mogućih instanci. S – skup instanciS – skup instanci koje posmatramo. koje posmatramo. Neka su hipoteze diskretne funkcije koje Neka su hipoteze diskretne funkcije koje
uzimaju vrednosti iz skupa {0,1}.uzimaju vrednosti iz skupa {0,1}. MoguMoguća su uopštenja na proizvoljne ća su uopštenja na proizvoljne
funkcije.funkcije. Svaka hipoteza indukuje jednu dihotomiju Svaka hipoteza indukuje jednu dihotomiju
skupa S:skupa S:• {x iz S | h(x)=1}{x iz S | h(x)=1}• {x iz S | h(x)=0}{x iz S | h(x)=0}
2828
VC dimenzijaVC dimenzija
Skup hipoteza H Skup hipoteza H razbijarazbija skup instanci S skup instanci S ako i samo ako za svaku dihotomiju skupa ako i samo ako za svaku dihotomiju skupa S postoji neka hipoteza iz H koja je S postoji neka hipoteza iz H koja je indukuje.indukuje.
VC dimenzija skupa hipoteza H definisanih VC dimenzija skupa hipoteza H definisanih nad skupom instanci X je velinad skupom instanci X je veličina najvećeg čina najvećeg konačnog podskupa od X koga H razbija. konačnog podskupa od X koga H razbija.
Ako se proizvoljno veliki podskupovi od X Ako se proizvoljno veliki podskupovi od X mogu razbiti pomoću H, onda je VC mogu razbiti pomoću H, onda je VC dimenzija skupa H beskonačna.dimenzija skupa H beskonačna.
2929
PrimerPrimer
XX=R=R H={A<x<B | A,B iz R}H={A<x<B | A,B iz R} VC(H)=2VC(H)=2
X=RX=R H={Ax+By+C>0 | A,B,C iz R}H={Ax+By+C>0 | A,B,C iz R} VC(H)=3VC(H)=3
3030
PrimerPrimer
H={x iz S | S iz P(X)}H={x iz S | S iz P(X)} VC(H)=∞VC(H)=∞
3131
OverfittingOverfitting
Visoka VC dimenzija skupa hipoteza Visoka VC dimenzija skupa hipoteza znači veliku prilagodljivost hipoteza znači veliku prilagodljivost hipoteza podacima.podacima.
Ukoliko je VC(H) mala, nemamo Ukoliko je VC(H) mala, nemamo dovoljno bogat skup hipoteza i pravi dovoljno bogat skup hipoteza i pravi se značajna greška već na trening se značajna greška već na trening skupu.skupu.
3232
OverfittingOverfitting Ukoliko je VC(H) velika, skup je bogat i vrlo lako Ukoliko je VC(H) velika, skup je bogat i vrlo lako
se nalazi hipoteza koja se dobro slaže sa se nalazi hipoteza koja se dobro slaže sa podacima za trening.podacima za trening.
Hipoteza koja je previše prilagođena podacima za Hipoteza koja je previše prilagođena podacima za trening često ne generalizuje dobro, odnosno trening često ne generalizuje dobro, odnosno pravi veliku grešku na podacima koji su nepoznati pravi veliku grešku na podacima koji su nepoznati u vreme treninga. Mogući razloziu vreme treninga. Mogući razlozi• Hipoteza je prilagođena šumu u podacimaHipoteza je prilagođena šumu u podacima• Hipoteza je prilagođena uzorku koji ne oslikava dovoljno Hipoteza je prilagođena uzorku koji ne oslikava dovoljno
dobro stvarnu distribuciju podatka (sampling bias)dobro stvarnu distribuciju podatka (sampling bias) Ovaj problem je poznat pod nazivom overfitting.Ovaj problem je poznat pod nazivom overfitting.
3333
Pristrasnost u indukcijiPristrasnost u indukciji
Da VC dimenzija prostora hipoteza ne Da VC dimenzija prostora hipoteza ne bi bila prevelika potrebno je napraviti bi bila prevelika potrebno je napraviti neke dodatne pretpostavke o neke dodatne pretpostavke o prostoru hipoteza.prostoru hipoteza.
Algoritam koji uči može napraviti Algoritam koji uči može napraviti dodatne pretpostavke.dodatne pretpostavke.
Ove pretpostavke dovode do Ove pretpostavke dovode do takozvane pristrasnosti u indukciji takozvane pristrasnosti u indukciji (inductibe bias).(inductibe bias).
3434
PrimerPrimer Prilikom opisivanja dana koji su pogodni za Prilikom opisivanja dana koji su pogodni za
bavljenje vodenim sportovima pretpostavljali smo bavljenje vodenim sportovima pretpostavljali smo da se dani mogu opisati konjunkcijama uslova da se dani mogu opisati konjunkcijama uslova nad određenim promenljivim.nad određenim promenljivim.
Algoritam Find-S pretpostavlja da je Algoritam Find-S pretpostavlja da je najspecifičnija hipoteza najbolja.najspecifičnija hipoteza najbolja.
Da smo dozvolili Da smo dozvolili • proizvoljne kombinacije konjunkcija, disjunkcija i proizvoljne kombinacije konjunkcija, disjunkcija i
negacija inegacija i• da sve hipoteze koje su konzistentne sa podacima za da sve hipoteze koje su konzistentne sa podacima za
trening glasaju o vrednosti ciljne funkcijetrening glasaju o vrednosti ciljne funkcije
potpuno bismo izgubili moć generalizacije.potpuno bismo izgubili moć generalizacije.
3535
VC dimenzijaVC dimenzija
Koristeći VC dimenziju moguće je Koristeći VC dimenziju moguće je izvesti značajno bolje granice za broj izvesti značajno bolje granice za broj primera za trening, koja je pri tom primera za trening, koja je pri tom upotrebljiva i u slučaju beskonačnih upotrebljiva i u slučaju beskonačnih prostora hipoteza.prostora hipoteza.
3636
GeneralizacijaGeneralizacija Koristeći VC dimenziju moguće je i izvesti gornju granicu Koristeći VC dimenziju moguće je i izvesti gornju granicu
mogućnosti generalizacije koristeći neki prostor hipoteza.mogućnosti generalizacije koristeći neki prostor hipoteza. R(h) – Stvarni rizik, odnosno očekivanje greške R(h) – Stvarni rizik, odnosno očekivanje greške
generalizacijegeneralizacije RRemp emp (h)(h) –– Empirijski rizik, odnosno greška na trening skpuEmpirijski rizik, odnosno greška na trening skpu E – Širina intervala poverenja kada se statistika RE – Širina intervala poverenja kada se statistika Rempemp uzme uzme
za ocenu vrednosti R.za ocenu vrednosti R. ββ – zahtevano poverenje. – zahtevano poverenje. Gornja granica greške generalizacije može da se zapiše kaoGornja granica greške generalizacije može da se zapiše kao
• RR<R<Rempemp+E(VC(H)+E(VC(H),,ββ;n);n) Princip strukturalne minimizacije rizika kaPrincip strukturalne minimizacije rizika kaže da hipotezu že da hipotezu
treba birati iz prostora hipoteza što manje VC dimenzije, a treba birati iz prostora hipoteza što manje VC dimenzije, a da se pri tom ne napravi prevelika greška na trening skupu.da se pri tom ne napravi prevelika greška na trening skupu.
3737
Strukturalna minimizacija rizikaStrukturalna minimizacija rizika