Pythonで学ぶアンサンブル手法
Román de las Heras
Data Scientist, Appodeal
異種アンサンブル関数
het_est = HeterogeneousEnsemble(
estimators=[('est1', est1), ('est2', est2), ...],
# additional parameters
)
同種アンサンブル関数
hom_est = HomogeneousEnsemble(
est_base,
n_estimators=chosen_number,
# additional parameters
)
Bagging Classifier の例:
# 基本推定器(「弱学習器」)を用意
clf_dt = DecisionTreeClassifier(max_depth=3)
# 推定器5個で Bagging 分類器を構築
clf_bag = BaggingClassifier(
clf_dt,
n_estimators=5
)
# 学習データで Bagging を学習
clf_bag.fit(X_train, y_train)
# テストデータで予測
y_pred = clf_bag.predict(X_test)
Bagging Regressor の例:
# 基本推定器(「弱学習器」)を用意
reg_lr = LinearRegression()
# 推定器10個で Bagging 回帰器を構築
reg_bag = BaggingRegressor(
reg_lr
)
# 学習データで Bagging を学習
reg_bag.fit(X_train, y_train)
# テストデータで予測
y_pred = reg_bag.predict(X_test)
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で学ぶアンサンブル手法