Utmaning: Justering av Hyperparametrar med RandomizedSearchCV
Principen för RandomizedSearchCV
liknar GridSearchCV
, men istället för att testa varje möjlig kombination utvärderas endast en slumpmässigt vald delmängd.
Till exempel innehåller följande param_grid
100 kombinationer:
param_grid = {
'n_neighbors': [1, 3, 5, 7, 9, 12, 15, 17, 20, 25],
'weights': ['distance', 'uniform'],
'p': [1, 2, 3, 4, 5]
}
GridSearchCV
skulle testa alla 100, vilket är tidskrävande. RandomizedSearchCV
kan istället utvärdera en mindre delmängd, t.ex. 20 slumpmässigt valda kombinationer. Detta minskar beräkningstiden och ger oftast resultat nära det bästa.
Antalet kombinationer som testas styrs av argumentet n_iter
(standardvärde är 10). I övrigt används det på samma sätt som GridSearchCV
.
Swipe to start coding
- Initiera ett
RandomizedSearchCV
-objekt med parametergriden och sättn_iter=20
. - Initiera ett
GridSearchCV
-objekt med samma parametergrid. - Träna båda sökobjekten med
.fit(X, y)
. - Skriv ut bästa estimatorn från grid search med
.best_estimator_
. - Skriv ut bästa poängen från randomized search med
.best_score_
.
Lösning
Du kan prova att köra koden flera gånger. Titta på skillnaden mellan de två poängen. Ibland kan poängen vara samma på grund av förekomsten av de bästa parametrarna bland kombinationerna som valts av RandomizedSearchCV
.
Tack för dina kommentarer!
single
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Awesome!
Completion rate improved to 3.13
Utmaning: Justering av Hyperparametrar med RandomizedSearchCV
Svep för att visa menyn
Principen för RandomizedSearchCV
liknar GridSearchCV
, men istället för att testa varje möjlig kombination utvärderas endast en slumpmässigt vald delmängd.
Till exempel innehåller följande param_grid
100 kombinationer:
param_grid = {
'n_neighbors': [1, 3, 5, 7, 9, 12, 15, 17, 20, 25],
'weights': ['distance', 'uniform'],
'p': [1, 2, 3, 4, 5]
}
GridSearchCV
skulle testa alla 100, vilket är tidskrävande. RandomizedSearchCV
kan istället utvärdera en mindre delmängd, t.ex. 20 slumpmässigt valda kombinationer. Detta minskar beräkningstiden och ger oftast resultat nära det bästa.
Antalet kombinationer som testas styrs av argumentet n_iter
(standardvärde är 10). I övrigt används det på samma sätt som GridSearchCV
.
Swipe to start coding
- Initiera ett
RandomizedSearchCV
-objekt med parametergriden och sättn_iter=20
. - Initiera ett
GridSearchCV
-objekt med samma parametergrid. - Träna båda sökobjekten med
.fit(X, y)
. - Skriv ut bästa estimatorn från grid search med
.best_estimator_
. - Skriv ut bästa poängen från randomized search med
.best_score_
.
Lösning
Du kan prova att köra koden flera gånger. Titta på skillnaden mellan de två poängen. Ibland kan poängen vara samma på grund av förekomsten av de bästa parametrarna bland kombinationerna som valts av RandomizedSearchCV
.
Tack för dina kommentarer!
Awesome!
Completion rate improved to 3.13single