Ein erster Versuch mit mlxtend
Es ist Zeit, mit mlxtend zu arbeiten! Du verwendest weiterhin den Datensatz mit App-Bewertungen. Da du bereits ein gestapeltes Ensemblemodell mit scikit-learn gebaut hast, hast du eine Grundlage zum Vergleich mit dem Modell, das du jetzt mit mlxtend erstellst.
Der Datensatz ist geladen und als apps verfügbar.
Schauen wir, ob mlxtend ein Modell bauen kann, das genauso gut ist wie oder sogar besser als der Ensemble-Classifier aus scikit-learn.
Diese Übung ist Teil des Kurses
Ensemble-Methoden in Python
Anleitung zur Übung
- Instanziiere einen Entscheidungsbaum-Classifier mit
min_samples_leaf = 3undmin_samples_split = 9. - Instanziiere einen 5-Nearest-Neighbors-Classifier mit dem Algorithmus
'ball_tree'. - Baue einen
StackingClassifierund übergib: die Liste der Classifier, den Meta-Classifier,use_probas=True(zur Nutzung von Wahrscheinlichkeiten) unduse_features_in_secondary = False(um nur die einzelnen Vorhersagen zu verwenden). - Bewerte die Performance, indem du den Accuracy-Score berechnest.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Instantiate the first-layer classifiers
clf_dt = ____(____, ____, random_state=500)
clf_knn = ____
# Instantiate the second-layer meta classifier
clf_meta = LogisticRegression()
# Build the Stacking classifier
clf_stack = ____
clf_stack.____
# Evaluate the performance of the Stacking classifier
pred_stack = ____
print("Accuracy: {:0.4f}".format(accuracy_score(y_test, pred_stack)))