Karar Ağacı
Coddy'nin Makine Öğrenmesine Giriş kursunda ders 17 / 19.
Karar Ağacı (Decision Tree), hem sınıflandırma hem de regresyon görevleri için kullanılan doğrusal olmayan bir modeldir. Diğer algoritmalara göre insan karar verme sürecini daha yakından yansıtır, bu da onu karmaşık veri kümelerini işlemek için hem sezgisel hem de güçlü kılar. Temelinde, bir karar ağacı verileri bir dizi basit kural kullanarak alt kümelere ayırır; bu, veri noktalarının özellikleri hakkında bir dizi evet/hayır sorusu sormaya benzer.

Kaynak: wikipedia
Bir karar ağacını, şunların olduğu ağaç benzeri bir grafik olarak hayal edin:
- Her iç düğüm bir öznitelik üzerindeki bir "testi" temsil eder (örneğin, bir yazı tura atışının tura mı yoksa yazı mı geldiği),
- Her dal testin sonucunu temsil eder ve
- Her yaprak düğüm bir sınıf etiketini temsil eder (tüm öznitelikler hesaplandıktan sonra alınan karar).
Karar Ağacı Türleri:
- Sınıflandırma Ağaçları: Tahmin edilen sonuç verinin ait olduğu sınıf olduğunda kullanılır.
- Regresyon Ağaçları: Tahmin edilen sonuç gerçek bir sayı olarak kabul edilebildiğinde kullanılır (örneğin, bir evin fiyatı).
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Görev
OrtaAşağıdaki formatta bir kural listesi alan decide_outcome adında bir fonksiyon oluşturun:
rules = {
rule1: {"type": "bigger", "value": 5},
rule2: {"type": "smaller", "value": 7},
}Ve sonuç karşılandığında veya karşılanmadığında hangi kurala geçileceğini alan bir yapı:
outcome = {
"rule1": {True: "rule2", False: "rule3"},
"rule2": {True: "rule3", False: "rule4"},
"rule3": {True: None, False: None}
"rule4": {True: None, False: None}
}data_point = {
"rule1": 8,
"rule2": 10,
}Çıktı rule4 olmalıdır
8 is bigger than 5 (True)→ şuradanrule2kuralına git:"rule1": {True: "rule2", False: "rule3"},10 is smaller than 7 (False)→ şuradanrule4kuralına git:"rule2": {True: "rule3", False: "rule4"},- Devam etmek için başka bir yol yok, bu nedenle çıktı
rule4olur
Her zaman <strong>rule1</strong> kuralından başlayın
Kendin dene
def decide_outcome(rules, outcome, point):
current_rule = "rule1"
# Kodunuzu buraya yazınMakine Öğrenmesine Giriş bölümündeki tüm dersler
6Diğer Modeller
Lojistik RegresyonDoğrusal RegresyonKarar AğacıDestek Vektör Makinesi (SVM)Modeller SınavıKendi başına pratik yap: Online Python derleyicisi