始める無料で始める

ソフト vs. ハード投票

これまでに、2種類のアンサンブル手法(Voting と Averaging(soft voting))を実践しました。どちらが良いのでしょうか?最適なのは両方を試して性能を比較することです。ここでは Game of Thrones のデータセットを使って確認してみましょう。

3つの個別分類器がすでに用意されています。

  • DecisionTreeClassifierclf_dt
  • LogisticRegressionclf_lr
  • KNeighborsClassifierclf_knn

あなたの課題は、voting と averaging の両方を試して、どちらがより良いかを判断することです。

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

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

コースを見る

演習の手順

  • (string, estimator) のタプルからなるリストを準備します。clf_dt には 'dt'clf_lr には 'lr'clf_knn には 'knn' をラベルとして使います。
  • clf_vote という名前の voting 分類器を作成します。
  • clf_avg という名前の averaging 分類器を作成します。

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

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

# List of (string, estimator) tuples
estimators = ____

# Build and fit a voting classifier
clf_vote = ____
clf_vote.fit(X_train, y_train)

# Build and fit an averaging classifier
clf_avg = ____
clf_avg.fit(X_train, y_train)

# Evaluate the performance of both models
acc_vote = accuracy_score(y_test, clf_vote.predict(X_test))
acc_avg = accuracy_score(y_test,  clf_avg.predict(X_test))
print('Voting: {:.2f}, Averaging: {:.2f}'.format(acc_vote, acc_avg))
コードを編集して実行