Aan de slagGa gratis aan de slag

Hyperparameterkeuze automatiseren

De beste hyperparameter vinden zonder honderden regels code te schrijven voor honderden modellen levert een belangrijke efficiencyslag op die je toekomstige Machine Learning-modellen sterk zal helpen.

Een belangrijke hyperparameter voor het GBM-algoritme is de learning rate. Maar welke learning rate is hier het beste? Door een lus te schrijven die verschillende mogelijkheden doorzoekt, deze te bundelen en te bekijken, kun je de beste vinden.

Mogelijke learning rates om te proberen zijn 0.001, 0.01, 0.05, 0.1, 0.2 en 0.5

Je krijgt X_train, X_test, y_train en y_test beschikbaar, en GradientBoostingClassifier is al voor je geïmporteerd.

Deze oefening maakt deel uit van de cursus

Hyperparameter Tuning in Python

Cursus bekijken

Oefeninstructies

  • Maak een lijst learning_rates voor de learning rates en een results_list om de nauwkeurigheidsscore van je voorspellingen in op te slaan.
  • Schrijf een lus die voor elke genoemde learning rate een GBM-model maakt en voor elk model voorspellingen genereert.
  • Sla de learning rate en de nauwkeurigheidsscore op in results_list.
  • Zet de resultatenlijst om in een DataFrame en print deze uit.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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 bewerken en uitvoeren