AdaBoost
- Makine Öğrenmesi kursu
- Orta seviye
- Ders 42/112
- 5 dk
AdaBoost, hatalı örneklerin ağırlığını artırarak sonraki modeli yönlendirir.
AdaBoost
AdaBoost her turda yanlış sınıflanan örneklerin ağırlığını artırır; bir sonraki zayıf öğrenici bu "zor" örneklere daha çok dikkat eder. Her öğrenicinin oyu, ne kadar isabetli olduğuna göre ağırlıklandırılır:
ada = AdaBoostClassifier(
estimator=DecisionTreeClassifier(max_depth=1),
n_estimators=200, learning_rate=0.5, random_state=0)
ada.fit(X_train, y_train)
print(ada.estimator_weights_[:5]) # öğrenici oy ağırlıklarıAğırlık artırma yüzünden AdaBoost etiket gürültüsüne ve aykırı değerlere duyarlıdır: yanlış etiketli bir örnek giderek daha çok önemsenir.
Hata ve oy ağırlığı
İkili AdaBoost'ta hatası ε olan bir öğrenicinin oy ağırlığı α = ½·ln((1-ε)/ε)'dir. ε = 0.5 (rastgele) ise α = 0: oy etkisizdir. Hata azaldıkça oy ağırlığı artar:
import numpy as np
for e in [0.45, 0.3, 0.1]:
print(e, round(0.5 * np.log((1 - e) / e), 3))Bu yüzden zayıf öğrenicinin rastgeleden biraz iyi olması yeterlidir; katkısı ona göre ayarlanır.
Uygulama Oy ağırlıkları
Hata oranları [0.45, 0.3, 0.1] için oy ağırlığını 0.5 * np.log((1 - e) / e) ile hesaplayıp np.round(..., 3) ile yazdır.
Başlangıç kodu
import numpy as np
e = np.array([0.45, 0.3, 0.1])
# buraya yazÖrnek çözüm
import numpy as np
e = np.array([0.45, 0.3, 0.1])
alfa = 0.5 * np.log((1 - e) / e)
print(np.round(alfa, 3))Beklenen çıktı
[0.1 0.424 1.099]
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 AdaBoost'ta yanlış sınıflanan bir örneğe sonraki turda ne olur?
- Ağırlığı artar Doğru cevap
- Veriden çıkarılır
- Ağırlığı azalır
- Etiketi değiştirilir
Açıklama: Sonraki öğrenici bu örneği doğru sınıflamaya daha çok zorlanır.
2 Zayıf öğrenici olarak stump ver.
ada = AdaBoostClassifier(____=DecisionTreeClassifier(max_depth=1))
ada = AdaBoostClassifier(estimator=DecisionTreeClassifier(max_depth=1))
Açıklama: estimator parametresi her turda kopyalanacak modeldir.
3 Kavramları eşleştir.
| Kavram | Anlamı |
|---|---|
örnek ağırlığı |
Zor örneklerde artar |
α |
Öğrenicinin oy ağırlığı |
ε = 0.5 |
Oy ağırlığı 0 |
etiket gürültüsü |
AdaBoost'un zayıflığı |