Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Utmaning: Justering av Hyperparametrar med RandomizedSearchCV | Modellering
ML-introduktion Med Scikit-learn

bookUtmaning: 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.

Uppgift

Swipe to start coding

  1. Initiera ett RandomizedSearchCV-objekt med parametergriden och sätt n_iter=20.
  2. Initiera ett GridSearchCV-objekt med samma parametergrid.
  3. Träna båda sökobjekten med .fit(X, y).
  4. Skriv ut bästa estimatorn från grid search med .best_estimator_.
  5. Skriv ut bästa poängen från randomized search med .best_score_.

Lösning

Note
Notera

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.

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 8
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

close

Awesome!

Completion rate improved to 3.13

bookUtmaning: 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.

Uppgift

Swipe to start coding

  1. Initiera ett RandomizedSearchCV-objekt med parametergriden och sätt n_iter=20.
  2. Initiera ett GridSearchCV-objekt med samma parametergrid.
  3. Träna båda sökobjekten med .fit(X, y).
  4. Skriv ut bästa estimatorn från grid search med .best_estimator_.
  5. Skriv ut bästa poängen från randomized search med .best_score_.

Lösning

Note
Notera

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.

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

close

Awesome!

Completion rate improved to 3.13
Avsnitt 4. Kapitel 8
single

single

some-alt