ÎncepețiÎncepe gratuit

Automatizarea alegerii hiperparametrilor

Găsirea celui mai bun hiperparametru fără a scrie sute de linii de cod pentru sute de modele reprezintă un câștig important de eficiență, care îți va fi de mare ajutor în viitor când construiești modele de machine learning.

Un hiperparametru important pentru algoritmul GBM este rata de învățare. Dar care rată de învățare este cea mai potrivită pentru această problemă? Scriind o buclă care parcurge mai multe variante, le centralizezi și le analizezi pentru a o identifica pe cea mai bună.

Ratele de învățare posibile de încercat sunt: 0,001, 0,01, 0,05, 0,1, 0,2 și 0,5.

Vei avea la dispoziție seturile de date X_train, X_test, y_train și y_test, iar GradientBoostingClassifier a fost deja importat pentru tine.

Acest exercițiu face parte din cursul

Ajustarea hiperparametrilor în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Creează o listă learning_rates pentru ratele de învățare și o listă results_list pentru a stoca scorul de acuratețe al predicțiilor.
  • Scrie o buclă care creează un model GBM pentru fiecare rată de învățare menționată și generează predicții pentru fiecare model.
  • Salvează rata de învățare și scorul de acuratețe în results_list.
  • Transformă lista de rezultate într-un DataFrame și afișeaz-o.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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)
Editează și rulează codul