LoslegenKostenlos starten

Hyperparameterwahl automatisieren

Den besten Hyperparameter zu finden, ohne Hunderte Zeilen Code für Hunderte Modelle zu schreiben, ist ein wichtiger Effizienzgewinn, der dir beim zukünftigen Aufbau von Machine-Learning-Modellen sehr hilft.

Ein wichtiger Hyperparameter für das GBM-Verfahren ist die Lernrate (learning rate). Aber welche Lernrate ist für dieses Problem am besten? Indem du eine Schleife schreibst, die mehrere Werte ausprobiert, diese sammelst und anschaust, kannst du die beste finden.

Mögliche Lernraten zum Ausprobieren sind 0.001, 0.01, 0.05, 0.1, 0.2 und 0.5

Dir stehen die Datensätze X_train, X_test, y_train und y_test zur Verfügung, und GradientBoostingClassifier wurde bereits für dich importiert.

Diese Übung ist Teil des Kurses

<Kurs>Hyperparameter-Tuning in Python</Kurs>
Kurs ansehen

Übungsanweisungen

  • Erstelle eine Liste learning_rates für die Lernraten und eine results_list, um den Accuracy-Score deiner Vorhersagen zu speichern.
  • Schreibe eine Schleife, die für jede genannte Lernrate ein GBM-Modell erstellt und Vorhersagen erzeugt.
  • Speichere die Lernrate und den Accuracy-Score in einer results_list.
  • Wandle die Ergebnisliste in ein DataFrame um und gib es aus.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# Set the learning rates & results storage
learning_rates = ____
results_list = ____

# Create the for loop to evaluate model predictions for each learning rate
for learning_rate in ____:
    model = ____(learning_rate=____)
    predictions = ____.fit(____, ____).predict(____)
    # Save the learning rate and accuracy score
    results_list.append([____, accuracy_score(y_test, ____)])

# Gather everything into a DataFrame
results_df = pd.DataFrame(____, columns=['learning_rate', 'accuracy'])
print(results_df)
Code bearbeiten und ausführen