Bagging: scikit-learn 流
それでは、scikit-learn の BaggingClassifier をポケモンのデータセットに適用してみましょう。
カスタムのバギングアンサンブルでは、F1 スコアはおよそ 0.63 でした。
BaggingClassifier() はそれを上回れるでしょうか?試してみましょう!
この演習はコースの一部です
Pythonで学ぶアンサンブル手法
演習の手順
- ベースモデル
clf_dt(最大深さ 4 の「制約付き」決定木)をインスタンス化します。 - 決定木をベース推定器として、推定器を 21 個用いたバギング分類器を構築します。
- テストセットのラベルを予測します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Instantiate the base model
clf_dt = ____
# Build the Bagging classifier
clf_bag = ____(____, ____, random_state=500)
# Fit the Bagging model to the training set
clf_bag.fit(X_train, y_train)
# Predict the labels of the test set
pred = ____
# Show the F1-score
print('F1-Score: {:.3f}'.format(f1_score(y_test, pred)))