IniziaInizia gratis

Automatizzare la scelta degli iperparametri

Trovare il miglior iperparametro d’interesse senza scrivere centinaia di righe di codice per centinaia di modelli è un importante guadagno di efficienza che ti aiuterà molto nelle future attività di costruzione di modelli di machine learning.

Un iperparametro importante per l’algoritmo GBM è il learning rate. Ma qual è il learning rate migliore per questo problema? Scrivendo un ciclo che esplori diverse possibilità, raccogliendo e visualizzando i risultati, puoi trovare quello ottimale.

Learning rate possibili da provare: 0.001, 0.01, 0.05, 0.1, 0.2 e 0.5.

Hai a disposizione gli insiemi di dati X_train, X_test, y_train e y_test, e GradientBoostingClassifier è già stato importato per te.

Questo esercizio fa parte del corso

Ottimizzazione degli iperparametri in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Crea una lista learning_rates per i learning rate e una results_list per memorizzare l’accuracy delle tue previsioni.
  • Scrivi un ciclo per creare un modello GBM per ciascun learning rate indicato e genera le previsioni per ogni modello.
  • Salva il learning rate e l’accuracy in results_list.
  • Trasforma results_list in un DataFrame e stampalo.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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)
Modifica ed esegui il codice