開始使用免費開始

Soft 與 hard voting

你已經練習過兩種集成方法:Voting 與 Averaging(soft voting)。哪一個比較好?最好的做法是兩個都試試看,然後比較它們的效能。現在就用《冰與火之歌》資料集來實作看看。

我們已為你建立了三個個別的分類器:

  • 一個 DecisionTreeClassifierclf_dt)。
  • 一個 LogisticRegressionclf_lr)。
  • 一個 KNeighborsClassifierclf_knn)。

你的任務是同時嘗試 voting 與 averaging,判斷哪一個表現較佳。

本練習屬於課程

Python 的 Ensemble 方法

檢視課程

練習說明

  • 準備由 (string, estimator) 組成的 tuple 清單。將 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))
編輯並執行程式碼