Bagging-Hyperparameter abstimmen
Zwar kannst du einen Bagging-Classifier leicht mit den Standardparametern erstellen, es wird aber dringend empfohlen, diese zu optimieren, um die bestmögliche Leistung zu erzielen. Idealerweise geschieht das per K-Fold-Cross-Validation.
In dieser Übung schauen wir, ob wir die Modellleistung verbessern können, indem wir die Parameter des Bagging-Classifiers anpassen.
Hier übergeben wir außerdem den Parameter solver='liblinear' an LogisticRegression, um die Rechenzeit zu verkürzen.
Diese Übung ist Teil des Kurses
Ensemble-Methoden in Python
Anleitung zur Übung
- Erstelle einen Bagging-Classifier auf Basis der logistischen Regression mit
20Basis-Estimators,10maximalen Features,0.65(65 %) maximalen Stichproben (max_samples) und ziehe Stichproben ohne Zurücklegen. - Verwende
clf_bag, um die Labels des TestsetsX_testvorherzusagen.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Build a balanced logistic regression
clf_base = LogisticRegression(class_weight='balanced', solver='liblinear', random_state=42)
# Build and fit a bagging classifier with custom parameters
clf_bag = ____(____, ____, ____, ____, ____, random_state=500)
clf_bag.fit(X_train, y_train)
# Calculate predictions and evaluate the accuracy on the test set
y_pred = ____
print('Accuracy: {:.2f}'.format(accuracy_score(y_test, y_pred)))
# Print the classification report
print(classification_report(y_test, y_pred))