Karar Ağaçları Algoritması Konu Anlatımı ve Örnek Problemler
Karar ağaçları algoritması, karmaşık veri setleri içerisindeki örüntüleri tıpkı bir ağaç yapısı gibi dallara ayırarak sınıflandırma ve regresyon analizleri yapmaya olanak tanıyan güçlü bir makine öğrenimi yöntemidir. Günümüzün veri odaklı dünyasında, bir bankanın kredi onay sürecinden bir doktorun hastalık teşhisine kadar pek çok kritik karar aşamasında bu algoritmanın sağladığı şeffaf ve anlaşılır mantık çerçevesi temel alınmaktadır.
- Karar ağacı algoritmasının temel mantığını ve çalışma prensibini kavrayacaksınız.
- Kök düğüm, iç düğüm ve yaprak düğüm gibi yapısal bileşenleri ayırt edebileceksiniz.
- Entropi, Bilgi Kazancı ve Gini Safsızlığı gibi matematiksel bölme kriterlerini öğreneceksiniz.
- Aşırı öğrenme (overfitting) sorununu ve budama (pruning) yönteminin önemini anlayacaksınız.
- Gerçek dünya problemlerinde karar ağaçlarının nasıl uygulandığını örneklerle göreceksiniz.
- Tür: Denetimli Öğrenme (Supervised Learning) algoritmasıdır.
- Kullanım Alanı: Hem sınıflandırma (evet/hayır) hem de regresyon (sayısal tahmin) için uygundur.
- Görsel Yapı: Kararlar yukarıdan aşağıya doğru dallanan bir akış şeması şeklindedir.
- Esneklik: Hem kategorik hem de sayısal verilerle çalışabilir.
Karar Ağaçları Algoritması Nedir?
Karar ağaçları, veri madenciliği ve yapay zeka alanında en çok tercih edilen algoritmaların başında gelir. Bu algoritmanın en büyük özelliği, karmaşık problemleri daha küçük ve yönetilebilir alt parçalara bölerek çözmesidir. Bir karar ağacı, en tepeden başlar ve belirli sorular sorarak veriyi alt gruplara ayırır. Bu süreç, veriler üzerinde bir sonuç elde edilene kadar devam eder.
İnsan beyni karar verirken genellikle farkında olmadan bir karar ağacı mekanizması işletir. Örneğin, “Dışarı çıkmalı mıyım?” sorusuna yanıt ararken; hava yağmurlu mu, arkadaşım gelecek mi, ödevim bitti mi gibi soruları bir hiyerarşi içerisinde yanıtlarız. Karar ağaçları algoritması da tam olarak bu mantıksal akışı matematiksel bir modele dönüştürür.
Karar Ağacının Yapısal Bileşenleri
Bir karar ağacını doğru analiz edebilmek için onu oluşturan parçaları iyi tanımak gerekir. Algoritma, veriyi bölmek için belirli bir hiyerarşi kullanır. Bu hiyerarşideki her noktanın özel bir adı ve görevi vardır.
- Kök Düğüm (Root Node): Ağacın en tepesindeki başlangıç noktasıdır. Tüm veri setini temsil eder ve ilk bölme işlemi burada gerçekleşir.
- İç Düğümler (Decision Nodes): Bir özelliğe (feature) dayalı olarak verinin iki veya daha fazla kola ayrıldığı karar noktalarıdır.
- Dallar (Branches): Bir düğümden çıkan ve belirli bir koşulu temsil eden bağlantı yollarıdır.
- Yaprak Düğümler (Leaf Nodes): Ağacın en ucunda yer alan ve artık bölünmeyen son noktalardır. Bu düğümler nihai sınıfı veya tahmin edilen değeri temsil eder.
Veri Nasıl Bölünür? Matematiksel Kriterler
Karar ağacı oluşturulurken en kritik soru şudur: “Hangi özelliği en üste koymalıyım ve veriyi nereden bölmeliyim?” Bu sorunun cevabı, istatistiksel hesaplamalarda gizlidir. Algoritma, veriyi en saf (pure) hale getirecek bölme işlemini arar.
1. Entropi ve Bilgi Kazancı (Information Gain)
Entropi, bir sistemdeki belirsizliğin veya rastgeleliğin ölçüsüdür. Eğer bir veri kümesindeki tüm örnekler aynı sınıfa aitse entropi 0’dır; ancak örnekler eşit dağılmışsa belirsizlik en yüksek seviyededir. Bilgi Kazancı, bir özelliği kullanarak veriyi böldüğümüzde entropide ne kadar azalma olduğunu ölçer. Algoritma, bilgi kazancı en yüksek olan özelliği seçerek bölme işlemini yapar.
2. Gini Safsızlığı (Gini Impurity)
Gini indeksi, bir veri kümesinden rastgele seçilen bir öğenin yanlış sınıflandırılma olasılığını ölçer. Genellikle CART (Classification and Regression Trees) algoritmalarında kullanılır. Gini değeri ne kadar düşükse, o düğüm o kadar saftır. Hesaplaması entropiye göre daha hızlı olduğu için büyük veri setlerinde sıkça tercih edilir.
| Kriter | Kullanım Amacı | Öne Çıkan Özelliği |
|---|---|---|
| Entropi | Belirsizliği ölçmek | Matematiksel olarak daha detaylıdır. |
| Bilgi Kazancı | En iyi özelliği seçmek | Entropideki düşüşe odaklanır. |
| Gini Safsızlığı | Hızlı hesaplama | Daha düşük işlem yükü gerektirir. |
Aşırı Öğrenme ve Budama (Pruning) Stratejileri
Bir karar ağacı, her bir veri örneği için ayrı bir yaprak oluşturacak kadar derinleşebilir. Ancak bu, modelin genelleme yeteneğini yok eder. Gerçek hayattaki veriler gürültülüdür ve bu gürültünün modellenmesi istenmez. İşte bu noktada “Budama” tekniği devreye girer.
Budama, ağacın tahmin gücüne önemli bir katkı sağlamayan dalların temizlenmesi işlemidir. İki tür budama vardır: Ön Budama (Pre-pruning), ağaç henüz büyürken belirli bir derinlikte durdurulmasıdır. Son Budama (Post-pruning) ise ağaç tam olarak büyüdükten sonra etkisiz dalların budanmasıdır. Bu teknikler sayesinde daha sade, anlaşılır ve genelleyici modeller elde edilir.
Bir bankanın müşterilerine kredi verip vermeyeceğine karar veren bir ağaç düşünelim. İlk soru (Kök Düğüm): “Müşterinin geliri 20.000 TL’den fazla mı?”. Eğer cevap hayır ise, doğrudan “Red” cevabı verilebilir. Eğer evet ise, ikinci soru (İç Düğüm): “Kredi skoru 700’den yüksek mi?” sorulur. Bu soruların sonunda ulaşılan “Onay” veya “Red” etiketleri yaprak düğümlerdir.
Karar Ağaçlarının Avantajları ve Dezavantajları
Her algoritma gibi karar ağaçlarının da güçlü ve zayıf yönleri vardır. Bu algoritmayı seçmeden önce kullanım amacınıza uygunluğunu değerlendirmeniz gerekir.
Avantajları:
- Anlaşılabilirlik: Görselleştirilmesi ve mantığının açıklanması çok kolaydır.
- Veri Hazırlığı: Verilerin normalleştirilmesine veya ölçeklendirilmesine genellikle ihtiyaç duymaz.
- Karma Veri: Hem sayısal hem de kategorik verileri aynı anda işleyebilir.
- Hız: Büyük veri setlerinde tahminleme süreci oldukça hızlıdır.
Dezavantajları:
- Kararsızlık: Verideki küçük bir değişiklik, ağaç yapısının tamamen değişmesine neden olabilir.
- Aşırı Öğrenme Eğilimi: Sınırlandırılmadığında karmaşık modeller oluşturmaya meyillidir.
- Yanlılık (Bias): Bazı sınıflar veri setinde çok baskınsa, ağaç o sınıfa doğru yanlılık gösterebilir.
Öğrendiklerinizi Pekiştirin
Karar ağaçları algoritması, modern yapay zekanın temel taşlarından biridir. Bu yöntemi daha iyi kavramak için sadece teorik bilgileri okumak yeterli değildir; aynı zamanda farklı senaryolar üzerinde düşünmek ve hesaplama pratikleri yapmak gerekir. Aşağıdaki soruları yanıtlayarak konuyu ne kadar anladığınızı kontrol edebilirsiniz.
- Bir karar ağacında “Kök Düğüm” seçilirken neden Information Gain (Bilgi Kazancı) en yüksek olan özellik tercih edilir?
- Budama (Pruning) işleminin yapılmadığı bir karar ağacı, yeni gelen test verilerinde neden düşük başarı gösterebilir?
- Gini Safsızlığı değeri 0 olan bir yaprak düğüm ne anlama gelir?
- Entropi değeri 1 olan bir veri grubunun içeriği hakkında ne söylenebilir?
- Mantıksal Akış: Karar ağaçları, veriyi hiyerarşik sorularla bölerek sonuç üretir.
- Kilit Kavramlar: Kök, düğüm, yaprak ve dallar ağacın iskeletini oluşturur.
- Bölme Kriterleri: Entropi ve Gini, verinin saflığını ölçmek için kullanılan temel metriklerdir.
- Model Sağlığı: Aşırı öğrenmeyi önlemek için budama teknikleri hayati önem taşır.
- Uygulanabilirlik: Şeffaflık gerektiren (tıp, hukuk, finans) alanlarda en ideal modellerden biridir.
Bir Sonraki Adım
Karar ağaçlarının temelini öğrendikten sonra, bu algoritmanın geliştirilmiş versiyonları olan “Random Forest” (Rastgele Orman) ve “Gradient Boosting” gibi topluluk öğrenmesi (ensemble learning) yöntemlerini inceleyebilirsiniz. Tek bir ağaç bazen hata yapabilir, ancak binlerce ağacın bir araya gelerek oluşturduğu ormanlar, günümüzün en yüksek doğruluk oranına sahip yapay zeka modellerini oluşturur. Veri bilimi yolculuğunuzda bu temel bilgileri pratik projelerle desteklemeyi unutmayın!



