You are on page 1of 52

Inteligentno upravljanje

Mainsko uenje
Dr Samim Konjicija, dipl. ing. el.

Sarajevo, 10.10.2016. godine

Sadraj predavanja
Pojam mainskog uenja
Oblasti primjene mainskog uenja
Definicija problema uenja
Dizajniranje sistema koji ui
Zadatak uenja koncepta
Uenje stabla odluivanja
Osnovni algoritam uenja stabla odluivanja
Uenje na bazi instanci
Bayesovo uenje

Ideja mainskog uenja


Nastojanje da se razvije program koji je u stanju da se automatski
poboljava sa iskustvom
Razvijeni su algoritmi koji su efikasni za razliite zadatke
mainskog uenja:

Prepoznavanje govora

Predvianje toka oporavka pacijenata

Detekcija prevara upotrebom kreditnih kartica

Automatsko upravljanje vozilom

Klasifikacija astronomskih struktura

Raunarske igre

...

Mainsko uenje
Mainsko uenje je multidisciplinarna oblast, koja koristi rezultate
oblasti kao to su:

Vjetaka inteligencija

Vjerovatnoa i statistika

Teorija kompleksnosti

Teorija automatskog upravljanja

Teorija informacija

Filozofija

Psihologija

Neurobiologija

...

Problem mainskog uenja


Pod mainskim uenjem podrazumijevamo svojstvo programa
da poboljava svoju performansu sa iskustvom
Definicija:

Za raunarski program se kae da ui iz iskustva E u odnosu


na neku klasu zadataka T i mjeru performanse P, ako se
njegova performansa pri izvravanju zadataka iz T mjerena
pomou P poboljava sa iskustvom E.
Primjer 1: Problem uenja igranja dame

T: igranje dame
P: procenat pobjeda
E: vjebanje protiv sebe

Problem mainskog uenja


Primjer 2: Problem uenja prepoznavanja rukopisa
T: prepoznavanje i klasifikacija rijei u slici rukopisa
P: procenat ispravno klasificiranih rijei
E: baza rukom pisanih rijei sa njihovom ispravnom
klasifikacijom
Primjer 3: Problem uenja automatskog upravljanja vozilom
T: vonja autoputem koritenjem raunarske vizije
P: prosjena preena udaljenost bez pogreaka
E: sekvenca slika vozaa i njegovih ispravnih akcija

Dizajniranje sistema koji ui


Primjer sistema koji igra dame
Potrebno je odabrati:

Tip iskustva iz kojeg e sistem uiti

Ciljnu funkciju taan tip znanja koje treba nauiti

Reprezentaciju ciljne funkcije

Algoritam za aproksimaciju funkcije mehanizam


uenja

Izbor tipa iskustva


Iskustvo moe
informaciju

dati

direktnu

ili

indirektnu

povratnu

Direktna povratna informacija: skup stanja na ploi sa


ispravnim potezom za svaku plou
Indirektna povratna informacija: skup sekvenci poteza i
finalni ishod igre za svaku sekvencu
Dodatni problem pridruivanja kredita
doprinosa svakog poteza konanom ishodu

odreivanja

Uenje iz indirektne povratne informacije je kompliciranije


Prednost je u tome to se jednostavnije realizira

Izbor tipa iskustva


Sistem koji ui moe imati razliit stepen kontrole nad
sekvencom primjera za treniranje:

Uitelj moe birati stanja ploe i ispravne poteze za


njih

Sistem moe birati stanja ploe i pitati uitelja za


ispravne poteze

Sistem moe imati kompletnu kontrolu nad stanjima


ploe i odgovarajuim klasifikacijama

Skup primjera za treniranje treba biti dobro distribuiran po


prostoru na kome e se mjeriti performansa sistema

Izbor ciljne funkcije

Ciljna funkcija specificira tip znanja koji treba nauiti

Pretpostavimo da program generira samo ispravne poteze za svaku


plou

Potrebno je nauiti kako odabrati najbolji potez

Prostor koji se pretrauje je poznat unaprijed, a potrebno je nauiti


strategiju njegovog pretraivanja

Ciljna funkcija moe biti:


C: B M

B skup ploa

M skup poteza

Ovako odabranu ciljnu funkciju nije jednostavno nauiti iz indirektne


povratne informacije

Izbor ciljne funkcije


Pogodnija ciljna funkcija bi bila:
V: B R
B skup ploa, R skup realnih brojeva
V treba pridruiti vee vrijednosti boljim stanjima na ploi
Kada se naui V, ona se koristi za ocjenjivanje svake od
ploa koje se mogu dobiti legalnim potezima iz tekue i bira
se potez koji generira plou sa najveom vrijednosti v

Izbor ciljne funkcije


Za V moemo odabrati funkciju koja vrijednost svakom bB
dodjeljuje prema pravilima:

Ako je b finalno stanje koje rezultira pobjedom,


V(b)=100

Ako je b finalno stanje koje rezultira porazom,


V(b)=-100

Ako je b finalno stanje koje rezultira remijem, V(b)=0

Ako b nije finalno stanje, V(b)=V(b'), gdje je b'


najbolje finalno stanje koje se moe dobiti iz b uz
optimalnu igru

Izbor ciljne funkcije


Ovako definirana ciljna funkcija je idealna
Ne moe se lako izraunati u prihvatljivom vremenu
Najee se odreuje aproksimacija ciljne funkcije
Proces uenja ciljne funkcije se naziva aproksimacijom
funkcije
Umjesto odreivanja idealne funkcije V, potrebno je odrediti
njenu aproksimaciju

Izbor reprezentacije ciljne funkcije


Sistem koristi reprezentaciju ciljne funkcije tokom uenja
Mogui izbori reprezentacije ciljne funkcije:

Tabela stanja na ploi sa njihovim vrijednostima

Skup pravila koja dodjeljuju vrijednost stanju na


osnovu njegovih svojstava

Kvadratna funkcija ocjene stanja na osnovu svojstava


stanja

Vjetaka neuronska mrea

Potrebno je postii kompromis izmeu reprezentacije i veliine


skupa primjera za treniranje koji je potreban da bi se
reprezentacija nauila

Izbor reprezentacije ciljne funkcije


Za ovaj primjer uzmimo:
V b = w 0 w 1 x 1 w 2 x 2 w 3 x 3 w 4 x 4 w 5 x 5 w 6 x 6

x1 broj crnih figura na ploi


x2 broj bijelih figura na ploi
x3 broj crnih dama na ploi
x4 broj bijelih dama na ploi
x5 broj crnih figura ugroenih od bijelih figura
x6 broj bijelih figura ugroenih od crnih figura

Izbor algoritma za aproksimaciju


Da bi se nauila ciljna funkcija, potreban je skup primjera za
treniranje, koji se sastoji od ureenih parova (b,Vtrain(b))
Primjer koji opisuje stanje b kod kojega je crni pobijedio:
([3,0,1,0,0,0],+100)
Obzirom da se koristi indirektna povratna informacija, potrebno
je estimirati vrijednosti stanja koja su dovela do finalnog:
V train b V Successor b
Za mjeru kvaliteta aproksimacije moemo koristiti:
E=

b ,V t rai n b T R

train b

V b 2

Pravilo za modificiranje teina:


w i w i V train b V b x i

Pregled procedure dizajna sistema

Osnovna pitanja u mainskom uenju


Neka od osnovnih pitanja u mainskom uenju su:

Koji algoritmi su u stanju nauiti ciljnu funkciju iz


specificiranih primjera za treniranje?

Koliko podataka za treniranje je potrebno koristiti?

Kako iskoristiti prethodno znanje?

Koji je najbolji nain reduciranja problema uenja na


problem aproksimacije jedne ili vie funkcija

...

Pristupi uenju
Osnovni pristupi uenju koje emo obraditi:

Uenje koncepata (kategorija)

Uenje stabla odluivanja

Uenje na bazi instanci

Bayesovo uenje

Reinforcement learning

[Klasterizacija, klasteriranje]

(Vjetake neuronske mree)

(Evolucioni algoritmi)

Uenje koncepata (kategorija)


Uenje uglavnom ukljuuje poimanje koncepata iz specifinih
primjera za treniranje
Koncept se moe posmatrati kao opis podskupa objekata ili
dogaaja iz veeg skupa
Koncept se moe predstaviti logikom funkcijom definiranom na
nekom skupu
Aproksimiranje ovakve logike funkcije se naziva uenjem
koncepta
Uenje koncepta
prostora

predstavlja problem

pretraivanja velikog

Izuavanje algoritama uenja se svodi na ispitivanje algoritama


koji efikasno pretrauju veoma velike ili beskonane prostore

Uenje stabla odluivanja


Uenje stabla odluivanja predstavlja metod aproksimiranja
ciljnih funkcija koje imaju diskretne vrijednosti
Nauena funkcija se predstavlja u formi stabla odluivanja
Stablo odluivanja se moe predstaviti u formi skupa if-then
pravila
Uenje stabla odluivanja predstavlja jednu od najpopularnijih
metoda induktivnog zakljuivanja
Koristi se uspjeno u nizu oblasti od medicine do evaluacije
rizika kreditiranja

Stablo odluivanja
Instance se klasraju sortiranjem od korjena prema listovima
Svaki vor u stablu predstavlja testiranje nekog atributa
instance
Svaka grana koja izlazi iz vora predstavlja jednu moguu
vrijednost datog atributa
Instanca se klasira poevi od korjena stabla, testiranjem
atributa specificiranih vorovima i kretanjem du grana koje
odgovaraju vrijednostima atributa za datu instancu

Stablo odluivanja
Primjer: Klasiranje dana u pogledu pogodnosti za igranje
tenisa (stablo odluivanja za koncept Dan je pogodan za
igranje tenisa)

Stablo odluivanja
Primjer: Klasiranje potencijalnih kupaca raunara (stablo
odluivanja za koncept Kupac e kupiti raunar)

Stablo odluivanja
Stablo odluivanja predstavlja disjunktivnu formu
Svaka staza od korjena do lista predstavlja konjunkciju
testova atributa instance
Stablo kao cjelina predstavlja disjunkciju
Prethodno stablo moemo zapisati kao:
V rijem e = S u n ca n o V la zn o st = N o rm a ln a V rijem e = O b la cn o V rijem e = K isa V jeta r = S la b

Stablo odluivanja se primjenjuje za probleme klasifikacije


Problem klasifikacije je problem u kome je zadatak izvriti
klasifikaciju instanci u jednu od kategorija iz diskretnog skupa

Problemi pogodni za predstavljanje stablom


odluivanja
Instance su predstavljene parovima atribut vrijednost

Broj atributa je fiksan

Svaki atribut moe imati jednu od diskretnih vrijednosti koje


se ne preklapaju

Ciljna funkcija ima diskretne vrijednosti

Ciljna funkcija moe biti logika funkcija

Ciljna funkcija moe imati vie diskretnih vrijednosti

Podaci za treniranje mogu sadravati greku

Greka klasifikacije podataka za treniranje

Greka vrijednosti atributa

Podacima za treniranje mogu nedostajati neke vrijednosti atributa

Algoritam za uenje stabla odluivanja

Osnovni algoritam (pohlepni algoritam)

Stablo se gradi od vrha prema dnu na rekurzivan nain

U poetku se u korjenskom voru razmatraju svi podaci iz skupa za


treniranje
Atributi su kategorijski, ili su diskretizirani u kategorije (u sluaju da
su kontinualni)
Primjeri se dijele rekurzivno na osnovu odabranih atributa
Atribut koji e biti koriten se odabire na bazi heuristike ili neke
statistike mjere (npr. informacionog dobitka)

Uslovi zaustavljanja dijeljenja

Svi uzorci u datom voru pripadaju istoj klasi


Nije preostao ni jedan atribut na osnovu kojega se uzorci mogu
dalje dijeliti veinski odabir klase koja e predstavljati list drveta

Nije preostao ni jedan uzorak za dalje dijeljenje

Dijeljenje n-torki po odabranom atributu


u nekom voru

Dijeljenje se moe provesti na osnovu vievrijednosnog atributa,


binarnog atributa ili kontinualnog atributa (razdiobene take)

Algoritam uenja stabla odluivanja


Osnovni algoritam uenja stabla odluivanja je ID3 (Iterative
Dichotomiser 3) autor Ross Quinlan, 1986.
To je algoritam pohlepnog pretraivanja prostora moguih
stabala odluivanja
Osnovna ideja algoritma ID3 je da se od vrha prema dnu
stabla pokuava pronai atribut koji najbolje klasira testni
primjer
Mjera koliko atribut
informacioni dobitak

dobro

klasira

testni

primjer

je

Mogu se koristiti i druge statistike mjere (mjera dobitka, gini


index, ...)

Pseudokod ID3 algoritma


ID3 (Primjeri, Ciljni_atribut, Atributi)

Kreirati korjen stabla

Ako su svi Primjeri pozitivni, vrati stablo sa jednim vorom +

Ako su svi Primjeri negativni, vrati stablo sa jednim vorom -

Ako su Atributi prazni, vrati stablo sa jednim vorom koji ima najeu vrijednost atributa
Ciljni_atribut za skup Primjeri

U ostalim sluajevima:

A atribut iz Atributi koji najbolje klasira skup Primjeri

Za svaku moguu vrijednost vi atributa A:

Dodaj novu granu koja odgovara testu A=vi

Neka je Primjerivi podskup Primjeri za koje je A=vi

Ako je Primjerivi prazan:

Kraj

Ispod nove grane dodati list koji ima najeu vrijednost atributa
Ciljni_atribut za skup Primjeri
Inae dodati podstablo ID3(Primjerivi , Ciljni_atribut, Atributi- {A})

Odabir atributa na osnovu kojeg se vri


klasifikacija
Informacioni dobitak se odreuje na bazi entropije
Entropija odraava stepen neizvjesnosti
Entropija za skup primjera S sa dva ishoda (pozitivnim i
negativnim):
E S = p + log 2 p + p - log 2 p -

U sluaju skupa S sa c ishoda:


c

E S = p i log 2 p i
i=1

Primjer: S je skup od 14 primjera logikog koncepta sa 9


pozitivnih i 5 negativnih primjera
E [9 + , 5 - ]=

9
9
5
5
log 2 log 2 =0,94
14
14 14
14

Odabir atributa na osnovu kojeg se vri


klasifikacija
Entropija je najvea kada je broj pozitivnih i negativnih
primjera identian

Informacioni dobitak
Informacioni dobitak predstavlja oekivano umanjenje
entropije dijeljenjem primjera na osnovu vrijednosti atributa:
G S , A = E S

vV A

S v
S

E S v

Primjer:
V Vjetar ={Slab , Jak }
S =[9 + , 5 - ]
S Slab=[6 + , 2 -]
S Jak =[3 + , 3 -]
8
6
8
6
G S ,Vjetar = E S
E S Slab
E S Jak =0,94 0,811 1=0,048
14
14
14
14

Uenje (induciranje) drveta odluivanja:


Skup podataka za treniranje
age
<=30
<=30
3140
>40
>40
>40
3140
<=30
<=30
>40
<=30
3140
3140
>40

income student credit_rating


high
no
fair
high
no
excellent
high
no
fair
medium
no
fair
low
yes fair
low
yes excellent
low
yes excellent
medium
no
fair
low
yes fair
medium
yes fair
medium
yes excellent
medium
no
excellent
high
yes fair
medium
no
excellent

buys_computer
no
no
yes
yes
yes
no
yes
no
yes
yes
yes
yes
yes
no

Mjera za odabir atributa:


Informacioni dobitak (ID3)

9
9
5
5
E
(S
)=E
(9,5
)=
log
(
)
log
(
)=0 . 940
2
2
Klasa P: buys_computer = yes
14
14 14
14

Klasa N: buys_computer = no

Infoage ( D)=

5
4
E (2,3)+ E (4,0 )
14
14

5
E (3,2 )=0 . 694
14
5
E (2,3 ) znai da age <=30 ima 5
14 od 14 uzoraka, sa 2 yes i 3 no.
+

age
<=30
<=30
3140
>40
>40
>40
3140
<=30
<=30
>40
<=30
3140
3140
>40

income student credit_rating


high
no
fair
high
no
excellent
high
no
fair
medium
no
fair
low
yes
fair
low
yes
excellent
low
yes
excellent
medium
no
fair
low
yes
fair
medium
yes
fair
medium
yes
excellent
medium
no
excellent
high
yes
fair
medium
no
excellent

buys_computer
no
no
yes
yes
yes
no
yes
no
yes
yes
yes
yes
yes
no

Radi toga je:

G( age)=E (S )Infoage (S )=0. 246

G (income )=0. 029


G ( student )=0 . 151
G ( credit _ rating )=0 . 048

Ogranienja algoritma ID3


Osnovni algoritam ID3 moe prouzroiti potekoe kada podaci
sadre smetnje
Kada je skup podataka za treniranje mali, algoritam nee biti u
stanju dati eljenu ciljnu funkciju
Razlog je overfitting: Klasifikacija primjera iz skupa za treniranje je
tana, ali klasifikacija sluajeva koji nisu u skupu za treniranje je
netana
Dva osnovna pristupa da bi se izbjegao overfitting:

Zaustavljanje gradnje stabla prije postizanja potpune


ispravne klasifikacije skupa za treniranje (prepruning)

Naknadno modificiranje stabla odluivanja (postpruning)

Algoritam C4.5 (Quinlan, 1993.) predstavlja poboljanje ID3


algoritma

Uenje na bazi instanci


Metode uenja na bazi instanci predstavljaju efikasan
pristup aproksimiranju realnih ili diskretnih ciljnih funkcija
Uenje se sastoji u pohranjivanju prezentiranih podataka
za treniranje
Za svaku novu instancu se iz memorije pozivaju sline
instance i one se koriste za klasifikaciju
Na ovaj nain se odreuje lokalna aproksimacija ciljne
funkcije, bez odreivanja aproksimacije preko itavog
prostora koji se pretrauje

Uenje na bazi instanci


Rezonovanje na bazi sluaja
(CBR

Case-based
Reasoning) predstavlja metod
uenja na bazi instanci, gdje
se
koriste
kompleksnije
simbolike
reprezentacije
instanci
Nedostatak uenja na bazi
instanci je u cijeni klasifikacije
nove instance cjelokupno
raunanje se provodi prilikom
klasifikacije

Uenje na bazi k najbliih susjeda


k-Nearest Neighbor predstavlja osnovni metod uenja na
bazi instanci
Sve instance su predstavljene takama u E n
Najblii susjedi se definiraju u smislu Euklidske udaljenosti
Neka je instanca x opisana vektorom vrijednosti atributa:
[a1(x), a2(x), ..., an(x) ]
Udaljenost izmeu instanci xi i xj e biti:
d x i , x j =

a r x i a r x j 2

r =1

Osnovni algoritam k-Nearest Neighbor


Treniranje:

Za svaki primjer iz skupa za treniranje (x, f(x)) dodati


primjer u skup Primjeri

Klasifikacija:

Za instancu xq koju je potrebno klasirati:

Odrediti instance x1, x2, ..., xk iz skupa Primjeri


koje su najblie instanci xq

Vratiti:
k

f x q =argmax v , f x i
vV

i =1

a , b = 1 za a=b
0 inae

Osnovni algoritam k-Nearest Neighbor


K-Nearest Neighbor se moe koristiti i za aproksimaciju
kontinualnih funkcija:
k
f x q =

f x i

i=1
k

Da bi se u obzir uzela udaljenost susjeda od instance koja se


klasira, uvode se teinski koeficijenti:
k

f x q = argmax w i v , f x i
vV

w i=

i=1

1
d x q , xi

f x q =

wi f x i

i=1
k

wi
i =1

U ovom sluaju k moe biti jednako ukupnom broju primjera za


treniranje, kada metod nazivamo globalnim

Bayesovo uenje
Probabilistiki pristup zaljuivanju

Algoritmi Bayesovog uenja raunaju vjerovatnoe hipoteza

Zakljuivanje se bazira na pretpostavci da se optimalna


odluka moe donijeti uz uvaavanje ovih vjerovatnoa

Meu najee koritenim metodama mainskog uenja

Osnova za sve metode mainskog uenja koje direktno


koriste vjerovatnoe

Koriste se i kao referenca sa kojom se porede metode koje


direktno ne koriste vjerovatnoe

Bayesov klasifikator
Statistiki klasifikator: omoguava probabilistiku predikciju pripadnosti
objekta klasi

Bazira se na Bayesovom teoremu iz statistike

Performansa jednostavnog Bayesovog klasifikatora (nave Bayesian


classifier) je uporediva sa performansom drveta odluivanja ili
klasifikatora na bazi vjetakih neuronskih mrea

Omoguava inkrementalno uenje: Svaki podatak za treniranje e


poveati ili umanjiti vjerovatnou da je hipoteza tana, tako da se
aktuelni podaci mogu kombinirati sa skupom podataka za treniranje koji
sadri prethodno znanje

Bayesove metode klasifikacije predstavljaju standard za optimalno


donoenje odluka i sa njima se uporeuju sve ostale metode, bez
obzira na njihovu raunsku kompleksnost

Bayesov teorem

Neka je X neki uzorak (evidence) ija pripadnost klasi nije poznata

Neka je H hipoteza da X pripada klasi C

Klasifikacija se sastoji u odreivanju vjerovatnoe P(H|X), odnosno


vjerovatnoe da je hipoteza ispravna u sluaju da je pribavljen uzorak X

P(H) (prior probability) predstavlja a priori vjerovatnou

Npr. da e X kupiti raunar, bez obzira na vrijednosti atributa koje ga


karakteriziraju

P(X) predstavlja vjerovatnou pribavljanja uzorka X

P(X|H) (posteriori probability) predstavlja vjerovatnou da se radi o


uzorku X, ako je hipoteza ispravna

Npr. ako je poznato da e X kupiti raunar, vjerovatnoa da X


karakteriziraju vrijednosti atributa 31..40, medium income, ...

Bayesov teorem

Bayesov teorem omoguava odreivanje vjerovatnoe da je hipoteza H


ispravna, ako je pribavljen uzorak X:

P ( X H ) P ( H )
P ( H X )=
P(X )

Teorema omoguava predvianje da X pripada klasi Ci ako i samo ako


je vjerovatnoa P(Ci|X) najvea od svih vjerovatnoa P(Ck|X) za svih k
klasa

Praktini problem predstavlja odreivanje potrebnih vjerovatnoa

Naivni Bayesov klasifikator

Neka je D skup podataka za treniranje, koji se sastoji od n-torki i njima


pridruenih oznaka klasa

Svaka n-torka je predstavljena vektorom vrijednosti atributa


X = (x1, x2, , xn)

Neka postoji m klasa C1, C2, , Cm

Klasifikacija se sastoji u odreivanju maksimalne vjerovatnoe P(C i|X)


i provodi se na bazi Bayesovog teorema:

P ( X C i ) P ( C i )
P ( C iX )=
P( X )

Obzirom da je vjerovatnoa P(X) konstantna za sve klase, potrebno je


maksimizirati:
P ( C iX )=P ( X C i ) P (C i )

Naivni Bayesov klasifikator

Radi pojednostavljenja emo uvesti pretpostavku da su vjerovatnoe


pojave vrijednosti razliitih atributa meusobno neovisne:
n

P ( X C i )= P( x C i )=P ( x Ci )P ( x C i ). ..P( x C i )
k =1

Na ovaj nain se bitno pojednostavljuje izraunavanje potrebnih


vjerovatnoa: one se sada mogu odrediti jednostavnim prebrojavanjem

Ako je Ak kategorijski atribut, P(xk|Ci) predstavlja broj n-torki klase Ci


koje imaju vrijednost xk atributa Ak podijeljeno sa |Ci, D| (tj. brojem ntorki klase Ci u skupu D)

Ako je Ak kontinualan, P(xk|Ci) se obino odreuje na bazi Gausove


raspodjele vjerovatnoe, sa srednjom vrijednou i standardnom
devijacijom :
( x ) 2

1
2 2
P ( X C i )=g ( x k , C , C )
g ( x , , )=
e
i
i
2

Naivni Bayesov klasifikator: Primjer

Klase:
C1: buys_computer = yes
C2: buys_computer = no
Uzorak:
X = (age <=30,
Income = medium,
Student = yes
Credit_rating = Fair)

age

<=30
<=30
3140
>40
>40
>40
3140
<=30
<=30
>40
<=30
3140
3140
>40

income

student

high
high
high
medium
low
low
low
medium
low
medium
medium
medium
high
medium

no
no
no
no
yes
yes
yes
no
yes
yes
yes
no
yes
no

credit_rating buys_computer

fair
excellent
fair
fair
fair
excellent
excellent
fair
fair
fair
excellent
excellent
fair
excellent

no
no
yes
yes
yes
no
yes
no
yes
yes
yes
yes
yes
no

Naivni Bayesov klasifikator: Primjer


P(Ci):

P(buys_computer = yes) = 9/14 = 0.643


P(buys_computer = no) = 5/14= 0.357

Raunanje P(X|Ci) za svaku od klasa:


P(age = <=30 | buys_computer = yes) = 2/9 = 0.222
P(age = <= 30 | buys_computer = no) = 3/5 = 0.6
P(income = medium | buys_computer = yes) = 4/9 = 0.444
P(income = medium | buys_computer = no) = 2/5 = 0.4
P(student = yes | buys_computer = yes) = 6/9 = 0.667
P(student = yes | buys_computer = no) = 1/5 = 0.2
P(credit_rating = fair | buys_computer = yes) = 6/9 = 0.667
P(credit_rating = fair | buys_computer = no) = 2/5 = 0.4
X = (age <= 30 , income = medium, student = yes, credit_rating = fair)
P(X|Ci) : P(X|buys_computer = yes) = 0.222 x 0.444 x 0.667 x 0.667 = 0.044
P(X|buys_computer = no) = 0.6 x 0.4 x 0.2 x 0.4 = 0.019
P(X|Ci)*P(Ci) : P(X|buys_computer = yes) * P(buys_computer = yes) = 0.028
P(X|buys_computer = no) * P(buys_computer = no) = 0.007
Dakle, X pripada klasi (buys_computer = yes)

Izbjegavanje problema nulte vjerovatnoe

Naivni Bayesov klasifikator je mogue koristiti samo ako su sve uslovne


vjerovatnoe nenulte, u protivnom e predviena vrijednost vjerovatnoe
n
biti 0
P ( X C )=
P( x C )
i

k =1

Radi toga je pri raunanju vjerovatnoa potrebno uvesti korekciju

Npr. neka se skup podataka sastoji od 1000 n-torki, od ega vrijednosti atributa
income imaju: income=low (0), income= medium (990), i income = high (10)

Izvriemo Laplaceovu korekciju (Laplaceov estimator):


Dodaemo 1 svakom sluaju
Prob(income = low) = 1/1003
Prob(income = medium) = 991/1003
Prob(income = high) = 11/1003
Korigirane ocjene vrijednosti vjerovatnoa su po vrijednosti bliske nekorigiranim
vrijednostima, ali rjeavaju problem nulte vjerovatnoe

Karakteristike naivnog Bayesovog klasifikatora

Prednosti:

Jednostavna implementacija
Dobri rezultati u veini sluajeva
Nedostaci:
Pretpostavka da su vjerovatnoe meusobno neovisne, to dovodi do
umanjenja tanosti

U realnim sluajevima postoje meuovisnosti izmeu atributa:


Npr. za bolnike pacijente: Profil: starost, porodina anamneza, ...;
Simptomi: groznica, kaalj, ...; Bolest: rak, dijabetes, ...
Ove meuovisnosti ne mogu biti modelirane naivnim Bayesovim
klasifikatorom

Bayesove mree pruaju mogunost da se meuovisnosti ukljue u model

You might also like