CodeBlanks Logo Icon CodeBlanks

Özet - Karar ağaçları

Bu grupta karar ağaçlarını, bölme kriterlerini ve aşırı öğrenmeyi öğrendin.

Özet: karar ağaçları

Bu grupta:

  • Ağaç, veriyi evet/hayır sorularıyla böler; yapraklar karar verir, kurallar export_text ile okunur.
  • Bölmeler Gini (varsayılan) ya da entropiyle seçilir.
  • max_depth, min_samples_leaf, ccp_alpha ağacı sınırlar.
  • Sınırsız ağaç aşırı öğrenir; eğitim-test farkı bunun işaretidir.
  • Ölçeklendirme gerekmez; feature_importances_ özellik katkılarını verir.

Tek ağaçların kararsızlığı, ileride göreceğin random forest ve boosting ile giderilir.

Uygulama Ağaç regresyonu

DecisionTreeRegressor(max_depth=1) eğit. Tek bölme olduğu için yalnızca iki farklı tahmin vardır; [[2], [8]] için tahminleri yazdır.

Başlangıç kodu

model.py
from sklearn.tree import DecisionTreeRegressor

X = [[1], [2], [3], [7], [8], [9]]
y = [10, 12, 11, 30, 32, 31]

# buraya yaz

Örnek çözüm

model.py
from sklearn.tree import DecisionTreeRegressor

X = [[1], [2], [3], [7], [8], [9]]
y = [10, 12, 11, 30, 32, 31]

m = DecisionTreeRegressor(max_depth=1).fit(X, y)
print(m.predict([[2], [8]]))

Beklenen çıktı

[11. 31.]

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Hangi model ölçeklendirmeye ihtiyaç duymaz?

  • Mesafe tabanlı her model
  • Karar ağacı Doğru cevap
  • KNN
  • Ölçeksiz Ridge

Açıklama: Ağaç her özelliği ayrı bir eşikle karşılaştırır; birimler kararı değiştirmez.

2 Her yaprakta en az 5 örnek olsun.

Soru
m = DecisionTreeClassifier(____=5)
Cevap
m = DecisionTreeClassifier(min_samples_leaf=5)

Açıklama: min_samples_leaf küçük, aşırı uzmanlaşmış yaprakları engeller.

3 Kavramları eşleştir.

Kavram Anlamı
Gini Safsızlık ölçüsü
export_text Kuralları yazdırır
ccp_alpha Budama gücü
DecisionTreeRegressor Yaprakta ortalama

Başlangıç bölümündeki tüm dersler