アウト・オブ・バッグ(OOB)スコアを確認する
前の演習で作成したモデルのアウト・オブ・バッグ(OOB)スコアを確認してみましょう。
これまでは性能指標として F1 スコアを使ってきましたが、この演習では OOB スコアと比較しやすいように accuracy(正解率)を使います。
前の演習で作成した決定木分類器 clf_dt はワークスペースに用意されています。
pokemon データセットはすでに読み込まれており、学習用とテスト用に分割済みです。さらに、決定木分類器は学習済みで、ベース推定器として使える clf_dt が利用可能です。
この演習はコースの一部です
Pythonで学ぶアンサンブル手法
演習の手順
- 決定木をベース推定器にして、推定器を 21 個に設定した Bagging 分類器を作成します。今回は、
oob_scoreパラメータに引数を指定して、OOB スコアを使用してください。 - 分類器の OOB スコアを出力してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Build and train the bagging classifier
clf_bag = ____(
____,
____,
____,
random_state=500)
clf_bag.fit(X_train, y_train)
# Print the out-of-bag score
print('OOB-Score: {:.3f}'.format(____))
# Evaluate the performance on the test set to compare
pred = clf_bag.predict(X_test)
print('Accuracy: {:.3f}'.format(accuracy_score(y_test, pred)))