Professional Documents
Culture Documents
Karar Agaclari
Karar Agaclari
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
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
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
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
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
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
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
ID3 Algoritmas
HAVA
? Evet
Hay r
ID3 Algoritmas
=? murlu,gelir) = ? murlu,evli) = ?
ID3 Algoritmas
HAVA
Ya murlu
3 Evet 2Hay r
GEL R
Evet
EVL
0 Evet 2Hay r
Evli
Hay r
Hay 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
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 ))