← Projeler

/proje detayları

Gini Index ile Decision Tree Classification

Gini impurity'nin threshold selection ve decision-tree classification süreçlerini nasıl yönlendirdiğini açıklayan yeniden üretilebilir bir machine-learning projesi.

Gini Index ile Decision Tree Classification visual

Bu proje, karar ağaçlarının arkasındaki temel bölme kriterlerinden biri olan Gini impurity kavramını açıklamaya odaklanmaktadır. Amaç, modeli bir black box olarak sunmak yerine, Gini impurity'nin nasıl çalıştığını adım adım ve sezgisel biçimde göstermektir.

Bu doğrultuda Gini impurity değeri önce manuel olarak hesaplanmakta ve tek bir feature için olası threshold değerleri sistematik olarak taranmaktadır. Böylece hangi eşik değerinin en iyi veri ayrımını sağladığı açık biçimde ortaya konur.

Yeniden üretilebilir sürümde Breast Cancer Wisconsin Dataset kullanılmaktadır. Bu sayede harici veri indirme veya özel CSV dosyalarına ihtiyaç duyulmadan, tamamen reproducible bir yapı sağlanmaktadır.

Threshold taramasının ardından, Gini kriterine dayalı bir DecisionTreeClassifier modeli 10 stratified train/test ayrımı üzerinde eğitilmektedir. Model performansı accuracy, precision, recall, specificity, F1 skoru ve aggregated confusion matrix ile kapsamlı biçimde değerlendirilmektedir.

Öne çıkanlar

  • Gini impurity ve weighted threshold skorlamasını sıfırdan implemente ettim.
  • Mean radius özelliği için en iyi threshold değerini görselleştirerek analiz ettim.
  • Gini kriterini kullanan, maksimum derinliği 3 olan bir karar ağacını 10 tekrarlı veri bölmesi üzerinde eğittim.
  • Yeniden üretilebilir demo kapsamında ortalama accuracy yaklaşık 0.94 ve ortalama F1 skoru yaklaşık 0.95 elde ettim.
  • Projeyi, karar ağaçlarının nasıl çalıştığını açıklayan yorumlanabilir bir machine-learning örneği olarak yapılandırdım.

Figürler