Soft vs. hard voting
Je hebt nu geoefend met twee soorten ensemblemethoden: Voting en Averaging (soft voting). Welke is beter? Het is het beste om ze allebei te proberen en vervolgens hun prestaties te vergelijken. Dat ga je nu doen met de Game of Thrones-gegevensset.
Er zijn drie individuele classifiers voor je geïnstantieerd:
- Een
DecisionTreeClassifier(clf_dt). - Een
LogisticRegression(clf_lr). - Een
KNeighborsClassifier(clf_knn).
Jouw taak is om zowel voting als averaging te proberen om te bepalen welke beter is.
Deze oefening maakt deel uit van de cursus
Ensemblemethoden in Python
Oefeninstructies
- Bereid de lijst met
(string, estimator)-tuples voor. Gebruik'dt'als label voorclf_dt,'lr'voorclf_lren'knn'voorclf_knn. - Bouw een voting-classifier met de naam
clf_vote. - Bouw een averaging-classifier met de naam
clf_avg.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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))