Karar Ağacı Öğrenmesi(Decision Tree Learning)

Benzer belgeler
Karar Ağacı Öğrenmesi(Decision Tree Learning)

VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN

Web Madenciliği (Web Mining)

VERİ MADENCİLİĞİ (Karar Ağaçları ile Sınıflandırma) Yrd.Doç.Dr. Kadriye ERGÜN

VERİ MADENCİLİĞİ (Sınıflandırma Yöntemleri) Yrd.Doç.Dr. Kadriye ERGÜN

Borsa verileri Çağrı merkezine gelen arama sayısı Gün içerisinde bir dükkana gelen müşteri sayısı

Makine Öğrenmesi 3. hafta

127 - Twoing Algoritması ile Sınıflandırma Kalp Hastalığı Uygulaması MEHMET AKİF ERSOY ÜNİVERSİTESİ İLHAN UYSAL MEHMET BİLEN SAMİ ULUKUŞ

Gözetimli & Gözetimsiz Öğrenme

Veri Madenciliği. Bölüm 5. Sınıflandırma 1. Doç. Dr. Suat Özdemir.

Eğitim seti (training set) sınıflandırma modelinin elde edileceği kayıtları içerir

YZM 5257 YAPAY ZEKA VE UZMAN SİSTEMLER DERS#6: GENETİK ALGORİTMALAR

BAYES ÖĞRENMESİ BİLECİK ÜNİVERSİTESİ. Araş. Gör. Nesibe YALÇIN. Yapay Zeka-Bayes Öğrenme

Eğiticili (supervised) öğrenme: Sınıflandırma (classification) Sınıf sayısı ve bir grup örneğin hangi sınıfa ait olduğu bilinir

VERİ MADENCİLİĞİ (Kümeleme) Yrd.Doç.Dr. Kadriye ERGÜN

Uzaktan Algılama Teknolojileri

Hafta 05 - Karar Ağaçları/Kümeleme

Mekatronik Mühendisliği Uygulamalarında Yapay Zekâ. Makine Öğrenmesi. Erhan AKDOĞAN, Ph.D.

Veri Madenciliği Karar Ağacı Oluşturma

Büyük Veri İçin İstatistiksel Öğrenme (Statistical Learning for Big Data)

Kümeler arası. Küme içi. uzaklıklar. maksimize edilir. minimize edilir

K En Yakın Komşu Methodu (KNearest Neighborhood)

Concept Learning. Araş. Gör. Nesibe YALÇIN BİLECİK ÜNİVERSİTESİ. Yapay Zeka - Kavram Öğrenme

GENETİK ALGORİTMALAR. Araş. Gör. Nesibe YALÇIN BİLECİK ÜNİVERSİTESİ

Zeki Optimizasyon Teknikleri

Veri madenciliği yöntemleri

tree) nedir? Karar Ağacı (Decision Decisiontree

Makine Öğrenmesi 2. hafta

YZM 3217 YAPAY ZEKA DERS#9: ÖĞRENME VE SINIFLANDIRMA

CBS ve Coğrafi Hesaplama

VERİ MADENCİLİĞİ (Veri Ön İşleme-2) Yrd.Doç.Dr. Kadriye ERGÜN

2.1 Bir Sınıfı Örneklerinden Öğrenme Vapnik-Chervonenkis (VC) Boyutu Olası Yaklaşık Doğru Öğrenme... 21

YZM 3217 YAPAY ZEKA DERS#10: KÜMELEME

VERİ MADENCİLİĞİ (Veri Önişleme-1) Yrd.Doç.Dr. Kadriye ERGÜN

BÖLÜM III: Şebeke Modelleri. Şebeke Kavramları. Şebeke Kavramları. Şebeke Kavramları. Yönlü Şebeke (Directed Network) Dal / ok

Akış YILDIZ TEKNİK ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

VERİ MADENCİLİĞİ. Karar Ağacı Algoritmaları: SPRINT algoritması Öğr.Gör.İnan ÜNAL

Web Madenciliği (Web Mining)

GENETİK ALGORİTMA ÖZNUR CENGİZ HİLAL KOCA

Boosting. Birol Yüceoğlu Migros T.A.Ş.

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi

YAPAY SİNİR AĞLARI. Araş. Gör. Nesibe YALÇIN BİLECİK ÜNİVERSİTESİ

Makine Öğrenmesi İle Duygu Analizinde Veri Seti Performansı

Örüntü Tanıma (EE 448) Ders Detayları

YZM YAPAY ZEKA DERS#6: REKABET ORTAMINDA ARAMA

Genel Graf Üzerinde Mutlak 1-merkez

bitık MOBİL TİCARET UYGULAMASI ABDULLAH ÇİÇEKCİ

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

KARAR AĞAÇLARI SÜMEYYE ÖZKAN BAHAR BAKAR İZEL KOLCU

İleri Diferansiyel Denklemler

Olasılık, bir deneme sonrasında ilgilenilen olayın tüm olaylar içinde ortaya çıkma ya da gözlenme oranı olarak tanımlanabilir.

BIP116-H14-1 BTP104-H014-1

Kitle: Belirli bir özelliğe sahip bireylerin veya birimlerin tümünün oluşturduğu topluluğa kitle denir.

SAYI VE KODLAMA SİSTEMLERİ. Teknoloji Fakültesi/Bilgisayar Mühendisliği

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#9: AÇGÖZLÜ ALGORİTMALAR

PAPATYA YAYINCILIK EĞİTİM Bilgisayar Sis. San. ve Tic. A.Ş. Veri Madenciliği Yöntemleri Dr. Yalçın ÖZKAN -II-

TEMEL İSTATİSTİKİ KAVRAMLAR YRD. DOÇ. DR. İBRAHİM ÇÜTCÜ

BÜYÜK VERI UYGULAMALARı DERS 4. Doç. Dr. Yuriy Mishchenko

Web Madenciliği (Web Mining)

Karaciğerde Oluşan Hastalıkların Tespitinde Makine Öğrenmesi Yöntemlerinin Kullanılması

Doğal Dil İşlemede Eğilimler. Önceden: Yapay Zeka Tabanlı, tam olarak anlama. Şimdiki: Külliyat(Corpus)-tabanlı, İstatistiki, makine öğrenmesi içeren

Hafta 03/04 - Uzaklık/Benzerlik - En Yakın Komşular - Karar Ağaçları

Sayı sistemleri-hesaplamalar. Sakarya Üniversitesi

Görüntü Sınıflandırma

Kümeleme Algoritmaları. Tahir Emre KALAYCI

Makine Öğrenmesine Giriş (Machine Learning ML)

Veri Madenciliği Yaklaşımı ile Mesleki Yönlendirme Sistemi

PARALEL VERİ MADENCİLİĞİ ALGORİTMALARI. BAŞARIM 09, Nisan 2009, ODTÜ, Ankara

Esnek Hesaplamaya Giriş

Karar Ağaçları İle Uydu Görüntülerinin Sınıflandırılması: Kocaeli Örneği

Apriori Algoritması. Konu İçeriği. Giriş. Tarihçesi. Apriori Nedir? Örnekler. Algoritma. Açıklama. Weka İle Kullanımı. Kaynakça.

BCA605 Bilgisayar Oyunlarında Yapay Zeka

Karar ağaçları overfitting e karşı çok hassastır. Birkaç alternatif karar ağacı oluşturulur ve sonuçta oylama yapılarak karar verilir.

Akademik Rapor Hazırlama ve Yazışma Teknikleri

Veri Madenciliği. Yrd. Doç. Dr. Mustafa Gökçe Baydoğan. blog.mustafabaydogan.

PAZARLAMA ARAŞTIRMA SÜRECİ

Büyük Veri ve Endüstri Mühendisliği

TAMSAYILAR. 9www.unkapani.com.tr. Z = {.., -3, -2, -1, 0, 1, 2, 3, } kümesinin her bir elemanına. a, b, c birer tamsayı olmak üzere, Burada,

10.Hafta Minimum kapsayan ağaçlar Minimum spanning trees (MST)

Çok fazla bilgiden gizli kalmış örüntüleri ortaya çıkarma sürecine Veri Madenciliği denir.

Gerçekten Asal Var mı? Ali Nesin

TANIMLAYICI İSTATİSTİKLER

AYTUĞ ONAN CELAL BAYAR ÜNİVERSİTESİ, BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ SERDAR KORUKOĞLU EGE ÜNİVERSİTESİ, BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

BMB204. Veri Yapıları Ders 9. B+ Ağacı, Hash, Heap. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

İSTANBUL TEKNİK ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ TÜMEVARIM ÖĞRENME TEKNİKLERİNDEN C4.5 İN İNCELENMESİ. Müh. Savaş YILDIRIM

REGRESYON ANALİZİ VE UYGULAMA. Yrd. Doç. Dr. Hidayet Takcı

BKİ farkı Standart Sapması (kg/m 2 ) A B BKİ farkı Ortalaması (kg/m 2 )

Algoritmalara Giriş Ekim 17, 2005 Massachusetts Institute of Technology Profesörler Erik D. Demaine ve Charles E. Leiserson Dağıtım 15.

Veri ve Metin Madenciliği

Veri ve Metin Madenciliği. Zehra

Oluşturulan evren listesinden örnekleme birimlerinin seçkisiz olarak çekilmesidir

Algoritmalar. Arama Problemi ve Analizi. Bahar 2016 Doç. Dr. Suat Özdemir 1

İleri Diferansiyel Denklemler

BLM-431 YAPAY ZEKA. Ders-4 Bilgisiz Arama Yöntemleri. Yrd. Doç. Dr. Ümit ATİLA

Dosya Sıkıştırma (File Compression) Kütük Organizasyonu 1

Algoritmalara Giriş 6.046J/18.401J

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

Sosyal Medyada Makine Öğrenmesi ile Duygu Analizinde Dengeli ve Dengesiz Veri Setlerinin Performanslarının Karşılaştırılması

Kafes Sistemler. Birbirlerine uç noktalarından bağlanmış çubuk elemanların oluşturduğu sistemlerdir.

Transkript:

Karar Ağacı Öğrenmesi(Decision Tree Learning) Bu yazımızda karar ağacı öğrenmesini inceleyeceğiz. Öncelikle karar ağacı öğrenmesi danışmanlı öğrenmenin, danışmanlı öğrenme de makine öğrenmesinin bir alt dalıdır. İlk etapta makine öğrenmesi hakkında bilgi edindikten sonra konumuz olan karar ağacı öğrenmesine giriş yapacağız. Makine Öğrenmesi, verilen bir problemi probleme ait ortamdan edinilen veriye göre modelleyen bilgisayar algoritmalarının genel adıdır. Yoğun çalışılan bir konu olduğu için önerilmiş birçok yaklaşım ve algoritma mevcuttur. Bu yaklaşımların bir kısmı tahmin (prediction) ve kestirim (estimation) bir kısmı da sınıflandırma (classification) yapabilme yeteneğine sahiptir. Makine öğrenmesinde yer alan bu terimleri açıklayacak olursak; Tahmin (prediction): Veriden öğrenen modellerde sistem çıkışının nicel olması durumunda kullanılan yöntemlerin ürettiği değerlerdir. Sınıflandırma (classification): Giriş verisine ait çıkışların nitel olduğu durumlarda kullanılan yöntemlerin her veri örneğinin hangi sınıfa ait olduğunu belirlemesidir. Makine Öğrenmesi yöntemleri verinin yapısına göre ikiye ayrılır. Bunlar; Danışmanlı (Supervised) Öğrenme ve Danışmansız (Unsupervised) Öğrenme dir. Danışmanlı öğrenmede, sınıf niteliği vardır ve görevi, sınıf nitelik değerini tahmin etmektir. Danışmansız öğrenmede, veri kümesinin sınıf niteliği yoktur ve bizim görevimiz, veri kümesinde benzer örnekleri bulmak ve bunları gruplamaktır. Bu benzer örnekleri gruplayarak, bir veri kümesinde önemli desenler bulabiliriz. Örneğin, tweet atma sıklığı çeşitli olaylar için farklı olduğu için denetimsiz öğrenme Twitter daki olayları tanımlamak için

kullanılabilir. Denetimsiz öğrenmeyi kullanarak, tweet ler göründükleri zamana göre gruplandırılabilir ve bu şekilde tweet lerin karşılık gelen gerçek dünyadaki olaylarını tanımlayabilir. Karar Ağacı Nedir? Karar Ağaçları, belirli bir parametreye göre verilerin sürekli olarak bölündüğü bir Denetimli Makine Öğrenmesi türüdür. Ağaç, karar düğümleri ve yapraklar olmak üzere iki varlık tarafından açıklanabilir. Yapraklar kararlar veya nihai sonuçlardır. Ve karar düğümleri verilerin nereye bölündüğünü gösterir. Şekil 1. Karar Ağacı Örneği Bir karar ağacı örneği, yukarıdaki ikili ağaç kullanılarak açıklanabilir. Diyelim ki, bir insanın yaş, yeme alışkanlığı ve fiziksel aktivite gibi verilmiş bilgilerle fit olup olmadığını tahmin etmek isteyebilirsiniz. Buradaki karar düğümleri, Yaş durumu, Sabahları egzersiz yapıyor mu?, Fazla pizza yer mi? ve yapraklar da, fit ya da fit değil şeklindedir. Bu durumda bu, binary(ikili) bir sınıflandırma problemiydi (evet hayır tip problemi).

Karar Ağaçları ile Sınıflandırma 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. Karar ağaçları akış şemalarına benzeyen yapılardır. Her bir nitelik bir düğüm tarafından temsil edilir. Dallar ve yapraklar ağaç yapısının elemanlarıdır. En son yapı yaprak en üst yapı kök ve bunların arasında kalan yapılar dal olarak isimlendirilir. Sınıflandırma Uygulamaları Kredi başvurusu değerlendirme Kredi kartı harcamasının sahtekarlık olup olmadığına karar verme Hastalık teşhisi Ses tanıma Karakter tanıma Gazete haberlerini konularına göre ayırma Kullanıcı davranışları belirleme Sınıflandırma yöntemleri olarak Karar ağaçları nın yanı sıra Yapay Sinir Ağları (Artificial Neural Networks), Bayes Sınıflandırıcılar (Bayes Classifier), İlişki Tabanlı Sınıflandırıcılar (Association-Based Classifier), k-en Yakın Komşu Yöntemi (k- Nearest Neighbor Method), Destek Vektör Makineleri (Support Vector Machines) ve Genetik Algoritmalar (Genetic Algorithms) gibi yöntemler bulunmaktadır. Karar ağaçlarında sınıflandırma yöntemleri 2 çeşittir. Bunlar Entropiye Dayalı Algoritmalar ve Sınıflandırma ve Regresyon Ağaçları(CART) dır. ID3 Algoritması ve C4.5 Algoritması

Entropiye dayalı algoritmalar arasındayken Twoing Algoritması ve Gini Algoritması Sınıflandırma ve regresyon ağaçları sınıfındadır. Karar Ağacı Oluşturma Yöntemleri Karar ağacı oluşturma yöntemleri genel olarak iki aşamadan oluşur; 1.Ağaç oluşturma En başta bütün öğrenme kümesi örnekleri kökte seçilen niteliklere bağlı olarak örnek yinelemeli olarak bölünüyor. 2. Ağaç budama Öğrenme kümesindeki gürültülü verilerden oluşan ve sınama kümesinde hataya neden olan dalları silme (sınıflandırma başarımını artırır) Karar ağacı oluşturma yinelemeli bir işlemdir. Ağaç bütün verinin oluşturduğu tek bir düğümle başlar. Eğer örneklerin hepsi aynı sınıfa aitse düğüm yaprak olarak sonlanır ve sınıf etiketini alır. Eğer değilse örnekleri sınıflara en iyi bölecek olan nitelik seçilir. İşlemin sona ermesi için ise aşağıdaki şartların sağlanması gerekmektedir. Örneklerin hepsi (çoğunluğu) aynı sınıfa ait olduğunda Örnekleri bölecek nitelik kalmamışsa Kalan niteliklerin değerini taşıyan örnek yoksa Aşırı uyum(overfitting) olması durumunda ağacın budanması(pruning) gerekir.

Veriye Aşırı Uyumun Önüne Geçme Eğitim verilerini en iyi sınıflandıracak şekle kadar her dalını derinleştirir.bu mantıklı bir stratejiyken, veriler arasında gürültü varsa zorluklara sebep olabilir.gürültü varken, her yaprak saf (pure) olana dek bölünmeye izin vermek, veriyi ezberleyen (overfitting) çok büyük bir karar ağacı oluşmasına neden olabilir. Şekil 2. Doğruluk Oran Grafiği Budama(Pruning) Nedir? Verideki gürültüyü azaltmak için budama yaparız.düşük öneme sahip özellikleri kullanan dalları kaldırmayı içerir. Böylece ağaçların karmaşıklığı düşer ve aşırı uyum azalarak tahmin gücü artar. Budama kök veya yapraklardan başlayabilir. Budama işleminin en basit yöntemi yapraklarda başlar ve bu yaprağın en popüler sınıfa sahip her bir düğümünü kaldırır; bu değişiklik doğruluk bozulmazsa tutulur. Buna hata düzeltme denir. İki çeşit budama yöntemi vardır. Bunlar; 1. Erken budama(pre-prunning)

Ağacın büyümesini erken durduran bir yaklaşımdır. 1. Geç budama(post-pruning) Ağacın tamamlanmasının ardından işlem yapılır.daha doğru bir çözümdür ID3 Nedir? Karar Ağaçları yapısını oluşturan birçok algoritmanın en iyilerinden birisi ID3 Algoritması olarak adlandırılır. ID3, Iterative Dichotomiser 3 anlamına gelir.(tekrarlı ikilikçi ağaç).id3 algoritması 3 adımı esas alır: 1. 2. 3. Henüz ağaca dahil edilmeyen özellikler ele alınıp entropi (dağınım) değerleri hesaplanır. Entropi değerlerine göre sıralanır ve aralarından en düşük değerli özellik seçilir. Seçilen özelliğin kararı ağaca eklenir. Entropi Nedir? Bir sistemin düzensizliğini ifade eden terimdir. Örneğin entropi terimini hilesiz bir yazı tura atma işleminde 1 bitlik (ikil) ve %50 ihtimallik bir değer olarak görebiliriz.hileli olarak düşünürsek sürekli tura gelen bir paranın ürettiği sayıların entropisi sıfırdır. Bilgisayar bilimleri açısından daha kesin bir tanım yapmak gerekirse elimizdeki veriyi kaç bit ile (ikil) kodlayabileceğimize entropi ismi verilir. Örneğin bir haftada bulunan günleri kodlamak için kaç ikile ihtiyacımız olduğu günlerin dağınımıdır. Tablo 1. Haftanın Günleri Örneği Görüldüğü üzere 7 gün için 3 bit yeterlidir.yani haftanın

günleri entropisi 3 tür. Genellikle bir bilginin entropisi hesaplanırken log2n formülü kullanılır. Burada n birbirinden farklı ihtimal sayısını belirler. Örneğin haftanın günlerinde bu sayı 7 dir ve log 2 7 = 2,80 olmaktadır. 0.80 gibi bir bit olamayacağı için yani bilgisayar kesikli matematik (discrete math) kullandığı için 3 bit gerektiğini söyleyebiliriz. up1, p2,.., ps toplamları 1 olan olasılıklar olmak üzere entropi formülümüz; Şekil 3. Entropi Formülü Bir örnek verecek olursak; S veri kümesinde 14 örnek bulunacak şekilde, C0 sınıfına ait 9, C1 sınıfına ait 5 örnek var diyelim. Entropi formülümüzü kullanarak işlemi hesaplayacağımızda 0.940 sonucunu buluruz bu da bu örneğin entropisini gösterir. Şekil 4. Hesaplama Bu konuyla ilişkili olarak bilmemiz gereken bir diğer bilgi de Bilgi Kazancı(Information Gain)dır.İlgili formül ise Şekil 5 de mevcuttur. Şekil 5. Bilgi Kazancı Formülü ID3 Hesaplama Örneği

Tablo 2. Örnek Veriler Şimdi devam edip karar ağacını oluşturacağız. İlk adım, H(S), mevcut durumun entropisini hesaplamaktır. Yukarıdaki örnekte toplam 5 No ve 9 Yes olduğunu görüyoruz.toplam 14 değerimiz olduğundan entropi 0.940 bulunur. Şekil 6. Hesaplama Sonucu Bütün üyelerin aynı sınıfa ait olması durumunda entropinin 0 ve bunların yarısı bir sınıfa, diğer yarısı diğer sınıfa ait olduğunda entropinin 1 (örn.: yazı-tura) olduğunu hatırlayın. Burada sonucumuz 0.94, yani dağıtımın oldukça rasgele olduğu anlamına geliyor. Şimdi bir sonraki adım, kök düğüm olarak seçeceğimiz en yüksek Bilgi Kazanımı nı veren nitelik seçmektir. Rüzgar ile başlayalım. Şekil 7. Rüzgar İçin Formül Formüldeki x bir özniteliğin olası değerleridir.burada, Rüzgar özelliği örnek veride iki olası değeri alır; dolayısıyla x = {Zayıf,Güçlü}.Hesaplanması gereken değerler; H(Szayıf),P(Szayıf),P(Sgüçlü) ve önceki işlemde hesapladığımız

H(S)=0.94. Şekil 8. PZayıf ve PGüçlü için Hesaplamalar Şimdi 8 zayıf örnekten 6 sı oynama durumu için Evet 2 si oynama durumu için Hayır idi. Yani elimizde, Şekil 9. Zayıf Rüzgar İçin Entropi Benzer şekilde 6 Güçlü örnekte sonucun oynama durumu için Evet olduğu 3, Hayır olduğu 3 örnek var. Şekil 10. Güçlü rüzgar İçin Entropi Unutmayın, burada yarım öğeler bir sınıfa aitken, diğer yarısı diğerine aittir. Dolayısıyla mükemmel rasgeleliğe sahibiz.şimdi, Bilgi Kazançını hesaplamak için gereken tüm parçaları elde ettik. Şekil 11. Rüzgar İçin Bilgi Kazancı Bu, Rüzgar özelliği ile ilgili Bilgi Kazanımını bize bildirir ve bize 0,048 lik bilgi kazandırır. Şimdi de benzer şekilde tüm özelliklerin Bilgi Kazanımlarını hesaplamalıyız. BK(S,Hava Durumu) = 0.246 BK(S,Sıcaklık) = 0.029 BK(S,Nem) = 0.151 BK(S,Rüzgar) = 0.048 (örneğimiz)

Açıkça görüyoruz ki, BK(S, Hava Durumu)=0.246 en yüksek bilgi kazanımına sahip, dolayısıyla kök düğüm olarak Hava Durumu özniteliğini seçtik. Bu noktada, karar ağacı aşağıdaki gibidir. Şekil 12. Ağacın İlk Durumu Burada, Hava durumu Bulutlu olduğunda, Oynama Durumunun her zaman Evet olduğunu gözlemlersek, bu hiçbir şekilde herhangi bir tesadüf değildir. En yüksek bilgi kazanımı, Hava Durumu özelliği tarafından verilen basit ağaçtır. Şimdi bu noktadan nasıl ilerleyebiliriz? Yineleme uygulayabiliriz, daha önce açıklanan algoritma adımlarına bakmak isteyebilirsiniz. Artık Hava Durumu nu kullandık, kalan üçümüzde Nem, Sıcaklık ve Rüzgar bulunuyor. Ve Hava Durumu nun üç olası değeri vardı: Güneşli, Bulutlu, Yağmurlu. Bulutlanmış düğümün bitiş düğümünde Evet olan yaprak düğümü olması nedeniyle, hesaplamak için kalan iki alt ağacı dallandırmaya devam ederiz; Güneşli ve Yağmurlu. BK(S,Güneşli) i hesaplayacak olursak; Tablo 3. Güneşli Durumda Veriler Şekil 13. Güneşli İçin Entropi

Aynı şekilde diğer verileri de hesapladığımızda; BK (Sgüneşli,Nem) = 0,96 BK (Sgüneşli,Sıcaklık) =0.57 BK (Sgüneşli,Rüzgar) = 0.019 Gördüğümüz gibi en yüksek Bilgi Kazancı, Nem tarafından verilir. Aynı şekilde Syağmurlu için işlemleri yaptığımızda en yüksek bilgi kazancı olanı Rüzgar olarak buluyoruz. Ağacın son durumu aşağıdaki gibidir; Şekil 14. Nihai Karar Ağacı C4.5 Ağacı C4.5 ağacı, ID3 ağacının geliştirilmiş bir hali olarak düşünülebilir. ID3 algoritmasından farklı olarak nümerik değerler kategorik değerler haline dönüştürülebilir. Ayrıca ağaç üzerinde erişim sıklıklarına göre alt ağaçların farklı seviyelere taşınması da mümkündür. C4.5 ağacının diğer bir farkı ise tam bu noktada ortaya çıkar ID3 ağacının yaklaşımından farklı olarak C4.5 ağacında budama (prunning) işlemi yapılmaktadır.

Şekil 15. Budama Örneği Nümerik değerleri kategorik hale getirmek için 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, +1 aralığının orta noktası alınabilir. = vi + vi+1 /2. Böylece nitelikteki değerler eşik değere göre iki kategoriye ayrılmış olur. Tablo 4. Örnek Veriler Nitelik 2 = {65, 70, 75, 80, 85, 90, 95, 96} için eşik değer (80+85)/2 = 83 alınmıştır. Tablo 5. Sayısal Verilerin İki Kategoriye İndirilmesi Şimdi yapmamız gereken ID3 hesaplamasında kullandığımız formülleri aynı şekilde kullanarak en büyük bilgi kazanımı

olan niteliği düğüm olarak seçmek. Nitelik1 için hesaplamalar; 1.H(SINIF) = -(5/14 log 2 5/14 + 9/14 log 2 9/14 ) = 0.940 2.H(NİTELİK1 A ) = -( 2/5 log 2 2/5 3/5 log 2 3/5 )= 0.971 3.H(NİTELİK1 B ) = -( 4/4 log 2 4/4 + 0/4 log 2 0/4 )= 0 4.H(NİTELİK1 C ) = 3/5 log 2 3/5 2/5 log 2 2/5 = 0.971 5.H(S,NİTELİK1,SINIF) = 5/14 H(NİTELİK1 A ) + 4/14 H(NİTELİK1 B ) + 5/14 H(NİTELİK1 C ) 6.= (5/14)(0.971) + (4/14)(0) + (5/14)(0.971) = 0.694 7.BK(NİTELİK1,SINIF) = 0.940-0.694 = 0.246 Nitelik2 için hesaplamalar; 1.H(SINIF) = 0.940 2.H(NİTELİK2 EK ) = -( 7/9 log 2 7/9 2/9 log 2 2/9 )= 0.765 3.H(NİTELİK1 B ) = -( 2/5 log 2 2/5 + 3/5 log 2 3/5 )= 0.971 4.H(S,NİTELİK2,SINIF) = 9/14 H(NİTELİK2 EK ) + 5/14 H(NİTELİK2 B ) 5.= (9/14)(0.765) + (5/14)(0.971) = 0.836 6.BK(NİTELİK2,SINIF) = 0.940-0.836 = 0.104 Nitelik3 için hesaplamalar; 1.H(SINIF) = 0.940 2.H(NİTELİK3 DOĞRU ) = -( 3/6 log 2 3/6 3/6 log 2 3/6 )= 1 3.H(NİTELİK3 YANLIŞ ) = -( 6/8 log 2 6/8 + 2/8 log 2 2/8 )= 0.811 4.H(S,NİTELİK3,SINIF) = 6/14 H(NİTELİK3 DOĞRU ) + 8/14

H(NİTELİK3 YANLIŞ ) 5.= (6/14)(1) + (8/14)(0.811) = 0.892 6.BK(NİTELİK2,SINIF) = 0.940-0.892 = 0.048 BK(NİTELİK1,SINIF) > BK(NİTELİK2,SINIF) > BK(NİTELİK3,SINIF) İşlemler bittiğinde bilgi kazancı büyüklükleri sırasıyla Nitelik1,Nitelik2 ve Nitelik3 olarak bulunmuştur. Buna göre hesaplamalar tamamlanır ve nihai karar ağacı elde edilir. Şekil 16. Nihai Karar Ağacı Sınıflandırma ve Regresyon Ağaçları (CART) 1984 te Leo Breiman tarafından ortaya atılmıştır. CART karar ağacı, herbir karar düğümünden itibaren ağacın iki dala ayrılması ilkesine dayanır. Yani bu tür karar ağaçlarında ikili dallanmalar söz konusudur. CART algoritmasında bir düğümde belirli bir kriter uygulanarak bölünme işlemi gerçekleştirilir. Bunun için önce tüm niteliklerin var olduğu değerler göz önüne alınır ve tüm eşleşmelerden sonra iki bölünme elde edilir. Bu bölünmeler üzerinde seçme işlemi uygulanır. Bu kapsamda iki algoritma bulunmaktadır; 1. Twoing Algoritması 2. Gini Algoritması

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 nitelik değerinin ilgili sütundaki tekrar sayısı 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 olma olasılığı hesaplanır.her bölünme için uygunluk değeri en yüksek olan alınır. Şekil 17. Formül Burada, T eğitim kümesindeki kayıt sayısını, B aday bölünmeyi, d düğümü, Tsinif j ise j.sınıf değerini gösterir Tablo 6. Örnek Tablo Tablo 7. Örnek Tablonun Etkenlere Göre Düzenlenmesi MAAŞ = NORMAL için P Sol = ( B Sol )/( T ) = 1/11 = 0,09 P EVET/ tsol = ( TSınıfEVET )/( B Sol ) = 1/1 = 1 ve P HAYIR/ tsol = ( TSınıfHAYIR )/( B Sol ) = 0/1 = 0

Tablo 8.Bölünme şartı sonucu elde edilen veriler MAAŞ = DÜŞÜK,YÜKSEK için P Sağ = ( B Sağ )/( T ) = 10/11 = 0,91 P EVET/tSağ = ( TSınıfEVET )/( B Sağ ) = 6/10 = 0,6 ve P HAYIR/tSağ = ( TSınıfHAYIR )/( B Sağ ) = 4/10 = 0,4 Tablo 9.Bölünme şartı sonucu elde edilen veriler Uygunluk değeri hesaplanır(1. aday bölünme için) Şekil 18. Kullanılacak Formül = 2(0,09)(0,91)[ 1 0,6 + 0 0,4 ] = 0,13 Tablo 10. Bölünme şartı sonucu elde edilen veriler Ve ağacın ilk durumu belirlenir;

Şekil 19. Ağacın İlk Durumu Aynı işlemler ALT DÜĞÜM e de uygulanır Şekil 20. Nihai Karar Ağacı 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 Gini sol ve Gini sağ değerleri hesaplanır. Şekil 21. Formül Burada, Tsinifi soldaki bölümdeki her bir sınıf değerini, Tsinifi sağdaki bölümdeki her bir sınıf değerini, B sol sol bölümdeki tüm değer sayısını, B sağ sağ bölümdeki tüm değer sayısını gösterir.

Şekil 22. Formül Her bölümlemeden sonra Gini değeri en küçük olan seçilir Tablo 11. Örnek Veriler Tablomuzdaki verileri sonuç için sıralarsak; EĞİTİM için Tablo 12. Verilerin Sonuç için Sıralanmış Hali 1.Gini sol = 1- [(1/3) 2 + (2/3) 2 ] = 0,444 2.Gini sağ = 1- [(4/5) 2 + (1/5) 2 ] = 0,320 YAŞ için 1.Gini sol = 1- [(0/2) 2 + (2/2) 2 ] = 0 2.Gini sağ = 1- [(5/6) 2 + (1/6) 2 ] = 0,278 CİNSİYET için 1.Gini sol = 1- [(1/3) 2 + (2/3) 2 ] = 0,444 2.Gini sağ = 1- [(4/5) 2 + (1/5) 2 ] = 0,320

Gini değerleri; Şekil 23. Gini Değerleri Buna göre ilk bölünme YAŞ a göre yapılacaktır. Şekil 24. Ağacın İlk Durumu Aynı işlemler alt düğümlere de uygulandığında sonuç karar ağacı elde edilir. Şekil 25. Nihai Karar Ağacı Karar Ağacının Avantajları Anlamak, yorumlamak, görselleştirmek basittir.karar ağaçları örtülü olarak değişken tarama veya özellik seçimi gerçekleştirir. Hem sayısal hem de kategorik verileri

işleyebilir. Aynı zamanda çoklu çıktı problemlerini de halledebilir. Karar ağaçları, veri hazırlığı için nispeten az çaba gerektirir. Parametreler arasındaki doğrusal olmayan ilişkiler ağaç performansını etkilemez. Karar Ağacının Dezavantajları Karar ağacı öğrenenleri, veriyi genelleştirmeyen aşırı karmaşık ağaçlar oluşturabilir. Buna overfitting(aşırı uygunluk,ezber) denir.açgözlü algoritmalar, küresel olarak en uygun karar ağacını geri getireceğini garanti edemez. Bu, özelliklerin ve örneklerin rastgele değiştirilmesi ile örneklendiği birden fazla ağaç eğiterek hafifletilebilir.karar ağacı öğrenenleri, bazı sınıflara hakimse, önyargılı ağaçlar oluştururlar. Dolayısıyla, karar ağacına uydurmadan önce veri setini dengelemek önerilir. Özet Karar ağaçları veri madenciliği için popüler araçlardır Anlaması kolaydır. Uygulaması kolaydır. Kullanımı kolaydır. Finansal açıdan ucuzdur. Overfitting(Ezber) meydana gelebilir. Önlemek için Pruning(Budama) işlemi uygulanır.kökten bir yaprağa kadar olan her yol, yaprağa götüren tüm kararların kuralın öncüsünü tanımladığı bir kurala karşılık gelir ve bunun sonucunda yaprak düğümünde sınıflandırma yapılır. Referanslar 1.https://medium.com/towards-data-science/decision-trees-in-ma chine-learning-641b9c4e8052

2.https://machinelearningmastery.com/classification-and-regres sion-trees-for-machine-learning/ 3.Tom Mitchell, Princeton, Decision Tree Learning http://www.cs.princeton.edu/courses/archive/spr07/cos424/paper s/mitchell-dectrees.pdf 4.https://www.xoriant.com/blog/product-engineering/decision-tr ees-machine-learning-algorithm.html 5.Yrd.Doç.Dr. Kadriye ERGÜN, Balıkesir Üniversitesi, Veri Madenciliği 6.Yrd.Doç.Dr.Umut ORHAN, Çukurova Üniversitesi, Makine Öğrenmesi http://bmb.cu.edu.tr/uorhan/dersnotu/ders01.pdf 7.http://bilgisayarkavramlari.sadievrenseker.com/2008/12/17/en tropi-entropy/ 8.http://bilgisayarkavramlari.sadievrenseker.com/2012/11/13/c4-5-agaci-c4-5-tree/ 9.Jerry Zhu, University of Wisconsin-Madison, Machine Learning:Decision Trees http://pages.cs.wisc.edu/~jerryzhu/cs540/handouts/dt.pdf