Ce diaporama a bien été signalé.
Le téléchargement de votre SlideShare est en cours. ×
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
1
1
Danışmanlı Öğrenme
Supervised Learning
Karar Ağaçları
Decision Tree
Danışmanlı Öğrenme
Supervised Learning
Karar Ağaçl...
2
Danışmanlı Öğrenme
Supervised Learning
3
Danışmanlı Öğrenme
Supervised Learning
4
Örnek:
Bir kredi uygulamasına yönelik ...
3
Danışmanlı Öğrenme
Supervised Learning
5
Örnek veri kümesi
Table 3.1 • The Credit Card Promotion Database
Income Life In...
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Prochain SlideShare
ana.pdf
ana.pdf
Chargement dans…3
×

Consultez-les par la suite

1 sur 33 Publicité

Plus De Contenu Connexe

Publicité

ML_3.pdf

  1. 1. 1 1 Danışmanlı Öğrenme Supervised Learning Karar Ağaçları Decision Tree Danışmanlı Öğrenme Supervised Learning Karar Ağaçları Decision Tree Machine Learning Selçuk Üniversitesi Fen Bilimleri Enstitüsü Bilgisayar Mühendisliği A.B.D. Dr.Erkan ÜLKER Sunularda yararlanılan kaynaklar: Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü M. Ali Akçayol ders sunusu Dr.Umut Orhan ders sunuları Danışmanlı Öğrenme Supervised Learning 2 Danışmanlı (Denetimli, gözetimli, Eğiticili) öğ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. kümedeki eleman sayısını gösterir
  2. 2. 2 Danışmanlı Öğrenme Supervised Learning 3 Danışmanlı Öğrenme Supervised Learning 4 Örnek: Bir kredi uygulamasına yönelik veri kümesi
  3. 3. 3 Danışmanlı Öğrenme Supervised Learning 5 Örnek veri kümesi Table 3.1 • The Credit Card Promotion Database Income Life Insurance Credit Card Range Promotion Insurance Sex Age 40–50K No No Male 45 30–40K Yes No Female 40 40–50K No No Male 42 30–40K Yes Yes Male 43 50–60K Yes No Female 38 20–30K No No Female 55 30–40K Yes Yes Male 35 20–30K No No Male 27 30–40K No No Male 43 30–40K Yes No Female 41 40–50K Yes No Female 43 20–30K Yes No Male 29 50–60K Yes No Female 39 40–50K No No Male 55 20–30K Yes Yes Female 19 Örnekler (intances, samples) Kaynak:Dr.Songül Albayrak Ders sunusu Danışmanlı Öğrenme Supervised Learning 6 Örnek veri kümesi Table 3.1 • The Credit Card Promotion Database Income Life Insurance Credit Card Range Promotion Insurance Sex Age 40–50K No No Male 45 30–40K Yes No Female 40 40–50K No No Male 42 30–40K Yes Yes Male 43 50–60K Yes No Female 38 20–30K No No Female 55 30–40K Yes Yes Male 35 20–30K No No Male 27 30–40K No No Male 43 30–40K Yes No Female 41 40–50K Yes No Female 43 20–30K Yes No Male 29 50–60K Yes No Female 39 40–50K No No Male 55 20 30K Yes Yes Female 19 Özellikler, nitelikler (features) Kaynak:Dr.Songül Albayrak Ders sunusu
  4. 4. 4 Danışmanlı Öğrenme Supervised Learning 7  Bir veri kümesi ile öğrenen bir model geliştirip gelecekteki yeni müşterilere ait verilerde kullanılabilir.  Bu şekilde sınıf etiketlerinin de verildiği öğrenmeye denetimli (supervised) öğrenme denilir.  Öğrenme sürecinde kullanılan veri kümesine eğitim verisi (training data), öğrenmeden sonraki değerlendirme sürecinde kullanılan veri kümesine ise test verisi denilmektedir.  Eğitim verisinin de test verisinin de tüm sistemi temsil etme kapasitesine sahip olması gerekir.  Test verisi eğitim sürecinde görülmemiş veri (unseen data) olarak oluşturulmalıdır.  Geliştirilen modelin doğruluk değeri (accuracy), test verisinde doğru sınıflandırma sayısıyla belirlenir. Danışmanlı Öğrenme Supervised Learning 8 Apply Model Learn Model Tid Attrib1 Attrib2 Attrib3 Class 1 Yes Large 125K No 2 No Medium 100K No 3 No Small 70K No 4 Yes Medium 120K No 5 No Large 95K Yes 6 No Medium 60K No 7 Yes Large 220K No 8 No Small 85K Yes 9 No Medium 75K No 10 No Small 90K Yes 10 Tid Attrib1 Attrib2 Attrib3 Class 11 No Small 55K ? 12 Yes Medium 80K ? 13 Yes Large 110K ? 14 No Small 95K ? 15 No Large 67K ? 10 Sınıflamanın temel kuralları:  Öğrenme eğiticilidir  Veri setinde bulunan her örneğin bir dizi niteliği vardır ve bu niteliklerden biri de sınıf bilgisidir.  Hangi sınıfa ait olduğu bilinen nesneler (öğrenme kümesi- training set) ile bir model oluşturulur  Oluşturulan model öğrenme kümesinde yer almayan nesneler (deneme kümesi- test set) ile denenerek başarısı ölçülür
  5. 5. 5 9  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  Temel fikir, giriş verisinin bir kümeleme algoritması yardımıyla tekrar tekrar gruplara bölünmesine dayanır.  Grubun tüm elemanları aynı sınıf etiketine sahip olana kadar kümeleme işlemi derinlemesine devam eder. Danışmanlı Öğrenme (Supervised Learning) Karar Ağaçları Decision Tree 10 Karar Ağacı Nedir? Hava Nem Evet Rüzgar Güneşli Bulutlu Yağmurlu Evet Evet Hayır Hayır Normal Yüksek Kuvvetli Hafif İfadeleri ayırmayı öğrenme yeteneği olan ve gürültülü veriyi sağlamlaştıran soyut değerli fonksiyonları tahmin eden bir metottur. Inductive Bias’ı genis ağaçlar üzerinde küçük ağaçları tercih etmesidir Attribute değerindeki sınırlamaların birleşiminin ayrılması şeklinde sunulur
  6. 6. 6 11 Karar Ağacı Örnek Attribute değerindeki sınırlamaların birleşiminin ayrılması şeklinde sunulur Tid Refund Marital Status Taxable Income Cheat 1 Yes Single 125K No 2 No Married 100K No 3 No Single 70K No 4 Yes Married 120K No 5 No Divorced 95K Yes 6 No Married 60K No 7 Yes Divorced 220K No 8 No Single 85K Yes 9 No Married 75K No 10 No Single 90K Yes 10 Refund MarSt TaxInc YES NO NO NO Yes No Married Single, Divorced < 80K > 80K Splitting Attributes Training Data Model: Decision Tree 12 Karar Ağacı Örnek?Attribute değerindeki sınırlamaların birleşiminin ayrılması şeklinde sunulur Tid Refund Marital Status Taxable Income Cheat 1 Yes Single 125K No 2 No Married 100K No 3 No Single 70K No 4 Yes Married 120K No 5 No Divorced 95K Yes 6 No Married 60K No 7 Yes Divorced 220K No 8 No Single 85K Yes 9 No Married 75K No 10 No Single 90K Yes 10 MarSt Refund TaxInc YES NO NO NO Yes No Married Single, Divorced < 80K > 80K There could be more than one tree that fits the same data!
  7. 7. 7 13 Karar Ağacı Öğrenmesi için uygun problemler Decision tree learning genellikle aşağıdaki karakteristiklerdeki problemler için uygundur. 1. Örnekler; özniteliklerin sabit isimleri (örnek Hava) ve onların değerleri ile açıklanır (örneğin Güneşli). (Instance are represented by attribute value pairs) 2. Hedef fonksiyon, Ayrık çıkış değerleridir.(The target function has discrete output values). 3. Yukarıda da işaret edildiği gibi Karar Ağacı doğal olarak ayrık ifadeleri sunar (Disjunctive descriptions may be required). 4. Karar Ağacı Öğrenme metotları hatalara karşı güçlüdür (The training data may contain errors). 5. Karar Ağacı metotları bilinmeyen değerli eğitim örneklerinde bile kullanılabilir (The training data may contain missing attribute values). 14 Karar Ağacı Bir Algoritma • Temel Algoritma (miyobik bir algoritma) – Karar ağacı yukarıdan aşağıya, yinelemeli olarak böl ve kazan yöntemine göre inşa edilirler. – Başlangıçta bütün noktalar ağacın kökünde toplanmaktadır – Kategorik veriler kullanılır, sürekli değişkenlerin önceden kesikli hale getirilmesi gerekir. – Örnekler, seçilen değişkenlere (karakteristik) göre yinelemeli olarak bölümlenir – Değişkenlerin seçimi sezgisel veya belli bir istatistiksel ölçüye (mesela bilgi kazanımı) dayanır • Bölümlemenin durması için şartlar – Bir düğümde bulunan bütün örnekler aynı sınıfa aittir – Bölümlenin yapılacağı değişken kalmamıştır. Yani o düğüme (yaprak) gelene kadar bütün değişkenler kullanılmıştır. – Başka örnek kalmamıştır. Kaynak: Dr. Ayhan Demiriz ders sunumu
  8. 8. 8 15 Karar Ağacı Bir Algoritma - Sınıflandırma Apply Model Learn Model Tid Attrib1 Attrib2 Attrib3 Class 1 Yes Large 125K No 2 No Medium 100K No 3 No Small 70K No 4 Yes Medium 120K No 5 No Large 95K Yes 6 No Medium 60K No 7 Yes Large 220K No 8 No Small 85K Yes 9 No Medium 75K No 10 No Small 90K Yes 10 Tid Attrib1 Attrib2 Attrib3 Class 11 No Small 55K ? 12 Yes Medium 80K ? 13 Yes Large 110K ? 14 No Small 95K ? 15 No Large 67K ? 10 Decision Tree 16 Karar Ağacı Bir Algoritma - Sınıflandırma Refund MarSt TaxInc YES NO NO NO Yes No Married Single, Divorced < 80K > 80K Refund Marital Status Taxable Income Cheat No Married 80K ? 1 0 Test Data Start from the root of tree.
  9. 9. 9 17 Karar Ağacı Bir Algoritma - Sınıflandırma Refund MarSt TaxInc YES NO NO NO Yes No Married Single, Divorced < 80K > 80K Refund Marital Status Taxable Income Cheat No Married 80K ? 1 0 Test Data 18 Karar Ağacı Bir Algoritma - Sınıflandırma Refund MarSt TaxInc YES NO NO NO Yes No Married Single, Divorced < 80K > 80K Refund Marital Status Taxable Income Cheat No Married 80K ? 1 0 Test Data
  10. 10. 10 19 Karar Ağacı Bir Algoritma - Sınıflandırma Refund MarSt TaxInc YES NO NO NO Yes No Married Single, Divorced < 80K > 80K Refund Marital Status Taxable Income Cheat No Married 80K ? 1 0 Test Data 20 Karar Ağacı Bir Algoritma - Sınıflandırma Refund MarSt TaxInc YES NO NO NO Yes No Married Single, Divorced < 80K > 80K Refund Marital Status Taxable Income Cheat No Married 80K ? 1 0 Test Data
  11. 11. 11 21 Karar Ağacı Bir Algoritma - Sınıflandırma Refund MarSt TaxInc YES NO NO NO Yes No Married Single, Divorced < 80K > 80K Refund Marital Status Taxable Income Cheat No Married 80K ? 1 0 Test Data Assign Cheat to “No” 22 Karar Ağacından Kural çıkarımı • Bilgiyi Eğer-O Zaman kuralları ile temsil et • Kökten yapraklara giden heryol için bir kural üretilir • Bir yol üzerindeki her bir değişken-değer çifti bir bağlaç oluşturur • Yapraklar sınıf tahminini içerir • Kuralların analşılması çok kolaydır • Örnek Eğer yaş = “<=30” ve öğrenci = “hayır” O Zaman Bilgisayar Alır? = “hayır” Eğer yaş = “<=30” ve öğrenci = “evet” O Zaman Bilgisayar Alır? = “evet” Eğer yaş = “31…40” O Zaman Bilgisayar Alır? = “evet” Eğer yaş = “>40” ve kredi durumu = “mükemmel” O Zaman Bilgisayar Alır? = “evet” Eğer yaş = “<=30” ve kredi durumu = “vasat” O Zaman Bilgisayar Alır? = “hayır” Kaynak: Dr. Ayhan Demiriz ders sunumu
  12. 12. 12 23 Karar Ağacı Tipleri  Entropiye dayalı sınıflandırma ağaçları (ID3, C4.5)  Sınıflandırma ve Regresyon ağaçlarına (CART- Classification And Regression Trees) dayalı olmak üzere iki kategoride birçok algoritma önerilmiştir (Towing ve gini). CART algoritmalarında her düğümde bir kritere göre ikili bölünme yapılır Önce entropiye dayalı karar ağaçlarını inceleyeceğiz. Bu algoritmaları iyi anlayabilmek için önce entropiyi iyi bilmek gerekmektedir. 24 Entropi, Belirsizlik ve Enformasyon
  13. 13. 13 25 Enformasyon Aslında zıt şeyleri temsil etmelerine rağmen Shannon’a göre maksimum belirsizlik maksimum enformasyon sağladığı için Enformasyon ve Belirsizlik terimleri benzerdir. Enformasyon (self-information) formülü aşağıdaki gibidir. Shannon bilgiyi bitlerle temsil ettiği için logaritmayı iki tabanında kullanmıştır. ) ( log ) ( 1 log ) ( x P x P x I    P (x), x olayının gerçekleşme olasılığını gösterir 26 Entropi Shannon’a göre entropi, iletilen bir mesajın taşıdığı enformasyonun beklenen değeridir. Shannon Entropisi (H) adıyla anılan terim, tüm ai durumlarına ait Pi olasılıklarına bağlı bir değerdir.             n i i i n i i i n i i i P P x P x P x I x P X I E X H 1 2 1 2 1 log ) ( 1 log ) ( ) ( ). ( )) ( ( ) (
  14. 14. 14 27 Entropi Bir paranın havaya atılması olayı, rassal X sürecini temsil etsin. Yazı ve tura gelme olasılıkları eşit olduğu için X sürecinin entropisi aşağıdaki gibidir. Entropisi 1 olan para atma olayı (X) gerçekleştiğinde 1 bitlik bilgi kazanılacaktır. 1 ) 5 . 0 log 5 . 0 5 . 0 log 5 . 0 ( log ) ( 2 2 2 1 2         i i i p p X H 28 Örnek
  15. 15. 15 29 Karar Ağacında Entropi  Karar ağaçları çok boyutlu (özellikli) veriyi belirlenmiş özellik üzerindeki bir şart ile parçalara böler.  Her seferinde verinin hangi özelliği üzerinde hangi şarta göre işlem yapacağına karar vermek çok büyük bir kombinasyonun çözümüyle mümkündür. 5 özellik ve 20 örneğe sahip bir veride 106 dan fazla sayıda farklı karar ağacı oluşturulabilir. Bu sebeple her parçalanmanın metodolojik olması gerekir. 30 Karar Ağacında Entropi Örnek Yukarıda verilen hayvanların çeşitli özelliklerine göre sonraki slidelardaki gibi karar ağaçları hazırlamak mümkündür
  16. 16. 16 31 herhangi bir elemanı ağaçta kodlayan kaçar adım olduğunu listeleyelim: Koala -> 1 (sadece kürklüdür ayrımı yeterli) Timsah -> 2 (hem kürksüz hem de sıcak kanlı olduğunu bilmemiz gerekiyor) Yunus -> 3 ( hem kürksüz hem sıcak kanlı hem de yüzdüğünü bilmemiz gerekiyor) Deve Kuşu -> 3 Albatros -> 3 Kuzgun -> 3 Yukarıdaki değerleri toplarsak, 15 adımda bütün elemanları birer kere ziyaret etmek mümkündür denilebilir. erişim sayılarını yazarsak: Deve Kuşu -> 1 Albatros -> 1 Kuzgun -> 1 Koala -> 2 Timsah -> 3 Yunus -> 3 Aşağıdaki yeni ağaçta her elemana birer kere erişilmesi istendiğinde toplam 11 adım harcanması gerekmektedir Kaynak:www.bilgisayarkavramlari.com 32 Quinlan’e göre; veri, bir özelliğe göre bölündüğünde elde edilen her bir veri kümesinin belirsizliği minimum ve dolayısıyla bilgi kazancı maksimum ise en iyi seçim yapılmış demektir. Buna göre önerdiği ilk algoritma ID3’te tek tek özellik vektörleri incelenir ve en yüksek bilgi kazancına sahip özellik, ağaçta dallanma yapmak için tercih edilir. Karar Ağacında Entropi Entropi, örneklerin keyfi olarak toplanmasının kirliliğini karakterize eder
  17. 17. 17 33 Supervised L.->Decision Tree-> ID3 Algoritması Sadece kategorik veri ile çalışan bir yöntemdir.  Her iterasyonun ilk adımında veri örneklerine ait sınıf bilgilerini taşıyan vektörün entropisi belirlenir.  Daha sonra özellik vektörlerinin sınıfa bağımlı entropileri hesaplanarak ilk adımda hesaplanan entropiden çıkartılır.  Bu şekilde elde edilen değer ilgili özellik vektörüne ait kazanç değeridir.  En büyük kazanca sahip özellik vektörü ağacın o iterasyonda belirlenen dallanmasını gerçekleştirir (Dallanma Düğümü). Iterative Dichotomiser Tree 34 Supervised L.->Decision Tree-> ID3 Algoritması Örnek Yukarıdaki tablo için karar ağacı oluşturulsun  sınıf bilgilerini taşıyan vektörün entropisi  özellik vektörlerinin sınıfa bağımlı entropilerini hesapla  ilk adımda hesaplanan entropiden çıkart. Elde edilen değer kazanç değeridir.  En büyük kazanca sahip özellik vektörü Dallanma Düğümüdür.
  18. 18. 18 35 Supervised L.->Decision Tree-> ID3 Algoritması Örnek Yukarıdaki tablo için karar ağacı oluşturulsun  Sınıf bilgilerini taşıyan vektörün entropisi =1  özellik vektörlerinin sınıfa bağımlı entropilerini hesapla  ilk adımda hesaplanan entropiden çıkart. Elde edilen değer kazanç değeridir. 36 Supervised L.->Decision Tree-> ID3 Algoritması Örnek Yukarıdaki tablo için karar ağacı oluşturulsun  Sınıf bilgilerini taşıyan vektörün entropisi =1  özellik vektörlerinin sınıfa bağımlı entropilerini hesapla  ilk adımda hesaplanan entropiden çıkart. Elde edilen değer kazanç değeridir.
  19. 19. 19 37 Supervised L.->Decision Tree-> ID3 Algoritması Örnek Yukarıdaki tablo için karar ağacı oluşturulsun  Sınıf bilgilerini taşıyan vektörün entropisi =1  özellik vektörlerinin sınıfa bağımlı entropilerini hesapla  ilk adımda hesaplanan entropiden çıkart. Elde edilen değer kazanç değeridir. 38 Supervised L.->Decision Tree-> ID3 Algoritması Örnek  Sınıf bilgilerini taşıyan vektörün entropisi =1  özellik vektörlerinin sınıfa bağımlı entropilerini hesapla, ilk adımda hesaplanan entropiden çıkart. Elde edilen değer kazanç değeridir.  En büyük kazanca sahip özellik vektörü Dallanma Düğümüdür.
  20. 20. 20 39 Supervised L.->Decision Tree-> ID3 Algoritması Örnek 40 V1 V2 S A C E B C F B D E B D F 2 özellik vektörü (V1 ve V2) ile S sınıf vektörüne sahip 4 örnekli veri kümesi verilmiştir. ID3 algoritması ile ilk dallanma hangi özellik üzerinde gerçekleşir ? H(S) - H(V1,S) H(S) - H(V2,S) Supervised L.->Decision Tree-> ID3 Algoritması Örnek - 2
  21. 21. 21 41 V1 V2 S A C E B C F B D E B D F Sınıf Entropisi 1 2 1 log 2 1 2 1 log 2 1 ) ( 2 2           S H V1 Entropisi 0,6887 0,9183 4 3 0 3 2 log 3 2 3 1 log 3 1 4 3 0 4 1 ) ( 4 3 ) ( 4 1 ) 1 ( 2 2               B H A H V H V2 Entropisi 1 2 1 2 1 ) ( 2 1 ) ( 2 1 ) 2 (      D H C H V H V1 seçilir Supervised L.->Decision Tree-> ID3 Algoritması Örnek - 2 42 Supervised L.->Decision Tree-> ID3 Algoritması Örnek – 3 Çalışma örneği Day Outlook Temperature Humidity Wind PlayTennis D1 Sunny Hot High Weak No D2 Sunny Hot High Strong No D3 Overcast Hot High Weak Yes D4 Rain Mild High Weak Yes D5 Rain Cool Normal Weak Yes D6 Rain Cool Normal Strong No D7 Overcast Cool Normal Strong Yes D8 Sunny Mild High Weak No D9 Sunny Cool Normal Weak Yes D10 Rain Mild Normal Weak Yes D11 Sunny Mild Normal Strong Yes D12 Overcast Mild High Strong Yes D13 Overcast Hot Normal Weak Yes D14 Rain Mild High Strong No
  22. 22. 22 43 Supervised L.->Decision Tree-> ID3 Algoritması Örnek – 3 Çalışma örneği Values(Wind)= Weak, Strong ; Wind özniteliği ya Weak ya Strong değeri alabilir S= [9+,5-]; 9 pozitif , 5 negatif örnek var. SWeak <- [6+, 2-]; Wind=Weak için 6 pozitif, 2 negatif örnek var. SStrong <- [3+, 3-]; Wind=Strong için 3 pozitif, 3 negatif örnek var. Gain(S,Wind)= Entropy(S) - ∑v E Values(A)|Sv| / |S| Entropy(Sv) = Entropy(S) – (8/14)Entropy(SWeak)- (6/14)Entropy(SStrong) = 0.940 – (8/14) 0.811 – (6/14) 1.00 = 0.048 44 C4.5 Algoritması Bir eşikleme yöntemini içerir. Temel mantık; nümerik özellik vektöründeki tüm değerler ikili olarak ele alınır, 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. Hangi eşik değeriyle bilgi kazanımı en iyi ise o değer seçilir. Seçilen eşiğe göre özellik vektörü kategorize edilir ve ID3 uygulanır.
  23. 23. 23 45 C4.5 Algoritması C4.5 ağacının ID3 ağacından en büyük farkı normalleştirme (normalization) kullanıyor olmasıdır. Yani ID3 ağacı üzerinde entropi hesabı yapılır (veya bilgi kazanımı (information gain)) ve bu değere göre karar noktaları belirlenir. C4.5 ağacında ise entropi değerleri birer oran olarak tutulur. Ayrıca ağaç üzerinde erişim sıklıklarına göre alt ağaçların (subtree) farklı seviyelere taşınması da mümkündür. C4.5 ağacının diğer bir farkı ise tam bu noktada orataya çıkar ID3 ağacının yaklaşımından farklı olarak C4.5 ağacında budama (prunning) işlemi yapılmaktadır. Kaynak: Sadi Evren Şeker Web sayfası 46 Supervised L.->Decision Tree-> C4.5 Algoritması Örnek
  24. 24. 24 47 Supervised L.->Decision Tree-> C4.5 Algoritması Örnek 48 Supervised L.->Decision Tree-> C4.5 Algoritması Örnek
  25. 25. 25 49 Supervised L.->Decision Tree-> C4.5 Algoritması Örnek 50 Supervised L.->Decision Tree-> C4.5 Algoritması Örnek
  26. 26. 26 51 Supervised L.->Decision Tree-> C4.5 Algoritması Örnek 52 Kayıp Veri Unknown attribute values Eğer veride bazı örneklerin bazı özellikleri kayıpsa izlenecek iki yol vardır:  Kayıp özelliklere sahip örnek veriden tamamen çıkartılır.  Kayıp verilerle çalışabilecek şekilde algoritma düzenlenir. Eğer kayıplı örneklerin sayısı birinci seçenek uygulanamayacak kadar çoksa ikinci seçenek uygulanmalıdır.
  27. 27. 27 53 Kayıp bilgiye sahip özellik vektörü için kazanç hesaplanırken; kayıplı örnekler hariç tutularak bilgi kazancı normal şekilde hesaplanır ve daha sonra F katsayısıyla çarpılır. F, kayıpsız verinin tamamına oranıdır. )) , ( ) ( .( ) ( X V H X H F X IG   Kayıp Veri Unknown attribute values Kayıp bilgiye sahip özellik vektörü içinde en sık tekrarlanan değerin kayıp bilgi yerine yazılması da önerilen yöntemlerdendir 54 Ezber, Aşırı Öğrenme (Overfitting) Tüm makine öğrenmesi yöntemlerinde verinin ana hatlarının modellenmesi esas alındığı için öğrenme modelinde ezberden (overfitting) kaçınılmalıdır. Tüm karar ağaçları önlem alınmazsa ezber yapar. Öğrenme seti kullanılarak tümevarım ile bulunmuş bir karar ağacı aşırı öğrenmiş olabilir – Verideki gürültüden ve sapmalardan ötürü çok fazla dal mevcut olabilir – Görülmeyen veriler için çok zayıf bir tahmin yeteneği olabilir  Aşırı öğrenmeden kaçınmak için iki yol – Önceden budama: Ağaç en büyük şekline ulaşmadan öğrenmenin durdurulması (Prepruning) – Ağaç tam büyüklüğe ulaştıktan sonra budanması (Postpruning) Budama, sınıflandırmaya katkısı olmayan bölümlerin karar ağacından çıkarılması işlemidir. Bu sayede karar ağacı hem sade hem de anlaşılabilir hale gelir Kaynak: Dr. Ayhan Demiriz ders sunumu
  28. 28. 28 55 Ön Budama Prepruning Ön budama işlemi ağaç oluşturulurken yapılır. Bölünen nitelikler, değerleri belli bir eşik de- ğerinin (hata toleransının) üstünde değilse o noktada ağaç bölümleme işlemi durdurulur ve o an elde bulunan kümedeki baskın sınıf eti- keti, yaprak olarak oluşturulur. Deciding not to divide a set of samples any further under some conditions. The stopping criterion is usually based on some statistical test, such as the χ2- test. 56 Sonradan Budama Postpruning Sonradan budama işlemi ağaç oluşturulduktan sonra devreye girer. Alt ağaçları silerek yaprak oluşturma, alt ağaçları yükseltme, dal kesme şeklinde yapılabilir. Removing retrospectively some of the tree structure using selected accuracy criteria.
  29. 29. 29 57 Ağaç Budama Hava Nem Evet 15 Rüzgar Güneşli Bulutlu Yağmurlu Evet 20 Evet 15 Hayır 35 Hayır 25 Normal Yüksek Kuvvetli Hafif Hata toleransı %33 seçilirse “Nem” düğümünün alt dallarındaki “Evet” oranı %30’dur. Bu yüzden “Nem” düğümü budanıp yerine “Hayır” yaprağı konur. 58 Ağaç Budama Hava Evet Rüzgar Güneşli Bulutlu Yağmurlu Evet Hayır Hayır Kuvvetli Hafif
  30. 30. 30 59 Sınıflandırma ve Regresyon Ağaçları (CART) CART karar ağaçlarının temel prensibi herbir düğümde ağacı iki dala ayırmasıdır. En çok bilinen iki algoritması: – Twoing algoritması – Gini algoritması 60 ÖDEVLER Aşağıdaki CART algoritmalarını program şeklinde yazınız ve bir doküman sınıflandırma örneği olarak düşününüz. – Twoing – Gini Twoing ve Gini algoritmalarını birbiriyle karşılaştırıp avantajlarını ve dezavantajlarını içeren bir rapor hazırlayınız
  31. 31. 31 61 Diğer Karar ağacı öğrenme algoritmaları • Rastgele Orman (Random Forest) : Sınıflandırma işlemi sırasında birden fazla karar ağacı kullanılarak sınıflandırma değerinin yükseltilmesi hedeflenir. • Hızlandırılmış Ağaçlar (Boosted Trees): Hem sınıflandırma (classification) hem de ilkelleme (regression) problemleri için kullanılabilen bir algoritmadır. • Döndürme Ağacı (Rotation Forest) : Rastgele ağaca benzer şekilde birden fazla ağaç kullanılmaktadır ancak her ağaç, önce farklı bileşen analizi (Pricipal Component Analysis, PCA) kullanılarak eğitilmektedir. Bu eğitim için veri kümesinin rast gele seçilmiş bir alt kümesi kullanılmaktadır (sarnıçlama yöntemiyle). • Chi-Kare Otomatik İlişki Tarayıcısı (Chi-Square Automatic Interaction Detector, CHAID) : Birden fazla seviyeye bölme işlemine izin veren bir sınıflandırma algoritmasıdır. • MARS : Sayısal verilerin daha iyi işlenebilmesi için karar ağaçlarını iyileştiren bir yaklaşımdır ÖDEVLER Sınıflandırma Modelini Değerlendirme Sınıflandırma Metodu tarafından oluşturulan modelin başarısını ölçmek için Doğruluk (Accuracy) Hata Oranı (Error rate) Specificity Sensitivity gibi ölçüler kullanılır. Kaynak:Dr.Songül Albayrak Ders sunusu
  32. 32. 32 Sınıflandırma Modelini Değerlendirme: * Doğruluk (Accuracy) * Hata Oranı (Error Rate) • Bir M sınıflayıcısı için doğruluk; – acc(M) doğru sınıflanmış örneklerin toplam örnek sayısına oranından bulunur. • Bir M sınıflayıcısı için hata oranı; – 1-acc(M) olarak hesaplanır. Kaynak:Dr.Songül Albayrak Ders sunusu Sınıflandırma Modelini Değerlendirme: Karışıklık Matrisi (Class Confusion Matrix) Öngörülen sınıf (Predicted Class) Gerçek Sınıf (Actual Class) C1 (Positive) C2 (Negative) C1 (Positive) True positive TP False negative FN C2 (Negative) False positive FP True negative TN sensitivity = TP /pos /* true positive recognition rate */ specificity = TN /neg /* true negative recognition rate */ accuracy= (TP +TN) / (pos + neg) ΣPositive ΣNegative Kaynak:Dr.Songül Albayrak Ders sunusu
  33. 33. 33 Sınıflandırma Modelini Değerlendirme: Karışıklık Matrisi (Class Confusion Matrix) Table 2.7 • Two Confusion Matrices Each Showing a 10% Error Rate Model Computed Computed Model Computed Computed A Accept Reject B Accept Reject Accept 600 25 Accept 600 75 Reject 75 300 Reject 25 300 Kaynak:Dr.Songül Albayrak Ders sunusu 66 Haftaya Haftaya Machine Learning Selçuk Üniversitesi Fen Bilimleri Enstitüsü Bilgisayar Mühendisliği A.B.D. Dr.Erkan ÜLKER

×