Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Utfordring: Justering av Hyperparametere med RandomizedSearchCV | Modellering
ML-Introduksjon med Scikit-learn

bookUtfordring: Justering av Hyperparametere med RandomizedSearchCV

Prinsippet bak RandomizedSearchCV ligner på GridSearchCV, men i stedet for å teste alle mulige kombinasjoner, evaluerer den kun et tilfeldig utvalg av kombinasjonene.

For eksempel inneholder følgende param_grid 100 kombinasjoner:

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 testet alle 100, noe som er tidskrevende. RandomizedSearchCV kan i stedet evaluere et mindre utvalg, for eksempel 20 tilfeldig valgte kombinasjoner. Dette reduserer beregningstiden og gir vanligvis resultater nær det beste.

Antall kombinasjoner som skal testes styres av argumentet n_iter (standardverdi er 10). Ellers er bruken den samme som med GridSearchCV.

Oppgave

Swipe to start coding

  1. Initialiser et RandomizedSearchCV-objekt med parametergrid og sett n_iter=20.
  2. Initialiser et GridSearchCV-objekt med samme parametergrid.
  3. Tren begge søkeobjektene ved å bruke .fit(X, y).
  4. Skriv ut beste estimator fra grid search med .best_estimator_.
  5. Skriv ut beste score fra randomized search med .best_score_.

Løsning

Note
Merk

Du kan prøve å kjøre koden flere ganger. Se på forskjellen mellom de to poengsummene. Noen ganger kan poengsummene være like på grunn av tilstedeværelsen av de beste parameterne blant kombinasjonene som er valgt av RandomizedSearchCV.

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 8
single

single

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

close

Awesome!

Completion rate improved to 3.13

bookUtfordring: Justering av Hyperparametere med RandomizedSearchCV

Sveip for å vise menyen

Prinsippet bak RandomizedSearchCV ligner på GridSearchCV, men i stedet for å teste alle mulige kombinasjoner, evaluerer den kun et tilfeldig utvalg av kombinasjonene.

For eksempel inneholder følgende param_grid 100 kombinasjoner:

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 testet alle 100, noe som er tidskrevende. RandomizedSearchCV kan i stedet evaluere et mindre utvalg, for eksempel 20 tilfeldig valgte kombinasjoner. Dette reduserer beregningstiden og gir vanligvis resultater nær det beste.

Antall kombinasjoner som skal testes styres av argumentet n_iter (standardverdi er 10). Ellers er bruken den samme som med GridSearchCV.

Oppgave

Swipe to start coding

  1. Initialiser et RandomizedSearchCV-objekt med parametergrid og sett n_iter=20.
  2. Initialiser et GridSearchCV-objekt med samme parametergrid.
  3. Tren begge søkeobjektene ved å bruke .fit(X, y).
  4. Skriv ut beste estimator fra grid search med .best_estimator_.
  5. Skriv ut beste score fra randomized search med .best_score_.

Løsning

Note
Merk

Du kan prøve å kjøre koden flere ganger. Se på forskjellen mellom de to poengsummene. Noen ganger kan poengsummene være like på grunn av tilstedeværelsen av de beste parameterne blant kombinasjonene som er valgt av RandomizedSearchCV.

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

close

Awesome!

Completion rate improved to 3.13
Seksjon 4. Kapittel 8
single

single

some-alt