始める無料で始める

Bagging のハイパーパラメータを調整する

デフォルトのパラメータでも bagging classifier は簡単に構築できますが、最適な性能を出すにはパラメータ調整を行うことを強くおすすめします。理想的には、K-fold 交差検証で最適化すべきです。

この演習では、bagging classifier のパラメータを変更してモデル性能を改善できるか試してみます。

また、計算時間を短縮するために、LogisticRegression には solver='liblinear' を渡しています。

この演習はコースの一部です

Pythonで学ぶアンサンブル手法

コースを見る

演習の手順

  • ロジスティック回帰をベース学習器として用いた bagging classifier を構築し、ベース推定器を 20 個、最大特徴量数を 10、最大サンプル数(max_samples)を 0.65(65%)、サンプルは非復元抽出(置き換えなし)にします。
  • clf_bag を使ってテストセット X_test のラベルを予測します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Build a balanced logistic regression
clf_base = LogisticRegression(class_weight='balanced', solver='liblinear', random_state=42)

# Build and fit a bagging classifier with custom parameters
clf_bag = ____(____, ____, ____, ____, ____, random_state=500)
clf_bag.fit(X_train, y_train)

# Calculate predictions and evaluate the accuracy on the test set
y_pred = ____
print('Accuracy:  {:.2f}'.format(accuracy_score(y_test, y_pred)))

# Print the classification report
print(classification_report(y_test, y_pred))
コードを編集して実行