Kom igångKom igång gratis

Automatisera val av hyperparametrar

Att hitta den bästa hyperparametern utan att behöva skriva hundratals rader kod för hundratals modeller är en viktig effektivitetsvinst som kommer att underlätta ditt framtida arbete med maskininlärningsmodeller.

En viktig hyperparameter för GBM-algoritmen är inlärningshastigheten. Men vilken inlärningshastighet passar bäst för det här problemet? Genom att skriva en loop som söker igenom ett antal möjligheter, sammanställer resultaten och visualiserar dem kan du hitta det bästa värdet.

Möjliga inlärningshastigheter att prova: 0,001, 0,01, 0,05, 0,1, 0,2 och 0,5

Du har tillgång till datamängderna X_train, X_test, y_train och y_test, och GradientBoostingClassifier har redan importerats åt dig.

Den här övningen är en del av kursen

Hyperparameterjustering i Python

Visa kurs

Övningsinstruktioner

  • Skapa en lista learning_rates med inlärningshastigheterna och en lista results_list för att lagra noggrannhetspoängen från dina förutsägelser.
  • Skriv en loop som skapar en GBM-modell för varje inlärningshastighet och genererar förutsägelser för varje modell.
  • Spara inlärningshastigheten och noggrannhetspoängen i results_list.
  • Omvandla resultatlistan till en DataFrame och skriv ut den.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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)
Redigera och kör kod