Adaptive boosting: nagradzany model

Metody zespołowe w Pythonie

Román de las Heras

Data Scientist, Appodeal

Nagradzany model

O AdaBoost:

  • Zaproponowany przez Yoava Freunda i Roberta Schapire'a (1997)
  • Laureat Nagrody Gödla (2003)
  • Pierwszy praktyczny algorytm boostingu
  • Powszechnie stosowana metoda zespołowa

Nagroda Gödla

Metody zespołowe w Pythonie

Właściwości AdaBoost

  1. Próbki są losowane zgodnie z rozkładem wag
    • Trudniejsze próbki mają wyższe wagi
    • Na początku wagi są równe
  2. Estymatory są łączone ważonym głosowaniem większościowym
    • Lepsze estymatory otrzymują wyższe wagi
  3. Gwarantowana poprawa
  4. Klasyfikacja i regresja

Próbkowanie AdaBoost

Metody zespołowe w Pythonie

Klasyfikator AdaBoost w scikit-learn

AdaBoostClassifier

from sklearn.ensemble import AdaBoostClassifier
clf_ada = AdaBoostClassifier(
   base_estimator,
   n_estimators,
   learning_rate
)

Parametry

  • base_estimator
    • Domyślnie: drzewo decyzyjne (max_depth=1)
  • n_estimators
    • Domyślnie: 50
  • learning_rate
    • Domyślnie: 1.0
    • Kompromis między n_estimators a learning_rate
Metody zespołowe w Pythonie

Regresor AdaBoost w scikit-learn

AdaBoostRegressor

from sklearn.ensemble import AdaBoostRegressor
reg_ada = AdaBoostRegressor(
   base_estimator,
   n_estimators,
   learning_rate,
   loss
)

Parametry

  • base_estimator
    • Domyślnie: drzewo decyzyjne (max_depth=3)
  • loss
    • liniowa (domyślnie)
    • kwadratowa
    • wykładnicza
Metody zespołowe w Pythonie

Czas na ćwiczenia!

Metody zespołowe w Pythonie

Preparing Video For Download...