LoslegenKostenlos loslegen

Soft vs. Hard Voting

Du hast jetzt geübt, zwei Arten von Ensemble-Methoden zu bauen: Voting und Averaging (Soft Voting). Welche ist besser? Am besten probierst du beide aus und vergleichst anschließend ihre Performance. Genau das machen wir jetzt mit dem Game-of-Thrones-Datensatz.

Drei einzelne Klassifikatoren wurden bereits für dich instanziiert:

  • Ein DecisionTreeClassifier (clf_dt).
  • Eine LogisticRegression (clf_lr).
  • Ein KNeighborsClassifier (clf_knn).

Deine Aufgabe ist es, sowohl Voting als auch Averaging auszuprobieren und festzustellen, was besser abschneidet.

Diese Übung ist Teil des Kurses

Ensemble-Methoden in Python

Kurs anzeigen

Anleitung zur Übung

  • Bereite die Liste der (string, estimator)-Tupel vor. Verwende 'dt' als Label für clf_dt, 'lr' für clf_lr und 'knn' für clf_knn.
  • Baue einen Voting-Klassifikator namens clf_vote.
  • Baue einen Averaging-Klassifikator namens clf_avg.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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))
Code bearbeiten und ausführen