Udfordring: Justering af Hyperparametre med RandomizedSearchCV
Princippet bag RandomizedSearchCV ligner GridSearchCV, men i stedet for at teste alle mulige kombinationer, evalueres kun et tilfældigt udvalgt delmængde.
For eksempel indeholder følgende 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 ville teste alle 100, hvilket er tidskrævende. RandomizedSearchCV kan i stedet evaluere en mindre delmængde, f.eks. 20 tilfældigt valgte kombinationer. Dette reducerer beregningstiden og giver som regel resultater tæt på det bedste.
Antallet af kombinationer, der testes, styres af argumentet n_iter (standard er 10). Derudover er anvendelsen den samme som med GridSearchCV.
Swipe to start coding
- Initialiser et
RandomizedSearchCV-objekt med parametergrid og sætn_iter=20. - Initialiser et
GridSearchCV-objekt med samme parametergrid. - Træn begge søgeobjekter ved hjælp af
.fit(X, y). - Udskriv bedste estimator fra grid search med
.best_estimator_. - Udskriv bedste score fra randomized search med
.best_score_.
Løsning
Du kan prøve at køre koden flere gange. Se på forskellen mellem de to scorer. Nogle gange kan scorerne være ens på grund af tilstedeværelsen af de bedste parametre blandt de kombinationer, der udvælges af RandomizedSearchCV.
Tak for dine kommentarer!
single
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 3.13
Udfordring: Justering af Hyperparametre med RandomizedSearchCV
Stryg for at vise menuen
Princippet bag RandomizedSearchCV ligner GridSearchCV, men i stedet for at teste alle mulige kombinationer, evalueres kun et tilfældigt udvalgt delmængde.
For eksempel indeholder følgende 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 ville teste alle 100, hvilket er tidskrævende. RandomizedSearchCV kan i stedet evaluere en mindre delmængde, f.eks. 20 tilfældigt valgte kombinationer. Dette reducerer beregningstiden og giver som regel resultater tæt på det bedste.
Antallet af kombinationer, der testes, styres af argumentet n_iter (standard er 10). Derudover er anvendelsen den samme som med GridSearchCV.
Swipe to start coding
- Initialiser et
RandomizedSearchCV-objekt med parametergrid og sætn_iter=20. - Initialiser et
GridSearchCV-objekt med samme parametergrid. - Træn begge søgeobjekter ved hjælp af
.fit(X, y). - Udskriv bedste estimator fra grid search med
.best_estimator_. - Udskriv bedste score fra randomized search med
.best_score_.
Løsning
Du kan prøve at køre koden flere gange. Se på forskellen mellem de to scorer. Nogle gange kan scorerne være ens på grund af tilstedeværelsen af de bedste parametre blandt de kombinationer, der udvælges af RandomizedSearchCV.
Tak for dine kommentarer!
single