ソフト vs. ハード投票
これまでに、2種類のアンサンブル手法(Voting と Averaging(soft voting))を実践しました。どちらが良いのでしょうか?最適なのは両方を試して性能を比較することです。ここでは Game of Thrones のデータセットを使って確認してみましょう。
3つの個別分類器がすでに用意されています。
DecisionTreeClassifier(clf_dt)LogisticRegression(clf_lr)KNeighborsClassifier(clf_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))