You are on page 1of 27

Emre DEL BA

NDEK LER
 Karar A alar  Karar A alar ile S n fland rma  Entropy Kavram  Entropy e Dayal Algoritmalar
 ID3  C 4.5

 Budama

Karar A alar
Karar A alar , a a yap s nda olup bir olay n sonuland r lmas nda sorunun cevab na gre hareket ederler. Karar a alar ile s n fland rma: renme, rneklerden olu an kme ile gerekle ir. Her bir nitelik bir d m taraf ndan temsil edilir. En st yap KK (gelen dal yok, 0 ya da daha fazla dal kar) En son yap YAPRAK (gelen 1 dal var, ancak dallanma olmaz) Kendisinden nce ona do ru gelen sadece bir dal olan ve kendisinden iki veya daha fazla dal kan D MLER Arada kalan yap lar DAL Karar a ac algoritmas : 1. A ac olu turma Ba lang ta btn renme kmesi a atad r. 2. A ac budama renme kmesindeki grltl verilerden olu an ve test kmesinde hataya neden olan dallar silinir.

y y y y y y

Karar A alar ile S n fland rma


Giri nitelikleri X,Y S n f1 X>1 ve Y=B, X 1 S n f2 Y=A, Y=C
X>1

EVET HAYIR Y=? Y=A Y=C

Y=B

S n f2

S n f1

S n f2

S n f1

ID3 Algoritmas
Karar a ac algoritmas nda ana seim a ataki her d mde hangi de i kenin seilece idir. De i kenin de erinin ls information gain (bilgi kazanc ) ad verilen istatistik bir de er ile belirlenir ve entropy ad verilen bir tan mlama ile kullan l r. Entropy e dayal algoritmalar: ID3, C 4.5 Entropy, rastgeleli in, belirsizli in ve beklenmeyen durumun ortaya kma olas l n gsterir. Verilen S toplulu u hedef de i keninin pozitif ve negatif rneklerini ierir.

ID3 Algoritmas Bilgi kazanc lm: Entropy S n fland rmada; y rneklerin tm ayn s n fa ait ise entropy = 0 y rnekler s n flar aras nda e it da lm ise entropy = 1 y rnekler s n flar aras nda rastgele da lm ise 0 < entropy < 1 A ac n en stnde yani kkte/root ta konumlanacak nitelik (zellik) belirlenir. Bilgi kazanc en yksek olan ZELLiK, a ac n en stnde konumland r l r.

ID3 Algoritmas

p S deki pozitif rneklerin S deki btn rneklere oran d r ve p ise S deki negatif rneklerin S deki btn rneklere oran d r. Bir de i kenin etkinlik ls, information gain (bilgi kazanc ) terimi ile kullan lmaktad r. A de i keninin information gain i Gain(S,A), S rneklerinin bir toplulu una ba l d r ve a a daki forml ile tan mlan r.

Values(A), A de i keninin alabilece i btn de erler ve Sv, A de i keninin v de erini ald S lerin olu turdu u rneklerdir.

ID3 Algoritmas
rnek Karar A ac : Sinemaya gidecek mi? HAVA gne li gne li bulutlu ya murlu ya murlu ya murlu bulutlu gne li gne li ya murlu gne li bulutlu bulutlu ya murlu VASITA bisiklet bisiklet bisiklet otobs arabas arabas arabas otobs arabas otobs otobs otobs bisiklet otobs GEL R yksek yksek yksek yksek normal normal normal yksek normal normal normal yksek normal yksek EVL bekar evli bekar bekar bekar evli evli bekar bekar bekar evli evli bekar evli S NEMA Hay r Hay r Evet Evet Evet Hay r Evet Hay r Evet Evet Evet Evet Evet Hay r

ID3 Algoritmas
y Burada S NEMA niteli i hedef s n f de erleri iermektedir. O halde

S NEMA nitelik de erlerinden olu an kme S kmesi olarak kabul edilebilir. y S NEMA={hay r, hay r, hay r, hay r, hay r, evet, evet, evet, evet, evet, evet, evet, evet, evet} y C1 hay r, C2 evet ise:

p1 !

5 14
n

p2 !

9 14

5 9 PSinema ! , 14 14

5 9 9 5 E ( S ) !  pi log 2 pi !  log 2  log 2 ! 0.940 14 14 14 14 i !1


Gain(S,HAVA) = ? Gain(S,VASITA) = ? Gain(S,GEL R) = ? Gain(S,EVL ) = ?

ID3 Algoritmas

Ad m 1: VASITA Niteli i: Vas ta niteli ine gre bir ay rma gerekle ti inde kazanc n ne olaca n bulmak gerekiyor. Ancak bunun iin nce: VASITA bisiklet: 2 Evet otobs: 4 Evet 2 Hay r 2 Hay r arabas : 3 Evet 1Hay r

G(S,VASITA) = 0.940 -[(4/14)[-(2/4)log2(2/4)-(2/4)log2(2/4)]] -[(6/14)[-(4/6)log2(4/6)-(2/6)log2(2/6)]] -[(4/14)[-(3/4)log2(3/4)-(1/4)log2(1/4)]] = 0.027

ID3 Algoritmas

Ad m 2: HAVA Niteli i: Hava niteli ine gre bir ay rma gerekle ti inde kazanc n ne olaca n bulmak gerekiyor. Ancak bunun iin nce: HAVA Hay r G(S,HAVA) = 0.940 -[(5/14)[-(2/5)log2(2/5)-(3/5)log2(3/5)]] -[(5/14)[-(3/5)log2(3/5)-(2/5)log2(2/5)]] -[(4/14)[-(4/4)log2(4/4)-(0/4)log2(0/4)]] = 0.246 gne li: 2 Evet 3 Hay r ya murlu: 3 Evet 2 Hay r bulutlu: 4 Evet 0

ID3 Algoritmas

Ad m 3: EVL Niteli i: Evli niteli ine gre bir ay rma gerekle ti inde kazanc n ne olaca n bulmak gerekiyor. Ancak bunun iin nce: EVL bekar: 6 Evet 2 Hay r evli: 3 Evet 3 Hay r

G(S,EVL ) = 0.940 -[(8/14)[-(6/8)log2(6/8)-(2/8)log2(2/8)]] -[(6/14)[-(3/6)log2(3/6)-(3/6)log2(3/6)]] = 0.048

ID3 Algoritmas

Ad m 4: GEL R Niteli i: Gelir niteli ine gre bir ay rma gerekle ti inde kazanc n ne olaca n bulmak gerekiyor. Ancak bunun iin nce: GEL R yksek: 3 Evet 4 Hay r normal: 6 Evet 1 Hay r

G(S,GEL R) = 0.940 -[(7/14)[-(3/7)log2(3/7)-(4/7)log2(4/7)]] -[(7/14)[-(6/7)log2(6/7)-(1/7)log2(1/7)]] = 0.151

ID3 Algoritmas
G(S,VASITA) =0.027 G(S,EVL ) = 0.048 G(S,GEL R) = 0.15 G(S,HAVA) = 0.246

Bu durumda HAVA niteli i ile devam edilecektir. Hava, a ac n kk olarak belirlenmi tir.
Nitelik HAVA VASITA GEL R EVL Kazan 0.246 0.029 0.151 0.048

ID3 Algoritmas

HAVA

2 Evet Gne li 3Hay r

Bulutlu 4 Evet 0Hay r

Ya murlu

3 Evet 2Hay r

? S gne li = [2 Evet, 3 Hay r] E(Gne li) = -(2/5)log2(2/5)-(3/5)log2(3/5) = 0.97 Gain(S gne li,gelir) = ? Gain(S gne li,vas ta) = ? Gain(S gne li,evli) = ?

ID3 Algoritmas
Gain(S gne li,gelir) = 0.97 - (2/5)[-(2/2)log2(2/2)-(0/2)log2(0/2)] - (3/5)[-(0/3)log2(0/3)-(3/3)log2(3/3)] = 0.97

Gain(S gne li,vas ta) = 0.97 - (3/5)[-(1/3)log2(1/3)-(2/3)log2(2/3)] - (2/5)[-(1/2)log2(1/2)-(1/2)log2(1/2)] = 0.019

Gain(S gne li,evli) = 0.57

ID3 Algoritmas
HAVA

2 Evet Gne li 3Hay r

Bulutlu 4 Evet 0Hay r

3 Evet Ya murlu 2Hay r

GEL R 0 Evet 3Hay r Yksek Normal 2 Evet 0Hay r Evet

? Evet

Hay r

ID3 Algoritmas

Ayn i lem: Gain(S ya Gain(S ya Gain(S ya


murlu,vas ta)

=? murlu,gelir) = ? murlu,evli) = ?

di er dallar iin de tekrar yap l r.

ID3 Algoritmas
HAVA

2 Evet Gne li 3Hay r

Bulutlu 4 Evet 0Hay r

Ya murlu

3 Evet 2Hay r

GEL R

Evet

EVL

0 Evet Yksek 3Hay r

Normal 2 Evet 0Hay r Evet

0 Evet 2Hay r

Evli

Bekar 3 Evet 0Hay r Evet

Hay r

Hay r

Karar A ac kullanarak s n fland rma


Avantajlar : y Kk a alar yorumlamak kolayd r y Anla l r kurallar olu turulabilir y Srekli ve ayr k nitelik de erleri iin kullan labilir Dezavantajlar : y Srekli nitelik de erlerini tahmin etmekte ok ba ar l de ildir y S n f say s fazla ve renme kmesi rnekleri say s az oldu unda model olu turma ok ba ar l de ildir y Hem a a olu turma karma kl hem de a a budama karma kl fazlad r

C 4.5 Algoritmas
y Quinlan n ID3 algoritmas yine ayn ki i taraf ndan geni letilerek C 4.5 ad n

alm t r. y ID3 algoritmas nda bir zellik say sal de erlere sahip ise sonu al namamaktad r. Bu yzden C 4.5 algoritmas geli tirilmi tir. y Say sal de erlerle al l rken bir e ik de eri belirlenir. Bu e ik de eri bulunurken zelli in de erleri s ralan r ve [vi, vi+1] aral n n orta noktas al n r ve bu de er t e ik de eri olarak belirlenir. E ik De er:

Vi  Vi 1 ti ! 2

Nitelik de erleri t e ik de eri ile kar la t r l r. zellik de eri bu t e ik

de erinden byk veya kk e it olmak zere ikiye ayr l r. Bu sayede iki ayr say sal olmayan de ere dn trlr. Say sal niteliklerin olu turdu u sorun zlm olur.

C 4.5 Algoritmas
N TEL K 1 a a a a a b b b b c c c c c N TEL K 2 70 90 85 95 70 90 78 65 75 80 70 80 70 96 N TEL K 3 do ru do ru yanl yanl yanl do ru yanl do ru yanl do ru do ru yanl yanl yanl N TEL K 4 s n f1 s n f2 s n f2 s n f2 s n f1 s n f1 s n f1 s n f1 s n f1 s n f2 s n f2 s n f1 s n f1 s n f1

C 4.5 Algoritmas

14 e itim seti iin; Nitelik 2: {65, 70, 75, 80, 85, 90, 95, 96} t = (80+85)/2 = 83 N TEL K 2 <= 83 N TEL K 2 > 83

C 4.5 Algoritmas
N TEL K 1 a a a a a b b b b c c c c c N TEL K 2 E it veya kk Byk Byk Byk E it veya kk Byk E it veya kk E it veya kk E it veya kk E it veya kk E it veya kk E it veya kk E it veya kk Byk N TEL K 3 do ru do ru yanl yanl yanl do ru yanl do ru yanl do ru do ru yanl yanl yanl N TEL K 4 s n f1 s n f2 s n f2 s n f2 s n f1 s n f1 s n f1 s n f1 s n f1 s n f2 s n f2 s n f1 s n f1 s n f1

C 4.5 Algoritmas
S n f2 say s =5, S n f1 say s =9 Entropy ise: H(S n f)=-(5/14)[(log2(5/14)+9/14(log2(9/14))] = 0,940 KkE it say s : 7 S n f1 KykE it say s : 2 S n f2 H(Nitelik2 <=83) = -(7/9)[(log2(7/9)+2/9(log2(2/9))] = 0,764 Byk say s : 2 S n f1 Byk say s : 3 S n f2 H(Nitelik2 > 83) = -(2/5)[(log2(2/5)+3/5(log2(3/5))] = 0,970 H(N TEL K2, SINIF) = 9/14*0,764+5/14*0,970 = 0,837 KAZANIM= 0,940 0,837 = 0,103

C 4.5 Algoritmas Kay p de erlerin yarataca sorunlar nlemek iin: Kay p veriye ili kin tm de erler kar l r. Kay p verilerle al abilecek yeni bir algoritma kullan l r. Kay p verilere sahip rneklerde kazan ltn hesaplamak iin bir dzeltme faktrnden yararlan r.
F! Degeri Bilinen Nitelige Sahip rneklerin Sayisi Sayisi

Tm

rneklerin

Kazan ( X ) ! F ( H (T )  H ( X , T ))

Karar A alar n n Budanmas


Bir karar a ac nda bir alt a ac atarak, yerine yaprak yerle tirmek sz konusu olabilir. n Budama (Pre-Pruning): n budama i lemi asl nda a a yarat l rken devreye girer. Bu a amada a a olu turulurken bir noktada a ac durdurarak grevini yerine getirir. Sonradan Budama (Post Pruning): Post pruning a a olu turulduktan sonra devreye giren bir yntemdir. Budanmam T a ac n basitle tirerek T a ac na evirir. Alt a alar silme ve yaprak olu turma Alt a alar ykseltme Dal kesme

You might also like