Title: Strojno ucenje (engl. machine learning)
1Strojno ucenje (engl. machine learning)
- Algoritmi strojnog ucenja - 2
2Strojno ucenje (engl. machine learning)
- Pripremio
- Prof.dr.sc. Nikola Bogunovic
- Sveucilište u Zagrebu
- Fakultet elektrotehnike i racunarstva
- Temeljem izvornih dokumenata (autori zadržavaju
sva prava) - I.H.Witten, E.Frank
- DATA MINING, Practical Machine Learning Tools
and Techniques - Morgan Kaufmann, 2005.
- T.Michell
- MACHINE LEARNING
- McGraw Hill, 1997
- Jiawei Han and Micheline Kamber
- DATA MINING CONCEPS ABD TECHNIQUES
- Morgan Kaufmann, 2001,
-
3Probabilisticki algoritmi Naivni Bayes
- Probabilisticki algoritmi Naivni Bayes
4Probabilisticki algoritmi Naivni Bayes
- Probabilisticki postupak u otkrivanju znanja
dodjeljuje vjerojatnost klasifikaciji primjera u
pojedini razred. - U primjeru igranja tenisa postupak može
generirati pravilo - Ako Vrijeme.suncano i Temperatura.hladno i
Vlažnost.visoka i Vjetrovito.Da, tada Igrati.DA
(0.2) i Igrati.NE (0.8). - gdje je 0.2 vjerojatnost za Igrati DA, a 0.8
vjerojatnost za Igrati NE. - U ovom primjeru radi se o binarnoj klasifikaciji.
Suma vjerojatnosti za Igrati.DA i za Igrati.NE
je jednaka 1. - Vjerojatnosti se odreduju frekvencijskom
interpretacijom i promatranjem svakog atributa
nezavisno. To je pretpostavka naivnosti.
5Probabilisticki algoritmi Naivni Bayes
Temeljem tablice primjera za igru tenisa racunamo
statistiku.
Vrijeme Temperatura Vlažnost Vjetrovito Igrati
Suncano Topla Visoka Ne Ne
Suncano Topla Visoka Da Ne
Oblacno Topla Visoka Ne Da
Kišovito Blaga Visoka Ne Da
Kišovito Hladno Normalna Ne Da
Kišovito Hladno Normalna Da Ne
Oblacno Hladno Normalna Da Da
Suncano Blaga Visoka Ne Ne
Suncano Hladno Normalna Ne Da
Kišovito Blaga Normalna Ne Da
Suncano Blaga Normalna Da Da
Oblacno Blaga Visoka Da Da
Oblacno Topla Normalna Ne Da
Kišovito Blaga Visoka Da Ne
6Probabilisticki algoritmi Naivni Bayes
- Vrijeme Temperatura Vlažnost
- DA NE DA NE DA NE
Igrati - Suncano 2 3 Topla 2 2 Visoka 3
4 - Oblacno 4 0 Blaga 4
2 Norm. 6 1 - Kišovito 3 2 Hladno 3 1
- Visoka 3/9 4/5
- Suncano 2/9 3/5 Topla 2/9 2/5 Norm. 6/9
1/5 - Oblacno 4/9 0/5 Blaga 4/9 2/5
- Kišovito 3/9 2/5 Hladno 3/9 1/5
- Vjetrovito Igrati
- DA NE DA NE
- Da 3 3 9 5
- Ne 6 2 9/14 5/14
- Da 3/9 3/5
- Ne 6/9 2/5
7Probabilisticki algoritmi Naivni Bayes
- Za traženo pravilo (ranije navedeni primjer)
- Ako Vrijeme.suncano i Temperatura.hladno i
Vlažnost.visoka i Vjetrovito.Da, tada Igrati.DA
(?) i Igrati.NE (?). - množimo vjerojatnosti (konjunkcija i
pretpostavka nezavisnosti) koje rezultiraju u
izglednosti (engl. likelihood). - Za Igrati.DA izglednost je
- 2/9 x 3/9 x 3/9 x 3/9 x 9/14 0.0053
- Za Igrati.NE izglednost je
- 3/5 x 1/5 x 4/5 x 3/5 x 5/14 0.0206
- Nakon normalizacije slijede vjerojatnosti
- Vjer. za Igrati.DA 0.0053 / (0.0053 0.0206)
0.205 - Vjer. za Igrati.NE 0.0206 / (0.0053 0.0206)
0.795
8Probabilisticki algoritmi Naivni Bayes
- Teorijska osnovica probabilistickog rasudivanja
- Vjerojatnost hipoteze H uz evidenciju (dokaz) E
Pr(H E) - Uporaba Bayesovog pravila Pr(H E) Pr(E
H) Pr(H) / Pr(E) - Neka je u našem primjeru hipoteza
- H (Igrati.DA)
- E evidencija (vrijednosti svih 4 atributa) E1,
E2, E3, E4 - Supstitucijom slijede zajednicke (engl. joint)
vjerojatnosti - Pr(H E1, E2, E3, E4) Pr(E1, E2, E3, E4 H)
Pr(H) / Pr(E1, E2, E3, E4) - Izracun je eksponencijalne složenosti pa uvodimo
pretpostavku nezavisnosti atributa ("Naïvni
Bayes") - Pr(H E) Pr(E1 H) x Pr(E2 H) x Pr(E3
H) x Pr(E4 H) x Pr(H) / Pr(E) - Pr(H) Pr(Igrati.DA) je prethodna (apriorna)
vjerojatnost (ništa još nije poznato o
obilježjima dana evidenciji). U primjeru
tenisa 9/14. - Uz uvodenje evidencije
- Pr(Igrati.DA E) 2/9 x 3/9 x 3/9 x 3/9 x
9/14 x 1/Pr(E) - Vjerojatnost Pr(E) nestaje pri normalizaciji.
9Probabilisticki algoritmi Naivni Bayes
- Problem probabilistickog rasudivanja (1/2)
- Neke vrijednosti atributa se ne pojavljuju uz
jedan ili više razreda. - Primjerice neka se vrijednost atributa
Vrijeme.suncano pojavljuje samo uz Igrati.NE, a
nikad uz Igrati.DA. Pri tome je - Pr(Igrati.DA Vrijeme.suncano) 0 i množi sve
ostale vjerojatnosti u izracunu izglednosti za
pravilo koje sadrži Vrijeme.suncano. - Rješenje Laplaceov estimator korekcija tablice
frekvencija - Izvorna tablica Korigirana tablica
- Vrijeme i Igrati.DA Vrijeme i Igrati.DA
- Suncano 2/9 Suncano 3/12
- Oblacno 4/9 Oblacno 5/12
- Kišovito 3/9 Kišovito 4/12
-
- Dodaje se 1 u brojnike, a to se kompenzira s 3
u nazivnike. Time se osigurava da frekvencija
nikada nije nula.
10Probabilisticki algoritmi Naivni Bayes
- Problem probabilistickog rasudivanja (2/2)
- Opcenito, možemo dodati bilo koju malu konstantu
? (ne samo 1) - (2 ?/3) / (9 ?)
- (4 ?/3) / (9 ?)
- (3 ?/3) / (9 ?) za raniji primjer ? 3
- Nema nekog posebnog razloga za raspodjelu ? u 3
jednaka dijela. - Umjesto toga možemo koristiti
- (2 ?p1 ) / (9 ?)
- (4 ?p2 ) / (9 ?)
- (3 ?p3 ) / (9 ?) gdje ? pi 1, pi su
apriorne vjerojatnosti atributa - p1 Pr(Vrijeme.suncano) 5/14 - pojava u 5
primjera od 14 - p2 Pr(Vrijeme.oblacno) 4/14 - pojava u 4
primjera od 14 - p3 Pr(Vrijeme.kišovito) 5/14 - pojava u 5
primjera od 14 - Najcešca heuristika
- Inicijaliziraj sve vrijednosti za brojanje
frekvencija na 1 (umjesto 0), t.j pojavljuju se
barem jedanput uz svaki razred.
11Probabilisticki algoritmi Naivni Bayes
- Problem nedostajucih vrijednosti
- Jednostavno se izostave te vrijednosti u
izracunu izglednosti. Omjeri za vjerojatnost
temelje se samo na postojecim vrijednostima. - Numericke vrijednosti atributa (1/3)
- Najprije se izracuna srednja vrijednost i
standardna devijacija n numerickih vrijednosti
pojedinog atributa (tzv. ? i ? uzoraka). - Srednja vrijednost ? ? /n
- Std. dev. ? ? (x - ?)2 /(n -1) 1/2
varijanca 1/2 - Ukoliko postoji dovoljno velik skup numerickih
vrijednosti nekog atributa pretpostavljamo
Gaussovsku (normalnu) razdiobu tih vrijednosti uz
parametre ? i ? uzoraka. - Funkcija gustoce razdiobe vjerojatnosti za
normalnu razdiobu je
12Probabilisticki algoritmi Naivni Bayes
- Numericke vrijednosti atributa (2/3)
- Neka su dane neke vrijednosti atributa za svaki
razred - Temperatura (ºF) Vlažnost
- DA NE DA NE Igrati (ciljni atribut,
klasifikacija) - 83 85 86 85
- 70 80 96 90
-
- Izracunamo
- 73 74.6 Srednja vr. 79.1 86.2
- 6.2 7.9 Std. Dev. 10.2 9.7
- Uz uporabu odgovarajuce (za odreden ? i ?)
funkcije gustoce razdiobe f(x) - f (Temperatura66 Igrati.DA) 0.034
- f (Vlažnost90 Igrati.DA) 0.021
- Funkcija f(x) aproksimira vjerojatnosti.
13Probabilisticki algoritmi Naivni Bayes
- Numericke vrijednosti atributa (3/3)
- f(x) ipak nije jednaka vjerojatnosti, jer
- Vjerojatnost da vrijednost neke velicine leži
unutar intervala (x - ?/2) i (x ?/2) - je ? f(x)
- Buduci da se ? nalazi u svakoj izglednosti, to se
u normalizaciji gubi. - Za primjer
- Vrijeme.suncano i Temperatura66 i Vlažnost90 i
Vjetrovito.Da - Izracun vjerojatnosti je (atributi su nominalni i
numericki) - Izglednost (Igrati.DA) 2/9 x 0.0340 x 0.0221 x
3/9 x 9/14 0.000036 - Izglednost (Igrati.NE) 3/5 x 0.0291 x 0.0380 x
3/5 x 5/14 0.000136 - Pa je normalizirano na vjerojatnosti
- Pr(Igrati.DA) 0.000036 / (0.000036 0.000136)
0.209 - Pr(Igrati.NE) 0.000136 / (0.000036 0.000136)
0.791 - što je vrlo slicno ranijim zakljuccima.
14Probabilisticki algoritmi Naivni Bayes
- Sažetak o probabilistickom algoritmu (Naivni
Bayes) - Naivni Bayes je jednostavan i vrlo uobicajen.
- Ima dobru semantiku za predstavljanje
probabilistickog znanja. - Pokazano uspješniji od mnogih složenijih
pristupa. - Pretpostavka o nezavisnosti atributa može unositi
pogreške - (Npr. dva stupca istog atributa multiplicira
njegov utjecaj, te je - potrebno pažljivo odabrati atribute, posebice
ako ih ima mnogo). - Pretpostavka normalne razdiobe može se
relaksirati uvodenjem druge razdiobe koje bolje
opisuje primjere ili se može koristiti procedura
"estimacije jezgre" (koja ne pretpostavlja jednu
definiranu razdiobu).
15Pravila pridruživanja
- Pravila pridruživanja
- (engl. association rules)
16Pravila pridruživanja
- Pravila pridruživanja u osnovici daju vezu izmedu
atributa. - Npr. za igranje tenisa
- AKO (Temperatura.Hladno) TADA (Vlažnost.Normalna)
- Pravila pridruživanja imaju širi cilj
- Pronalaženje cestih uzoraka, asocijacija,
korelacija, ili uzrocnih struktura u skupu
objekata u transakcijskim i relacijskim bazama,
te drugim repozitorijima podataka. - Primjena
- Analiza tržišta (engl. market-basket),
oblikovanje kataloga, grupiranje, - Opci oblik induciranog znanja (pravila)
- AKO (Tijelo_pravila) TADA (Glava_pravila)
potpora, uvjerenost - potpora (engl. support) vjerojatnost svih
elemenata pravila ( u tijelu i glavi) u cijelom
skupu primjera (podataka). - uvjerenost (engl. confidence) vjerojatnost
posljedice (glave pravila) ako uvjet (tijelo
pravila). To je uvjetna vjerojatnost.
17Pravila pridruživanja
- Primjer 1 (sintaksa slijedi formalizam predikatne
logike) - kupuje(x, pelene) ? kupuje( x, pivo) 5, 60
- Potpora 5 svih kupaca kupilo je pelene i
pivo. - Uvjerenost vjer. "pivo ako pelene" P(pivo
pelene) - Pivo je kupilo 60 kupaca od onih koji su
kupili pelene. - Primjer 2
- studira(x, racunarstvo) ? sluša(x,
formalne_postupke) ? - srednja_ocjena_barem(x, 4) 1, 75
- Potpora 1 svih studenata studira racunarstvo i
sluša formalne postuple i ima srednju ocjenu
barem 4. - Uvjerenost srednju ocjenu barem 4 ima 75
studenata od onih koji studiraju racunarstvo i
slušaju formalne postupke. - Pravila pridruživanja koja zadovoljavaju
minimalnu zadanu potporu i minimalnu zadanu
uvjerenost nazivaju se jaka pravila (engl. strong
rules).
18Pravila pridruživanja
- Terminologija u domeni pravila pridruživanja
- Skup transakcija korespondira skupu podataka.
- Transakcija (engl. itemset) sadrži skup
elemenata, korespondira terminu primjer u
podrucju obradbe podataka. - Element (engl. item) postoji ili ne u pojedinoj
transakciji. - Svaka transakcija daje informaciju koji elementi
se pojavljuju zajedno u toj transakciji. - Transakcije se tipicno razlikuju u broju
elemenata. - Transakcija se može vizualizirati kao izdani
racun s popisom elemenata (artikala) nakon
placanja na blagajni trgovine. - Primjer skupa od
- 5 transakcija
Elementi u pojedinim transakcijama
19Pravila pridruživanja
- Temeljem prikazanog skupa od 5 transakcija
možemo primjerice izracunati potporu i uvjerenost
za pravilo - Potpora (support) je broj transakcija koje sadrže
sve elemenate u pravilu (Diaper, Milk, Beer)
prema ukupnom broju transakcija (ovdje 5). - Uvjerenost (confidence) je uvjetna vjerojatnost
- P(glava tijelo) P(glava i tijelo) / P(tijelo)
- P(Beer Diaper, Milk) P(Beer, Diaper, MIlk) /
P(Diaper, Milk) - (2/5) / (3/5) 2 /3 0.66
- Vjerojatnosti se racunaju preko frekvencija.
tijelo glava
20Pravila pridruživanja
- Problem Izracun frekvencija podskupova elemenata
u bazi transakcija. - Npr. Za 1000 razlicitih elemenata broj
podskupova s tri elementa je - Izracun frekvencija i mjera kvalitete za skupove
elemenata s pet ili više elemenata vrlo lako može
biti potpuno vremenski neizvedivo. - U tom je slucaju od prvorazrednog znacaja
generalizacija elemenata. Obicno su artikli u
prodavaonicama svrstani u kategorije
(taksonomija). Desetci i stotine artikala mogu
biti svedeni na jednu ili više kategorija koje
dobro reprezentiraju generalna svojstva svih
artikala koje prodaje odredeni odjel. - Racunalna složenost izracuna za sustav od n
transakcija i m elemenata je eksponencijalna
O(n x m x 2m ). - Potrebno je pronaci postupak smanjena složenosti
u pretraživanju i generiranju podskupova ? Aprori
algoritam.
21Pravila pridruživanja
- Apriori algoritam
- Definicija Skup elemenata koji zadovoljava
minimalnu potporu naziva se cest_ skup elemenata
(engl. frequent set). - Kljucni koraci Apriori algoritma
- Iterativno nadi ceste skupove elemenata (frequent
skupove) s kardinalnošcu 1 do k. - Uporabi uredene ceste skupove kardinalnosti k-1 i
operaciju join da bi našao skupove s k
elemenata. - Smanji skup s k elemenata uvjetom da svaki
podskup mora biti cest skup. Ostaju kandidati za
ceste skupove. - Npr. ako je A, B cest skup, to moraju biti
A i B. - Pretraživanjem baze selektiraj stvarne ceste
skupove. - Iskoristi ceste skupove za generiranje pravila.
- Selektiraj jaka pravila (engl. strong rules).
22Pravila pridruživanja
- Apriori algoritam
- Primjer vrlo male baze transakcija
- Za zadanu potporu S (npr. min S 3) generiraju
se svi cesti podskupovi elemenata. - Zapocinje se s podskupovima s jednim elementom.
Podskupovi koji zadovoljavaju uvjet potpore
(nalaze se u bazi barem 3 puta) su Bread, Milk,
Beer, Diaper. - Podskupovi Coke i Eggs ne zadovoljavaju potporu
pa nisu cesti i ne sudjeluju u daljnjem
generiranju cestih podskupova.
23Pravila pridruživanja
- Prikaz Apriori principa, (žuto su oznaceni
podskupovi za koje vrijedi S ? 3 , i oni
sudjeluju u daljim koracima generiranja).
Koliko puta se pojavljuje u bazi transakcija
join
Pazi pogreška !!
join
Milk, Diaper, Beer nije, jer Milk, Beer nije
cest.
24Pravila pridruživanja
- Primjer generiranja cestih skupova za S ? 2
25Pravila pridruživanja
- Objašnjenje generiranja cestog podskuoa od tri
elemenata - Cesti podskupovi od 2 elementa
- Operacijom Join slijede podskupovi od 3
elementa - 1, 2, 3 nije kandidat jer podskup 1, 2
nije cest. - 1, 3, 5 nije kandidat jer podskup 1, 5
nije cest. - 2, 3, 5 to je jedini kandidat za cesti skup
od 3 elemenata. - Provjerom u bazi slijedi da je taj kandidat
doista i cest podskup (pojavljuje se 2 puta u
transakcijama).
26Pravila pridruživanja
- Primjer generiranja cestog podskupa APRIORI
postupkom - Promatramo raniji primjer
- Ranije pokazani postupak generira
- 1, 2, 3, 1, 3, 5, 2, 3, 5,
- Rezanjem (provjerom svih njihovih
- podskupova da li su cesti) ostaje samo 2, 3, 5
kao kandidat za provjeru - minimalne potpore ponovnim skeniranjem baze.
- APRIORI S obzirom na leksicku uredenost
generiramo uzimajuci u obzir a_priori podskupove
od 2 elementa koji zadovoljavaju minimalnu
potporu -
- Prvi clan 1 ne daje niti jedan podskup s 3
elementa jer "1" nije u paru s nijednim daljnjim
elementom (leksicka uredenost) u skupu cestih
podskupova s 2 elementa. - 1, 2, 3 nismo generirali jer 1, 2 nije na
popisu. To je a-priori poznato jer "1" pocinje s
1, 3. Jednako za 1, 3, 5, jer nema 1, 5. -
- Prvi clan 2 daje 2, 3, 5.
- Umjesto 3 generiran je samo jedan podskup kao
kandidat.
27Pravila pridruživanja
- Primjer generiranja cestog podskupa APRIORI
postupkom - Neka su na razini k3 elementi leksicki uredeni i
cine ceste podskupove - L3abc, abd, acd, ace, bcd
- 1. Korak Self-joining L3L3
- Uz jednaka prva dva elementa (leksicka uredenost)
tražimo - Iz abc i abd slijedi abcd, a iz acd i ace
slijedi acde. - Nema drugih mogucnosti. Npr. acd i bcd nije
potrebno razmatrati jer su vec u generiranom
abcd. - 2. Korak rezanje (engl. pruning) provjera da
li su svi podskupovi cesti - acde je maknut jer ade nije u L3
- 3. Korak Kandidat za k4 cest skup je (i on se
provjerava u bazi da li je stvarno cest) - C4abcd
28Pravila pridruživanja
- Pseudo kod APRIORI algoritma
29Pravila pridruživanja
- Generiranje jakih pravila iz cestog (engl.
frequent ) skupa - Neka je naden cest skup od k3 elementa L L1,
L2, L5 - 1. korak - tvore se svi neprazni podskupovi s 1
do k-1 elemenata - L1, L2, L1, L5, L2, L5, L1, L2, L5
- 2. korak - generiraju se sva moguca pravila s
podskupovima iz 1. koraka i racuna uvjerenost
(engl. confidence) za svako pravilo - L1 ? L2 L5 Conf
- L1 ? L5 L2 Conf
- L2 ? L5 L1 Conf
- L1 L2 ? L5 Conf
- L2 L1 ? L5 Conf
- L5 L1 ? L2 Conf
- 3. korak primjenom praga zadane minimalne
uvjerenosti selektiraju se jaka pravila.
30Pravila pridruživanja
- Poteškoce u generiranju pravila pridruživanja
- Jezgra APRIORI algoritma
- Uporabi ceste (k 1)-itemsetove da bi generiralo
kandidate cestog k-itemseta. - Postupak skenira bazu podataka i traži slaganje
uzoraka kako bi izbrojio kandidate. - Usko grlo APRIORI algoritma genriranje kandidata
- Veliki skupovi kandidata
- 104 cestih 1-itemset generira 107 kandidata
2-itemsets. - Za otkrivanje cestog uzorka velicine 100, npr.
a1, a2, , a100, potrebno je generirati 2100 ?
1030 kandidata. - Višestruko skeniranje baze podataka
- Potrebno (n 1 ) prolaza, gdje je n duljina
najduljeg uzorka.
31Pravila pridruživanja
- Postupci efikasnijeg generiranje pravila
- Uporaba hash funkcije u generiranju adresa
tablice s cestim podskupovima - Tijekom prebrojavanju 1-elem cestih, stvara se
niz (što više) hash košarica za 2-elem. U
daljnje prebrojavanje 2-elem uzimaju se samo
košarice koje zadovoljavaju minimalnu potporu
(minimalan broj 2-elem u košarici i naravno oba
elementa u 2-elem su cesti). - Reduciranje broja transakcija
- Transakcija koja nema k-1 ceste podskupove se
izostavlja u daljnjem ispitivanju (beskorisna
je). - Dijeljenje skupa transakcija u particije
- Traže se cesti podskupovi u pojedinim particijama
(lokalni podskupovi). Svi lokalni skupovi spoje
se u globalni skup. U drugom prolazu iz globalnog
skupa izdvajaju se stvarni cesti podskupovi. - Slucajan izbor manjeg skupa transakcija iz velike
baze - Vjerojatno je da se neki podskupovi ne pronadu,
snizuje se prag potpore. - Dinamicko brojanje
- Cesti podskupovi se izdvajaju tijekom prolaza po
dijelovima, a ne prije cijelog prolaza kroz bazu
kao kod Apriori algoritma.
32Pravila pridruživanja
Prikaz tablicom
33Pravila pridruživanja
Vizualizacija planarnim grafom
34Pravila pridruživanja
Vizualizacija U ORACLE sustavu
35Pravila pridruživanja
- Prikaz pravila u sustavu za analizu Agrokor
36Pravila pridruživanja
- Rezultati analize uz vrlo malu potporu i
uvjerenost (ovdje pouzdanost i znacaj)
37Pravila pridruživanja
- Višerazinska pravila pridruživanja
- Elementi (proizvodi) cesto cine hijerarhiju.
- Elementi na nižoj razini ocekivano imaju manju
potporu. Umjesto uniformne potpore koristi se
reducirana potpora na nižim razinama. - Transakcijska baza se može kodirati prema
razinama. - Mogu se istraživati pridruživanja
- Razinu po razinu nezavisno
- Pojedini elementi kroz razine
- Podskupovi elemenata kroz razine
38Pravila pridruživanja
- Postupci generiranja višerazinskih pravila
pridruživanja - Odozgo prema dolje tako da se prvo traže
pravila više razine - milk bread
20, 60. -
- a zatim pravila niže razine (slabija pravila)
- 2 milk wheat
bread 6, 50. - Varijacije generiranja višerazinskih pravila
pridruživanja - Medurazinska pravila pridruživanja
- 2 milk Wonder wheat bread
- Pravila pridruživanja s više hijerarhijskih
opcija - 2 milk Wonder bread
smanjenje
39Pravila pridruživanja
- Taksonomija pravila pridruživanja
- Jedno-dimenzijska pravila (jedan predikat u
pravilu) - buys(X, milk) ? buys(X, bread)
- Više-dimenzijska pravila (2 ili više dimenzije
predikata) - Inter-dimenzijska pravila (nema ponavljajucih
predikata) - age(X,19-25) ? occupation(X,student) ?
buys(X,coke) - Hibridno dimenzijska pravila (ponavljajuci
predikati) - age(X,19-25) ? buys(X, popcorn) ? buys(X,
coke) - Kategoricki atributi - predikati
- Konacan broj mogucih vrijednosti, ne postoji
uredenost izmedu vrijednosti - Kvantitativni atributi - predikati
- Numericki, implicitna uredenost vrijednosti
40Pravila pridruživanja
- Buduci pravci istraživanja
- Booleova i kvantitativna pridruživanja
- Pridruživanja diskretnih i kontinuiranih podataka
- Od pravila pridruživanja prema korelacijskoj
analizi i analizi uzroka i posljedica - Pridruživanje ne mora nužno implicirati
korelacijsku ili uzrocno-posljedicnu vezu - Od intra-transakcijskih do inter-transakcijskih
pridruživanja - Napušta se granica pojedine transakcije
- Od analize pridruživanja do klasifikacije i
grupiranja (engl. clustering) - Grupiranje pravila pridruživanja
41Pohranjeni primjeri
- Ucenje i klasifikacija temeljena na pohranjenim
primjerima - (engl. instance based learning)
42Pohranjeni primjeri
- Ovaj postupak temelji se na pohranjenim
primjerima za koje je poznata pripadnost razredu. - Primjer nepoznate klasifikacije ulazi u sustav i
pridružuje se razredu kojem pripada jedan
najbliži pohranjeni primjer. - Algoritam je lijen (ništa ne radi sve do
dolaska nepoznatog primjera). - Temeljni problem Definicija funkcije udaljenost
do pohranjenog primjera (t.j. odredivanje
najbližeg primjera). - Funkcije udaljenosti
- Vecina sustava koristi tzv. Euklidsku udaljenost.
- Neka jedan primjer, oznaceno (1), ima
vrijednosti atributa - a1(1), a2(1), , ak(1)
- Drugi primjer (2) ima vrijednost atributa
- a1(2), a2(2), , ak(2) (gdje k predstavlja broj
atributa)
43Pohranjeni primjeri
- Euklidska udaljenost je definirana
- Striktno gledano nije potrebno racunati korijen
vec se mogu usporediti sume kvadrata razlika
vrijednosti atributa. kvadrata. - Alternativa Euklidskoj udaljenosti jest Manhattan
mjera, gdje se razlika izmedu atributa ne
kvadrira vec samo zbraja. - Druge mogucnosti su više potencije razlika koje
povecavaju utjecaj vecih razlika u odnosu na
manje. - Euklidska udaljenost predstavlja najbolji
kompromis. -
- Problem Razliciti atributi mjereni su u
razlicitim mjerilima. - Rješenje uobicajeno je normalizirati
vrijednosti atributa na skalu od 0 do 1
44Pohranjeni primjeri
- Normalizacija vrijednosti atributa
- gdje ?i predstavlja vrijednost atributa i, a
maksimum i minimum su izracunati temeljem svih
vrijednosti pohranjenih primjera. - Dosadašnji izrazi pretpostavljali su numericke
vrijednosti atributa. - Nominalne vrijednosti atributa
- Za razlicite vrijednosti razlika 1.
- Za jednake vrijednosti razlika 0.
- Nije potrebno normalizirati vrijednosti.
-
45Pohranjeni primjeri
- Problem nedostajucih vrijednosti
- Nominalni atributi
- Nedostaje jedna ili obje razlika 1.
- Numericki atributi
- Obje vrijednosti nedostaju razlika 1.
- Jedna vrijednost nedostaje razlika se uzima kao
normalizirana velicina druge postojece
vrijednosti (ili jedan minus ta normalizirana
velicina ovisno što je vece). - Pri nedostajucim vrijednostima razlika je najveca
moguca (pesimistican pristup).
46Pohranjeni primjeri
- Shema ucenja temeljena na pohranjenim primjerima
- Implicitno se pretpostavlja da se nepoznati
primjer usporeduje sa svima pohranjenima i
odlucuje se za klasifikaciju jednaku kao jedan
njemu najbliži susjed. - Problemi
- Kod velikih skupova podataka sporo se izvodi jer
se za svaki novi primjer mora pretražiti cijeli
skup pohranjenih primjera. Složenost je
proporcionalna s brojem pohranjenih testnih
primjera. - Daje loše rezultate kad u podacima ima šuma jer
je razred novog primjera odredena pomocu samo
jednog najbližeg susjeda koji može bit korumpiran
šumom. - Loše rezultate daje takoder i u slucajevima kada
razliciti atributi imaju razliciti utjecaj na
rezultat (posebice u ekstremnim slucajevima gdje
su neki atributi potpuno nebitni), jer u formuli
udaljenosti svi atributi imaju jednak utjecaj.
47Pohranjeni primjeri
- Povecanje efikasnosti pretraživanja primjera 1/3
- Pohranjeni primjeri u memoriji predstavljeni su
kao stablo - (kD-stablo, engl. kD-tree).
- To je binarno stablo koje dijeli ulazni prostor
hiper-ravninom (dimenzije ovisno o broju atributa
k) tako da se rekurzivno cijepa. Npr. za k2
(atributi a1 i a2 ) i 4 pohranjenih primjera
48Pohranjeni primjeri
- Povecanje efikasnosti pretraživanja primjera 2/3
- Izgradnja stabla Prvi primjer (7,4) je korijen
stabla i dijeli prostor horizontalno (a2 4).
Primjer (2,2) pada ispod horizontalne podjele pa
predstavlja list. Primjer (6,7) dijeli dalje
prostor vertikalno. Primjer (3,8) je list jer je
lijevo od vertikalne podjele. U svakoj regiji
nalazi se samo jedan (list) ili nijedan primjer. - Pretraživanje kD-stabla danog na slici
- Novi primjer je oznacen zvijezdom.
- List te regije je oznacen crno. To nije nužno
- najbliži, ali je prva dobra aproksimacija.
- Svaki bliži bi morao biti unutar crtkanog kruga.
- Potraga za bližim prvo se odnosi na sestrinski
prostor (oznacen sivo). Primjer u tom prostoru
nije unutar kruga pa nije bliži. Pretraga se
vraca na roditeljski cvor i njegov sestrinski
prostor (sve iznad horizontalne crte). Lijevi
primjer nije unutar kruga a desni je. - Algoritam je bitno brži od postupka ispitivanja
svih primjera. - Potrebno je uociti da se ne traži udaljenost
prema granicama nego i dalje prema pohranjenom
primjeru.
49Pohranjeni primjeri
- Ostale metode povecanja efikasnosti pretraživanja
3/3 - Umjesto pamcenja svih testnih primjera, primjeri
se mogu komprimirati u regije predstavljene samo
jednim karakteristicnim primjerom. - Povecanjem inicijalnog broja pohranjenih testnih
primjera temeljem kojih se stvara regija povecava
se preciznost klasifikacije. - Postupak je osjetljiv na šum jer pohranjeni
podaci sa šumom kontinuirano utjecu na krivo
klasificiranje. - Opci postupak pohranjuje nove primjere
povecavajuci skup primjera u kojem se traži
najbliži susjed. Nije potrebno pamtiti sve do
sada videne primjere. Postoji nekoliko tehnika
redukcije skupa. - Postupak s intervalnim vrijednostima
- Pregledaju se sve vrijednosti svih atributa
testnih primjera i stvore intervali tih
vrijednosti za pojedini razred. Novi primjer
usporeduje svoje vrijednosti atributa s pojedinim
intervalima i svrsta se u razred prema najvecem
broju slaganja s intervalima za pojedini razred.
50Pohranjeni primjeri
- Smanjenje utjecaja šuma
- k-najbližih susjeda
- Umjesto pretrage za jednim najbližim susjedom,
locira se manji broj - (npr. k 5) - najbližih susjeda.
- Razred novoga primjera odreduje se vecinskim
glasanjem k najbližih susjeda. - Što je veci šum potreban je veci broj primjera.
- Pracenje uspješnosti svakog primjera
- Zapisuju se ispravne i neispravne klasifikacije
za svaki pohranjeni primjer. - Postave se dvije razine uspješnosti ako je
primjer iznad razine koristi se za klasifikaciju,
a ako je ispod razine izbacuje se iz sustava. Ako
se uspješnost nalazi izmedu razina ne koristi se
za klasifikaciju ali svaki puta kada je najbliži
bilježi se u njegovoj statistici (raste mu
razina). - U sustavu WEKA implementirano je pracenje
uspješnosti (npr. algoritam IB3 - Instance based
ver 3).
51Pohranjeni primjeri
- Atributi s težinama
- Euklidska udaljenosti i normalizacija je dobar
postupak za domene s jednako relevantnim
atributima. - U vecini domena neki su atributi nebitni, dok se
bitni atributi razlikuju po razini važnosti. - Poboljšanje
- Svaki atribut ima težinski faktor.
- Mjera udaljenosti ukljucuje težinske faktore wi
za svali atribut - U nekim primjenama težinski faktori su ovisni o
razredu. U tom slucaju postojat ce odvojeni skup
težina za svaki razred.
52Pohranjeni primjeri
- Atributi s težinama
- Adaptacija težina
- Svi težinski faktori atributa obnove se nakon
klasifikacije svakog primjera za ucenje (poznata
klasifikacija) temeljem najslicnijeg predloška. - Npr. Primjer x i najslicniji predložak y.
- Za svaki atribut i, razlika xi - yi
predstavlja mjeru doprinosa toga atributa odluci
(mala razlika atribut pozitivno pridonosi
odluci). - Namjera je da se osvježi i-ta težina na osnovu
velicine ove razlike i tocnosti klasifikacije. - Ako je klasifikacija ispravna i-ta težina se
poveca (obrnuto proporcionalno razlici xi - yi
). - Ako je klasifikacija neispravna i-ta težina se
smanjuje (proporcionalno razlici xi - yi ). - Promjenu težine obicno slijedi korak ponovne
normalizacije.
53Pohranjeni primjeri
- Generaliziranje primjera
- Primjeri se generaliziraju (zamijenjuju) s
višedimenzionalnim (broj atributa) pravokutnim
regijama u prostoru primjera (hiper-pravokutnici).
- Kod klasificiranja traži se udaljenost do hiper
pravokutnika (ne više do najbližeg susjeda). - Ako je novi predložak klasificiran tocno, stvara
se novi hiper-pravokutnik koji pokriva stare i
nove primjere. - Ako je novi predložak klasificiran netocno,
granice hiper-pravokutnika se mijenjaju tako da
se odvoje od novog primjera. - Potrebno je odluciti hoce li se dopustiti
preveliko generaliziranje, uzrokovano
ugnježdivanjem ili preklapanjem
hiper-pravokutnika (temeljem neke mjere
konflikata postojecih podrucja). - Preklapajuci hiper-pravokutnici odgovaraju
pokrivanju primjera sa dva ili više pravila u
skupu pravila. - Ugnježdeni hiper-pravokutnici odgovaraju
iznimkama u sustavu s pravilima.
54Pohranjeni primjeri
- Generaliziranje primjera
- Funkcija udaljenosti do hiper-pravokutnika
- Udaljenost od primjera do hiper-pravokutnika 0
ako tocka leži unutar ili na granici hiper
pravokutnika. - Inace racuna se udaljenost do najbližeg dijela
hiper-pravokutnika (nije trivijalno odrediti). - Primjer 2 razreda (R1 i R2) i 2 dimenzije-
atributa (slika). - Granica sadrži 9 regija
- 1 - linearno, jednaka udaljenost
- 2 - parabolicna
- 3 - linearna
-
R1
R2