360 likes | 593 Views
Bayesovo učenje. Slideove pripremio: S. Pavlek. Uvod – što je Bayesovo učenje. dodjeljivanje vjerojatnosti pojedinim hipotezama kvantitativno vaganje dokaza koji podržavaju različite hipoteze predmet zanimanja: algoritmi koji manipuliraju vjerojatnostima
E N D
Bayesovo učenje Slideove pripremio: S. Pavlek
Uvod – što je Bayesovo učenje • dodjeljivanje vjerojatnosti pojedinim hipotezama • kvantitativno vaganje dokaza koji podržavaju različite hipoteze • predmet zanimanja: • algoritmi koji manipuliraju vjerojatnostima • analiza rada algoritama koji ne manipuliraju direktno vjerojatnostima Bayesovo učenje
Uvod – neka pitanja o kojima ćemo danas govoriti • MDL (Minimum Description Length) princip – zašto algoritmi za stabla odlučivanja favoriziraju kraća stabla • optimalni Bayesov klasifikator – teorijski optimalna metoda klasifikacije • jednostavni Bayesov klasifikator – po efikasnosti usporediv s neuronskim mrežama i stablom odlučivanja Bayesovo učenje
Uvod – svojstva Bayesovih algoritama • povećavanje i smanjivanje vjerojatnosti hipoteze umjesto izbacivanja hipoteze • prethodno znanje se kombinira sa podacima • moguće hipoteze koje daju ocjenu vjerojatnosti • npr.: vjerojatnost da pacijent ima ima upalu pluća je 73% • klasifikacija pojedinog primjera na temelju više hipoteza Bayesovo učenje
Uvod – teškoće u primjeni • Bayesovi algoritmi zahtijevaju inicijalno znanje mnogih vjerojatnosti • računska zahtjevnost koja znatno ograničava primjenu • čak i u ovom slučaju mogu se koristiti kao standard za ocjenu uspješnosti drugih algoritama! Bayesovo učenje
Sadržaj • Bayesov teorem • Bayesov teorem i učenje koncepata • direktna primjena • Najveća vjerojatnost i min. kvadrat pogreške • Princip najkraćeg opisa (Occamova britva) • Bayesov optimalni klasifikator • Jednostavni Bayesov klasifikator Bayesovo učenje
Bayesov teorem • jedan od osnovnih teorema teorije vjerojatnosti • h – hipoteza is skupa svih hipoteza H • skup H je disjunktan i potpun • A je događaj h1 h2 A ... hn Bayesovo učenje
Bayesov teorem - primjer • Primjer • H = {h1=(iz Skandinavije), h2=(iz ostatka Europe)}; • P(h1) = 0,048; P(h2) = 0,952 • A = {osoba je plava}; P(A) = 0,1 • u Skandinaviji su gotovo svi plavi: P(A|h1) = 0,85 • P(h1|A) je “a posteriori” vjerojatnost hipoteze h1 Bayesovo učenje
Bayesov teorem i učenje koncepata – uvod • Određivanje najbolje hipoteze iz H ako je dano D. Najbolja u BU znači- najvjerojatnija za dani D + prethodna znanja! • izračunavanje vjerojatnosti hipoteze iz: • početne (pretpostavljene, a priori) vjerojatnosti • vjerojatnosti pojavljivanja podatka uz uvjet da vrijedi hipoteza • vjerojatnosti pojavljivanja samih podatka Bayesovo učenje
Bayesov teorem i učenje koncepata – definicija • skup H – prostor svih mogućih hipoteza • P(h) – a priori vjerojatnost neke hipoteze iz H • P(D) – a priori vjerojatnost pojavljivanja primjera za učenje D • P(D|h) – vjerojatnost pojavljivanja D ako hipoteza h vrijedi • P(h|D) – vjerojatnost da vrijedi hipoteza h ako je dan D!!! Bayesovo učenje
Bayesov teorem i učenje koncepata – MAP • MAP hipoteza – Maximum A Posteriori je ona hipoteza za koju je P(h|D) najveći za predočene podatke D (pišemo hMAP) Na temelju Bayesovog teorema: • hMAP = maxhH P(h|D) = maxhH P(D|h) P(h) • P(D) izostavljen, jer je konst. Bayesovo učenje
Maksimalna vjerodostojnost(maximum likelihood ML) • U slučeju kada su sve hipoteze ih h jednako vjerojatne, dalje pojednostavljujemo • hMAP = max hHP(h|D) = maxhH P(D|h) vjerodostojnost hML = maxhH P(D|h) Bayesovo učenje
Bayesov teorem i učenje koncepata – primjer • Ima li pacijent određenu vrstu raka? • H = { h1 = (rak), h2 = (-rak) } • P(rak) = 0,008; P(-rak) = 0,992 • test na rak nije savršen – test je pozitivan u 98% slučajeva kad je rak prisutan, negativnan je u 97% kada ga nema • P( test+ | rak) = 0,98; P( test- | rak) = 0,02 • P( test- | -rak) = 0,97; P( test+ | -rak) = 0,03 • Test je pozitivan. Ima li osoba rak? Bayesovo učenje
Bayesov teorem i učenje koncepata – primjer • P( rak | test+ ) i P( -rak | test+) ? • P( rak | test+ ) = P( test+ | rak) * P(rak) • P( -rak | test+ )= P( test+ | -rak) * P(-rak) • računamo: • P( rak | test+ ) = 0,98 * 0,008 = 0,0078 • P( -rak | test+ )= 0,03 * 0,992 = 0,0298 • Zaključujemo da je druga hipoteza hMAP= -rak bolja! • velika razlika u a priori vrijednostima hipoteza! Bayesovo učenje
Primjer • Za točne vjerojatnosti treba znati P(D) tj. P(test+), što nemamo pa je dovoljno normalizirati dobivene vjerojatnosti jer njihova suma mora biti 1 • P(rak+|test+) = 0.0078/(0.0078+0.0298) = 0.21 • P(rak-|test+) = 0.0298/(0.0078+0.0298) = 0.79 • još uvijek možemo s velikom vjerojatnošću tvrditi da osoba nema rak! • Uoči: hipoteze se ne odbacuju - vjerojatnost se smanjuje ili povečava Bayesovo učenje
Direktna primjena BTna učenje koncepata Pretpostavke: • Primjeri za učenje D ne sadrže šum • Ciljni koncept je sadržan u prostoru hipoteza H • Sve su hipoteze jednako vjerojatne P(h) = 1/|H| za svaki h iz H - zbog (3) i jer im suma mora biti jednaka jedinici P(D|h) = 1 za di=h(xi) za sve di u D 0 inače - zbog (1) P(D) = 1/|VSH,D| ako je h konzistentna sa D 0 inače Bayesovo učenje
Direktna primjena BTna učenje koncepata A posteriori vjerojatnost je dakle P(h|D) = 1/|VSH,D| ako je h konzistentna s D 0 inače Gore korištena vrijednost za P(D) dobiva se iz teorema totalne vjerojatnosti i pretpostavke da su hipoteze međusobno isključive: Bayesovo učenje
Hipoteze konzistentne s primjerima za učenje: 0<Pi<1, Pi=Pj nekonzistentne: Pi=0 Algoritam uz gornje pretpostavke na P(h) i P(D|h) daje kao rezultat prostor inačica VSH,D –isti rezultat kao i CE algoritam za učenje koncepata Uz pretpostavku distribucije koja favorizira specifičnije hipoteze nad općenitijima (tj p(hi)>p(hj) za hi<hj), algoritam daje najspecifičniju hipotezu konzistentnu s primjerima za učenje – isto kao i FS algoritam Bayesovim algoritmom može se opisati rad algoritama za učenje, a odabirom P(h) i P(D|h) mogu se opisati pretpostavke o traženom konceptu koje ti algoritmi implicitno sadrže Bayesovo učenje
Najveća vjerojatnost i minimalni kvadrat pogreške • problem učenja kontinuirane funkcije • alternative: neuronske mreže, linearna regresija • Bayesova analiza pokazuje da svaki algoritam koji minimizira kvadrat pogreške između predviđanja hipoteze i podataka za učenje daje hipotezu s najvećom vjerojatnošću • takvu hipotezu zovemo Maximum Likelihood, pišemo hML Bayesovo učenje
Najveća vjerojatnost i minimalni kvadrat pogreške • ML = MAP ako vrijedi unif. razd. za P(h) • hML = max P(D|h) = ... = min å(di – h(xi))2 • ... T. Mitchell: Machine learning, page 165 - 167 Bayesovo učenje
Princip najkraćeg opisa (Minimum Description Length) • načelo blisko načelu Occamove britve • poslužit ćemo se konceptima iz teorije informacija • hMAP možemo prikazati logaritamski: • hMAP =max P(D|h)P(h) = max log2 P(D|h) + log2 P(h) • ekvivalentno: hMAP = min [ - log2 P(D|h) - log2 P(h) ] • TINF: • ako imamo poruke i, s vjerojatnošću pojavljivanja pi • najkompaktniji kod dodjeljuje log2 pi,bita svakoj poruci Bayesovo učenje
Princip najkraćeg opisa (Minimum Description Length) • log2 P(h) – duljina optimalnog opisa h • log2 P(D|h) – duljina klasifikacija D uz uvjet h • hMDL je hipoteza h koja minimizira zbroj duljine opisa hipoteze + opis podataka Bayesovo učenje
Princip najkraćeg opisa – primjer • primjenimo MDL princip na na problem učenja stabla odlučivanja • pretpostavimo da su instance već poznate i pošiljatelju i primatelju – trebamo samo prenijeti klasifikacije • ako su klasifikacije jednake predviđanjima trebamo prenijeti samo hipotezu! • ako hipoteza pogrešno klasificira neke primjere njih je potrebno posebno prenijeti – kao iznimke Bayesovo učenje
Princip najkraćeg opisa – primjer • hipoteza hMDL minimizira ovaj zbroj • mogućnost balansiranja između kompleksnosti hipoteze i broja grešaka koje hipoteza čini • moguća metoda za rješavanje problema petreniranosti • dokazuje li ovo jednom za uvijek da su kraće hipoteze bolje? • Ne. Pokazano je samo da ako su izabrani optimalni prikazi hipoteze i iznimaka MDL načelo proizvodi MAP hipoteze Bayesovo učenje
Bayesov optimalni klasifikator • do sada smo tražili odgovor na pitanje • “koja je najvjerojatnija hipoteza?” • no, često nas zanima odgovor na pitanje • “koja je najvjerojatnija klasifikacija novog primjera?” • na drugo pitanje možemo odgovoriti tako da primjenimo MAP hipotezu na novom primjeru • ali možemo i bolje! • zamislimo sustav sa 3 hipoteze čije su a posteriori vjerojatnosti: 0,4; 0,3; 0,3 • prva hipoteza je MAP hipoteza Bayesovo učenje
Bayesov optimalni klasifikator – primjer • pretpostavimo novi primjer x koji h1 klasificira pozitivno, ali h2 i h3 negativno • uzmemo li u obzir sve hipoteze, vjerojatnost da je x pozitivan je 0,4, a da je negativan je 0,6 • najvjerojatnija klasifikacija se razlikuje od klasifikacije koju daje MAP hipoteza! Bayesovo učenje
Bayesov optimalni klasifikator – definicija • najvjerojatnija klasifikacija primjera se dobije linearnom kombinacijom klasifikacija svih hipoteza, gdje se kao težine uzimaju a posteriori vrijednosti vjerojatnosti hipoteza • moguća klasifikacija vk može uzeti bilo koju vrijednost iz V • P (vk | D) – vjerojatnost da je točna klasifikacija za novi primjer vk • P (vk | D) = å P (vk | hi) * P (hi | D) ; hi iz H Bayesovo učenje
Bayesov optimalni klasifikator – definicija • optimalna klasifikacija novog primjera je vk za koji je P(vk | D) ima maksimum • Bayesov optimalni klasifikator: • max vk iz [ å P (vk | hi) * P (hi | D) ] • niti jedna druga metoda učenja ne može nadmašiti Bayesov optimalni klasifikator u prosjeku! • hipoteza koja klasificira ne mora biti iz H Bayesovo učenje
Gibbsov algoritam Računska cijena BO klasifikatora je ekstremno visoka (računaju se aposteriori vjerojatnosti za sve h iz H) Manje zahtjevna alternativa je Gibbsov algoritam: • Biraj h iz H slučajno, ravnajući se po distribuciji a posteriori vjerojatnosti • Koristi h za predviđanje slijedećeg primjera x Uz neke uvjete na pretpostavljenu i stvarnu distribuciju vjerojatnosti, pokazuje se da je greška ovakvog algoritma najviše dva puta veća nego BO klasifikatora. Bayesovo učenje
Jednostavni Bayesov klasifikator • vrlo praktična metoda Bayesovog učenja • u nekim područjima usporediva s neuronskim mrežam i stablima odlučivanja • svaki primjer opisan kao konjunkcija atributa;n-torka (a1, a2, ..., an) • tražena f-ja može poprimiti bilo koju vrijednost iz konačnog skupa V • zadatak Bayesovog klasifikatora je pridjeliti najvjerojatniju klasifikaciju vMAP vMAP = max P( vj | a1, a2, ..., an) Bayesovo učenje
Jednostavni Bayesov klasifikator • primjenimo li Bayesov teorem:vMAP = max P( a1, a2, ..., an | vj ) * P (vj) • potrebno je procijeniti ove dvije vjerojatnosti na osnovi podataka za učenje • P (vj) je frekvencija ponavljanja vj u skupu primjera • P( a1, a2, ..., an | vj ) nije moguće izračunati na temelju realno velikog skupa podataka za učenje • pretpostavka: vrijednosti atributa su uvjetno nezavisne • P( a1, a2, ..., an | vj ) = ÕP(ak | vj) ; k Bayesovo učenje
Jednostavni Bayesov klasifikator – definicija • Jednostavni Bayesov klasifikator: vNB = max P ( vj ) ÕP (ak | vj ) ; k • P (ak | vj) se procjenjuje na temelju frekvencije pojavljivanja u ulaznom skupu podataka • kada je zadovoljen preduvjet o nezavisnosti • jednostavna Bayesova klasifikacija identična MAP klasifikaciji Bayesovo učenje
Jednostavni Bayesov klasifikator – primjer • Primjenimo JBK na primjeru “Dan za tenis” • str 59; 14 primjera za učenje; 4 atributa • novi primjer: (sunčano, hladno, visoka, jak) • računamo • vNB = max P ( vj ) ÕP (ak | vj ) ; kvNB = max P ( vj ) P (sunčano | vj ) P (hladno | vj )P (visoka | vj ) P (jak | vj ) • treba nam 10 vjerojatnosti koje možemo procjeniti iz ulaznih podataka Bayesovo učenje
Jednostavni Bayesov klasifikator – primjer • P(vj = DA) = 9 / 14 = 0,64 • P(vj = NE) = 5 / 14 = 0,36 • analogno, brojimo vrijednosti za ostale atribute • rezultat: • P ( DA ) P (sunčano | DA) P (hladno | DA)P (visoka | DA) P (jak | DA) = 0,0053 • P ( NE ) P (sunčano | NE ) P (hladno | NE )P (visoka | NE) P (jak | NE) = 0,0206 Bayesovo učenje