Professional Documents
Culture Documents
WM L4SupervisedLearning
WM L4SupervisedLearning
WM L4SupervisedLearning
(Web Mining)
Bu dersin sunumları, “Web Data Mining: Exploring Hyperlinks, Contents, and Usage Data, Bing Liu,
Springer, 2011.” kitabı kullanılarak hazırlanmıştır.
Konular
Denetimli Öğrenmenin Temelleri
Karar Ağaçları
Entropi
ID3 Algoritması
C4.5 Algoritması
Twoing Algoritması
Gini Algoritması
1
Denetimli Öğrenmenin Temelleri
Denetimli (gözetimli) öğrenme, makine öğrenmesinde
sınıflandırma veya tümevarımlı (inductive) öğrenme şeklinde
ifade edilir.
Denetimli öğrenmede hedef değerler (targets) ile giriş değerleri
(inputs) birlikte eğitim kümesi (training set) olarak sağlanır.
Öğrenme işleminde bir kayıt kümesi kullanılır ve özellikler kümesi
olarak gösterilir.
A = {A1, A2, …, A|A|}
Burada, |A| kümedeki eleman sayısını gösterir.
2
Denetimli Öğrenmenin Temelleri
Örnek
Bir kredi uygulamasına yönelik veri kümesi aşağıda verilmiştir.
3
Denetimli Öğrenmenin Temelleri
Geliştirilen modelin doğruluk değeri (accuracy), test verisinde
doğru sınıflandırma sayısıyla belirlenir.
Konular
Denetimli Öğrenmenin Temelleri
Karar Ağaçları
Entropi
ID3 Algoritması
C4.5 Algoritması
Twoing Algoritması
Gini Algoritması
4
Karar Ağaçları
Sınıflandırma problemleri için yaygın kullanılan yöntemdir.
Sınıflandırma doğruluğu diğer öğrenme metotlarına göre çok
etkindir.
Öğrenmiş sınıflandırma modeli ağaç şeklinde gösterilir ve karar
ağacı (decision tree) olarak adlandırılır.
ID3 ve C4.5, entropiye dayalı sınıflandırma algoritmalarıdır.
Twoing ve Gini, CART (Classification And Regression Trees)
sınıflandırma ve regresyon ağaçlarına dayalı sınıflandırma
algoritmalarıdır.
CART algoritmalarında her düğümde bir kritere göre ikili bölünme
yapılır.
Konular
Denetimli Öğrenmenin Temelleri
Karar Ağaçları
Entropi
ID3 Algoritması
C4.5 Algoritması
Twoing Algoritması
Gini Algoritması
10
5
Entropi
Entropi, rastgele değere sahip bir değişken veya bir sistem için
belirsizlik ölçütüdür.
Enformasyon, rastsal bir olayın gerçekleşmesi halinde ortaya çıkan
bilgi ölçütüdür.
Bir süreç için entropi, tüm örnekler (durumlar) tarafından içerilen
enformasyonun değeridir.
Eşit olasıklı durumlara sahip sistemler yüksek belirsizliğe
sahiptirler.
Shannon, bir sistemdeki durum değişikliğinde, entropideki
değişimin enformasyon boyutunu tanımladığını öne sürmüştür.
Buna göre bir sistemdeki belirsizlik arttıkça, bir durum
gerçekleştiğinde elde edilecek enformasyon boyutu da artacaktır.
11
Entropi
Shannon bilgiyi bitlerle ifade etttiği için, logaritmayı 2 tabanında
kullanmıştır ve enformasyon formülünü aşağıdaki gibi vermiştir.
12
6
Entropi
Örnek
Bir paranın havaya atılması olayı rastsal X sürecini göstersin. Yazı
ve tura gelme olasılıkları eşit olduğundan elde edilecek
enformasyon,
1 1
I ( X ) log log log 2 1
P( X ) 0,5
olur. Bu olayın sonucunda 1 bitlik bilgi kazanılmıştır.
Entropi değeri ise 1 olarak bulunur.
13
Entropi
Örnek
Aşağıdaki 8 elemanlı S kümesi verilsin.
S = {evet, hayır, evet, hayır, hayır, hayır, hayır, hayır}
“evet” ve “hayır” için olasılık,
2 6
p (evet) 0,25 p (hayir) 0,75
8 8
Entropi değeri,
1 1
H ( S ) p (evet) log 2 p (hayir) log 2
p (evet) p (hayir)
1 1
0,25. log 2 0,75. log 2
0,25 0,75
0,81 14
7
Konular
Denetimli Öğrenmenin Temelleri
Karar Ağaçları
Entropi
ID3 Algoritması
C4.5 Algoritması
Twoing Algoritması
Gini Algoritması
15
ID3 Algoritması
ID3 (Iterative Dichotomiser 3) algoritması sadece kategorik
verilerle çalışmaktadır.
Karar ağaçları çok boyutlu veriyi belirlenmiş bir niteliğe göre
parçalara böler.
Her adımda verinin hangi özelliğine göre ne tür işlem yapılacağına
karar verilir.
Oluşturulabilecek tüm ağaçların kombinasyonu çok fazladır.
Karar ağaçlarının en az düğüm ve yaprak ile oluşturulması için farklı
algoritmalar kullanılarak bölme işlemi yapılır.
16
8
ID3 Algoritması
Karar ağacında entropi
Bir eğitim kümesindeki sınıf niteliğinin alacağı değerler kümesi T,
her bir sınıf değeri Ci olsun.
T sınıf değerini içeren küme için Pt sınıfların olasılık dağılımı
|C | |C | |C |
Pt 1 , 2 , ..., k
|T | |T | |T |
şeklinde ifade edilir.
T sınıf kümesi için ortalama entropi değeri ise
n
H (T ) pi log 2 ( pi )
i 1
ID3 Algoritması
Karar ağaçlarında bölümlemeye hangi düğümden başlanacağı çok
önemlidir.
Uygun düğümden başlanmazsa ağacın içerisindeki düğümlerin ve
yaprakların sayısı çok fazla olacaktır.
Bir risk kümesi aşağıdaki gibi tanımlansın. C1=“var”, C2=“yok”
RISK = {var, var, var, yok, var, yok, yok, var, var, yok}
|C1| = 6 |C2| = 4 p1 = 6/10 = 0,6 p2 = 4/10 = 0,4
6 4
PRISK ,
10 10
n
6 6 4 4
H ( RISK ) pi log 2 ( pi ) log 2 log 2 0,97
i 1 10 10 10 10
18
9
ID3 Algoritması
Dallanma için niteliklerin seçimi
Öncelikle sınıf niteliğinin entropisi hesaplanır.
n
H (T ) pi log 2 ( pi )
i 1
ID3 Algoritması
Örnek
Aşağıdaki tablo için karar ağacı oluşturulsun.
n
5 5 5 5
H (T ) H ( RISK ) pi log 2 ( pi ) log 2 log 2 1
i 1 10 10 10 10
20
10
ID3 Algoritması
Örnek – devam
3 3 0 0
H ( BORÇYÜKSEK ) log 2 log 2 0
3 3 3 3
5 5 2 2
H ( BORÇDUSUK ) log 2 log 2 0,863
7 7 7 7
3 7
H ( BORÇ, RISK ) H ( BORÇYÜKSEK ) H ( BORÇDUSUK )
10 10
3 7
(0) (0,863) 0,64
10 10
Kazanç ( BORÇ , RISK ) 1 0,64 0,36
21
ID3 Algoritması
Örnek – devam
2 2 3 3
H (GELIRYÜKSEK ) log 2 log 2 0,971
5 5 5 5
3 3 2 2
H (GELIRDUSUK ) log 2 log 2 0,971
5 5 5 5
5 5
H (GELIR, RISK ) H (GELIRYÜKSEK ) H (GELIRDUSUK )
10 10
5 5
(0,971) (0,971) 0,971
10 10
Kazanç (GELIR , RISK ) 1 0,971 0,029
22
11
ID3 Algoritması
Örnek – devam
3 3 2 2
H ( STATU ISVEREN ) log 2 log 2 0,971
5 5 5 5
3 3 2 2
H ( STATU DUSUK ) log 2 log 2 0,971
5 5 5 5
5 5
H ( STATU , RISK ) H ( STATU YÜKSEK ) H ( STATU DUSUK )
10 10
5 5
(0,971) (0,971) 0,971
10 10
Kazanç ( STATU , RISK ) 1 0,971 0,029
ID3 Algoritması
Örnek – devam
24
12
ID3 Algoritması
Örnek – devam
25
Konular
Denetimli Öğrenmenin Temelleri
Karar Ağaçları
Entropi
ID3 Algoritması
C4.5 Algoritması
Twoing Algoritması
Gini Algoritması
26
13
C4.5 Algoritması
C4.5 ile sayısal değerlere sahip nitelikler için karar ağacı
oluşturmak için Quinlan tarafından geliştirilmiştir.
ID3 algoritmasından tek farkı nümerik değerlerin kategorik
değerler haline dönüştürülmesidir.
En büyük bilgi kazancını sağlayacak biçimde bir eşik değer
belirlenir.
Eşik değeri belirlemek için tüm değerler sıralanır ve ikiye bölünür.
Eşik değer için [vi, vi+1] aralığının orta noktası alınabilir.
vi vi 1
ti
2
Nitelikteki değerler eşik değere göre iki kategoriye ayrılmış olur.
27
C4.5 Algoritması
Örnek
Nitelik 2 = {65, 70, 75, 80, 85, 90, 95, 96} için eşik değer
(80+85)/2 = 83 alınmıştır.
28
14
C4.5 Algoritması
Örnek – devam
29
C4.5 Algoritması
Örnek – devam
5 5 9 9
H ( SINIF ) log 2 log 2 0,940
14 14 14 14
2 2 3 3
H ( NITELIK1a ) log 2 log 2 0,971
5 5 5 5
4 4 0 0
H ( NITELIK1b ) log 2 log 2 0
4 4 4 4
3 3 2 2
H ( NITELIK1c ) log 2 log 2 0,971
5 5 5 5
5 4 5
H ( NITELIK1, SINIF ) H ( NITELIK1a ) H ( NITELIK1b ) H ( NITELIK1c )
14 14 14
5 4 5
0,971 0 0,971 0,694
14 14 14
Kazanç ( NITELIK 1, SINIF ) 0,940 0,694 0,246 30
15
C4.5 Algoritması
Örnek – devam
7 7 2 2
H ( NITELIK 2ek ) log 2 log 2 0,765
9 9 9 9
2 2 3 3
H ( NITELIK 2b ) log 2 log 2 0,971
5 5 5 5
9 5
H ( NITELIK 2, SINIF ) H ( NITELIK 2ek ) H ( NITELIK1b )
14 14
9 5
0,765 0,971 0,836
14 14
C4.5 Algoritması
Örnek – devam
3 3 3 3
H ( NITELIK 3d ) log 2 log 2 1
6 6 6 6
6 6 2 2
H ( NITELIK 3 y ) log 2 log 2 0,811
8 8 8 8
6 8
H ( NITELIK 3, SINIF ) H ( NITELIK 3d ) H ( NITELIK 3 y )
14 14
6 8
1 0,811 0,892
14 14
Kazanç ( NITELIK 3, SINIF ) 0,940 0,892 0,048
Kazanç ( NITELIK 3, SINIF ) Kazanç ( NITELIK 2, SINIF ) Kazanç ( NITELIK 1, SINIF ) 32
16
C4.5 Algoritması
Örnek – devam
33
C4.5 Algoritması
Örnek – devam
34
17
Konular
Denetimli Öğrenmenin Temelleri
Karar Ağaçları
Entropi
ID3 Algoritması
C4.5 Algoritması
Twoing Algoritması
Gini Algoritması
35
Twoing Algoritması
Twoing algoritmasında eğitim kümesi her adımda iki parçaya
ayrılarak bölümleme yapılır.
Aday bölünmelerin sağ ve sol kısımlarının her birisi için tekrar oranı
alınır.
Aday bölünmelerin sağ ve sol kısımlarındaki her bir nitelik değeri
için sınıf değerlerinin her birisinin olma olasılığı hesaplanır.
Her bölünme için uygunluk değeri en yüksek olan alınır.
18
Twoing Algoritması
Örnek
37
Twoing Algoritması
Örnek – devam
Aday bölünmeler aşağıdaki gibidir.
38
19
Twoing Algoritması
Örnek – devam
MAAŞ = {NORMAL} için
39
Twoing Algoritması
Örnek – devam
MAAŞ = {DÜŞÜK, YÜKSEK}
40
20
Twoing Algoritması
Örnek – devam
Uygunluk değeri (1. aday bölünme için)
Bsol Bsag n Tsinif j Tsinif j
(1 | d ) 2
T T j 1
abs Bsol
B
sag
2(0,09)(0,91)[| 1 0,6 | | 0 0,4 |] 0,13
41
Twoing Algoritması
Örnek – devam
Aynı işlemler ALT DÜĞÜM için tekrarlanır.
42
21
Twoing Algoritması
Örnek – devam
Sonuç karar ağacı.
43
Twoing Algoritması
Örnek – devam
Karar ağacından elde edilen kurallar
1. EĞER (GÖREV = YÖNETİCİ) İSE (MEMNUN = EVET)
2. EĞER (GÖREV = UZMAN) VE (MAAŞ = NORMAL) İSE (MEMNUN =
EVET)
3. EĞER (GÖREV = UZMAN) VE (MAAŞ = DÜŞÜK VEYA MAAŞ = YÜKSEK)
VE (DENEYİM=YOK) İSE (MEMNUN = EVET)
4. EĞER (GÖREV = UZMAN) VE (MAAŞ = DÜŞÜK VEYA MAAŞ = YÜKSEK)
VE (DENEYİM = ORTA VEYA DENEYİM = İYİ) İSE (MEMNUN = HAYIR)
44
22
Konular
Denetimli Öğrenmenin Temelleri
Karar Ağaçları
Entropi
ID3 Algoritması
C4.5 Algoritması
Twoing Algoritması
Gini Algoritması
45
Gini Algoritması
Gini algoritmasında nitelik değerleri iki parçaya ayrılarak
bölümleme yapılır.
Her bölünme için Ginisol ve Ginisağ değerleri hesaplanır.
2
Tsinif i
2
k Tsinif i k
Ginisol 1
Ginisag 1
i 1 B B
sol i 1
sag
1
Gini j
n
Bsol Ginisol Bsag Ginisag
Her bölümlemeden sonra Gini değeri en küçük olan seçilir. 46
23
Gini Algoritması
Örnek
47
Gini Algoritması
Örnek
EĞİTİM için
1 2 2 2
Ginisol 1 0,444
3 3
4 2 1 2
Ginisag 1 0,320
5 5
48
24
Gini Algoritması
Örnek
YAŞ için
0 2 2 2
Ginisol 1 0
2 2
5 2 1 2
Ginisag 1 0,278
6 6
49
Gini Algoritması
Örnek
CİNSİYET için
1 2 2 2
Ginisol 1 0,444
3 3
4 2 1 2
Ginisag 1 0,320
5 5
50
25
Gini Algoritması
Örnek
Gini değerleri
3(0,444) 5(0,320)
GiniEGITIM 0,367
8
2(0) 6(0,278)
GiniYAS 0,209
8
3(0,444) 5(0,320)
GiniCINSIYET 0,367
8
İlk bölünme YAŞ niteliğine göre yapılacaktır.
51
Gini Algoritması
Örnek
52
26
Gini Algoritması
Örnek
53
Gini Algoritması
Örnek – devam
Karar ağacından elde edilen kurallar
1. EĞER (YAŞ = GENÇ) İSE (SONUÇ = HAYIR)
2. EĞER (YAŞ = ORTA VEYA YAŞ = YAŞLI) VE (CİNSİYET = ERKEK) İSE
(SONUÇ = EVET)
3. EĞER (YAŞ = ORTA VEYA YAŞ = YAŞLI) VE (CİNSİYET = KADIN) VE
(YAŞ = YAŞLI) İSE (SONUÇ = EVET)
4. EĞER (YAŞ = ORTA VEYA YAŞ = YAŞLI) VE (CİNSİYET = KADIN) VE
(YAŞ = ORTA) İSE (SONUÇ = HAYIR)
54
27
Ödev
1- Karar ağaçları ile doküman sınıflandırma hakkında bir makale ödevi
hazırlayınız.
55
28