LoslegenKostenlos loslegen

Ein komplexeres Bagging-Modell

Nachdem du die Halbleiterdaten erkundet hast, bauen wir jetzt einen Bagging-Classifier, um das Label 'Pass/Fail' anhand der Eingangsmerkmale vorherzusagen.

Der vorverarbeitete Datensatz steht dir in deinem Workspace als uci_secom zur Verfügung, und Trainings- sowie Testsets wurden bereits für dich erstellt.

Da das Zielmerkmal stark unausgewogen ist, verwende hier eine "balanced" Logistic Regression als Basis-Schätzer.

Außerdem verkürzen wir die Rechenzeit für LogisticRegression mit dem Parameter solver='liblinear', einem schnelleren Optimierer als der Standard.

Diese Übung ist Teil des Kurses

Ensemble-Methoden in Python

Kurs anzeigen

Anleitung zur Übung

  • Instanziiere eine Logistic Regression als Basis-Classifier mit den Parametern: class_weight='balanced', solver='liblinear' und random_state=42.
  • Baue einen Bagging-Classifier unter Verwendung der Logistic Regression als Basis-Schätzer, gib die maximale Anzahl an Merkmalen als 10 an und aktiviere den Out-of-Bag-Score.
  • Gib den Out-of-Bag-Score aus, um ihn mit der Accuracy zu vergleichen.

Interaktive Übung

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

# Build a balanced logistic regression
clf_lr = ____

# Build and fit a bagging classifier
clf_bag = ____(____, ____, ____, random_state=500)
clf_bag.fit(X_train, y_train)

# Evaluate the accuracy on the test set and show the out-of-bag score
pred = clf_bag.predict(X_test)
print('Accuracy:  {:.2f}'.format(accuracy_score(y_test, pred)))
print('OOB-Score: {:.2f}'.format(____))

# Print the confusion matrix
print(confusion_matrix(y_test, pred))
Code bearbeiten und ausführen