BaggingClassifier: основи та деталі

Ансамблеві методи в Python

Román de las Heras

Data Scientist, Appodeal

Різнорідні vs однорідні функції

Функція різнорідного ансамблю

het_est = HeterogeneousEnsemble(
    estimators=[('est1', est1), ('est2', est2), ...],
    # additional parameters
)

Функція однорідного ансамблю

hom_est = HomogeneousEnsemble(
    est_base,
    n_estimators=chosen_number,
    # additional parameters
)
Ансамблеві методи в Python

BaggingClassifier

Приклад Bagging Classifier:

# Instantiate the base estimator ("weak" model)
clf_dt = DecisionTreeClassifier(max_depth=3)
# Build the Bagging classifier with 5 estimators
clf_bag = BaggingClassifier(
    clf_dt,
    n_estimators=5
)
# Fit the Bagging model to the training set
clf_bag.fit(X_train, y_train)
# Make predictions on the test set
y_pred = clf_bag.predict(X_test)
Ансамблеві методи в Python

BaggingRegressor

Приклад Bagging Regressor:

# Instantiate the base estimator ("weak" model)
reg_lr = LinearRegression()
# Build the Bagging regressor with 10 estimators
reg_bag = BaggingRegressor(
    reg_lr
)
# Fit the Bagging model to the training set
reg_bag.fit(X_train, y_train)
# Make predictions on the test set
y_pred = reg_bag.predict(X_test)
Ансамблеві методи в Python

Out-of-bag оцінка

  • Обчисліть індивідуальні передбачення для всіх оцінювачів, де екземпляр був поза вибіркою
  • Об'єднайте індивідуальні передбачення
  • Оцініть метрику на цих передбаченнях:
    • Класифікація: accuracy
    • Регресія: R^2
clf_bag = BaggingClassifier(
    clf_dt,
    oob_score=True
)
clf_bag.fit(X_train, y_train)
print(clf_bag.oob_score_)
0.9328125
pred = clf_bag.predict(X_test)
print(accuracy_score(y_test, pred))
0.9625
Ансамблеві методи в Python

Тепер ваша черга!

Ансамблеві методи в Python

Preparing Video For Download...