Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Haaste: Hyperparametrien Viritys RandomizedSearchCV:llä | Mallintaminen
Koneoppimisen Perusteet Scikit-learnilla

bookHaaste: Hyperparametrien Viritys RandomizedSearchCV:llä

RandomizedSearchCV:n periaate on samanlainen kuin GridSearchCV:n, mutta sen sijaan että testattaisiin kaikki mahdolliset yhdistelmät, arvioidaan vain satunnaisesti valittu osajoukko.

Esimerkiksi seuraava param_grid sisältää 100 yhdistelmää:

param_grid = {
    'n_neighbors': [1, 3, 5, 7, 9, 12, 15, 17, 20, 25],
    'weights': ['distance', 'uniform'],
    'p': [1, 2, 3, 4, 5]
}

GridSearchCV testaisi kaikki 100, mikä on aikaa vievää. RandomizedSearchCV voi sen sijaan arvioida pienemmän osajoukon, esimerkiksi 20 satunnaisesti valittua yhdistelmää. Tämä vähentää laskenta-aikaa ja tuottaa yleensä tuloksia, jotka ovat lähellä parasta mahdollista.

Testattavien yhdistelmien määrää ohjataan n_iter-argumentilla (oletus on 10). Muuten käyttö on sama kuin GridSearchCV:n kanssa.

Tehtävä

Swipe to start coding

  1. Alusta RandomizedSearchCV-olio parametriverkolla ja aseta n_iter=20.
  2. Alusta GridSearchCV-olio samalla parametriverkolla.
  3. Kouluta molemmat hakuoliot käyttämällä .fit(X, y).
  4. Tulosta ruutuhakumenetelmän paras estimointimalli käyttämällä .best_estimator_.
  5. Tulosta satunnaishaun paras pistemäärä käyttämällä .best_score_.

Ratkaisu

Note
Huomio

Voit kokeilla koodin suorittamista useita kertoja. Tarkastele kahden tuloksen välistä eroa. Joskus tulokset voivat olla samat, koska parhaat parametrit sisältyvät RandomizedSearchCV:n satunnaisesti valittuihin yhdistelmiin.

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 8
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

close

Awesome!

Completion rate improved to 3.13

bookHaaste: Hyperparametrien Viritys RandomizedSearchCV:llä

Pyyhkäise näyttääksesi valikon

RandomizedSearchCV:n periaate on samanlainen kuin GridSearchCV:n, mutta sen sijaan että testattaisiin kaikki mahdolliset yhdistelmät, arvioidaan vain satunnaisesti valittu osajoukko.

Esimerkiksi seuraava param_grid sisältää 100 yhdistelmää:

param_grid = {
    'n_neighbors': [1, 3, 5, 7, 9, 12, 15, 17, 20, 25],
    'weights': ['distance', 'uniform'],
    'p': [1, 2, 3, 4, 5]
}

GridSearchCV testaisi kaikki 100, mikä on aikaa vievää. RandomizedSearchCV voi sen sijaan arvioida pienemmän osajoukon, esimerkiksi 20 satunnaisesti valittua yhdistelmää. Tämä vähentää laskenta-aikaa ja tuottaa yleensä tuloksia, jotka ovat lähellä parasta mahdollista.

Testattavien yhdistelmien määrää ohjataan n_iter-argumentilla (oletus on 10). Muuten käyttö on sama kuin GridSearchCV:n kanssa.

Tehtävä

Swipe to start coding

  1. Alusta RandomizedSearchCV-olio parametriverkolla ja aseta n_iter=20.
  2. Alusta GridSearchCV-olio samalla parametriverkolla.
  3. Kouluta molemmat hakuoliot käyttämällä .fit(X, y).
  4. Tulosta ruutuhakumenetelmän paras estimointimalli käyttämällä .best_estimator_.
  5. Tulosta satunnaishaun paras pistemäärä käyttämällä .best_score_.

Ratkaisu

Note
Huomio

Voit kokeilla koodin suorittamista useita kertoja. Tarkastele kahden tuloksen välistä eroa. Joskus tulokset voivat olla samat, koska parhaat parametrit sisältyvät RandomizedSearchCV:n satunnaisesti valittuihin yhdistelmiin.

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 8
single

single

some-alt