Visualisering av Coarse to Fine
Nu ska du genomföra den första delen av en Coarse to Fine-sökning. Det innebär att du analyserar resultaten från en inledande slumpmässig sökning som utfördes över ett stort sökutrymme, och sedan avgör vilket logiskt nästa steg är för att göra hyperparametersökningen mer finkornad.
Du har tillgång till:
combinations_list– en lista över de möjliga hyperparameterkombinationer som den slumpmässiga sökningen utfördes på.results_df– en DataFrame med varje hyperparameterkombination och den resulterande noggrannheten för samtliga 500 försök. Varje hyperparameter är en kolumn, där rubriken är hyperparameterns namn.visualize_hyperparameter()– en funktion som tar emot en kolumn i DataFrame (som en sträng) och skapar ett spridningsdiagram över kolumnens värden jämfört med noggrannhetspoängen. Ett exempel på ett anrop ärvisualize_hyperparameter('accuracy')
Om du vill se definitionen av funktionen visualize_hyperparameter() kan du köra följande kod:
import inspect
print(inspect.getsource(visualize_hyperparameter))
Den här övningen är en del av kursen
Hyperparameterjustering i Python
Övningsinstruktioner
- Bekräfta (genom att skriva ut) storleken på
combinations_list, vilket motiverar behovet av att börja med en slumpmässig sökning. - Sortera
results_dfefter noggrannhetsvärden och skriv ut de 10 översta raderna. Finns det tydliga mönster? Tänk på att urvalet är litet! - Bekräfta (genom att skriva ut) vilka hyperparametrar som användes i sökningen. Det är kolumnnamnen i
results_df. - Anropa
visualize_hyperparameter()med varje hyperparameter i tur och ordning (max_depth,min_samples_leaf,learn_rate). Går det att se några trender?
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Confirm the size of the combinations_list
print(____(____))
# Sort the results_df by accuracy and print the top 10 rows
print(results_df.____(by=____, ascending=False).head(____))
# Confirm which hyperparameters were used in this search
print(results_df.____)
# Call visualize_hyperparameter() with each hyperparameter in turn
visualize_hyperparameter(____)
visualize_hyperparameter(____)
visualize_hyperparameter(____)