Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Haaste: Automaattinen Hyperparametrien Viritys | Yhteenveto
Johdatus neuroverkkoihin

bookHaaste: Automaattinen Hyperparametrien Viritys

Sen sijaan, että valitsisimme mallin hyperparametrien arvot manuaalisesti, satunnaishaku (RandomizedSearchCV) tarjoaa tehokkaamman tavan löytää optimaalinen kokoonpano. Toisin kuin ruutuhaku (GridSearchCV), joka käy järjestelmällisesti läpi kaikki mahdolliset hyperparametriyhdistelmät, satunnaishaku valitsee satunnaisen osajoukon näistä yhdistelmistä. Tämä lähestymistapa vähentää merkittävästi laskennallista kuormitusta ja tuottaa silti hyviä tuloksia.

Neuroverkoissa, joissa mahdollisten hyperparametriyhdistelmien määrä voi olla valtava, kaikkien vaihtoehtojen testaaminen on usein epäkäytännöllistä. Satunnaishaku kiertää tämän ongelman arpomalla ennalta määritellyn määrän hyperparametrisettejä, tasapainottaen tutkimisen ja tehokkuuden.

RandomizedSearchCV(
    estimator=model, 
    param_distributions=randomized_parameters, 
    n_iter=number_of_models_to_test,  # Number of random combinations to evaluate
    scoring='accuracy',  # Evaluation metric
    random_state=42,  # Ensures reproducibility
)
  • estimator: optimoitava malli (esim. MLPClassifier);
  • param_distributions: sanakirja, jossa avaimina ovat hyperparametrien nimet ja arvoina listat, joista arvot valitaan satunnaisesti;
  • n_iter: määrittää, kuinka monta satunnaista yhdistelmää testataan. Suurempi arvo kasvattaa optimaalisen yhdistelmän löytymisen todennäköisyyttä, mutta vaatii enemmän laskentatehoa;
  • scoring: määrittää arviointimetriikan (esim. 'accuracy' luokittelussa).
Tehtävä

Swipe to start coding

  1. Määrittele parametriverkko param_distributions:
    • Aseta 'hidden_layer_sizes' kolmeen eri kerroskokoon: (20, 20), (25, 25), (30, 30);
    • Aseta 'learning_rate_init' arvoihin 0.02, 0.01, 0.005;
    • Aseta 'max_iter' arvoihin 10, 30, 50.
  2. Käytä RandomizedSearchCV-menetelmää seuraavasti:
    • Määritelty malli mlp;
    • Määritelty parametriverkko param_distributions;
    • 4 iteraatiota;
    • Arviointimetriikkana 'accuracy'.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 3
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

Suggested prompts:

Can you explain the difference between RandomizedSearchCV and GridSearchCV in more detail?

How do I choose the right number for n_iter in RandomizedSearchCV?

What types of problems is RandomizedSearchCV best suited for?

close

Awesome!

Completion rate improved to 4

bookHaaste: Automaattinen Hyperparametrien Viritys

Pyyhkäise näyttääksesi valikon

Sen sijaan, että valitsisimme mallin hyperparametrien arvot manuaalisesti, satunnaishaku (RandomizedSearchCV) tarjoaa tehokkaamman tavan löytää optimaalinen kokoonpano. Toisin kuin ruutuhaku (GridSearchCV), joka käy järjestelmällisesti läpi kaikki mahdolliset hyperparametriyhdistelmät, satunnaishaku valitsee satunnaisen osajoukon näistä yhdistelmistä. Tämä lähestymistapa vähentää merkittävästi laskennallista kuormitusta ja tuottaa silti hyviä tuloksia.

Neuroverkoissa, joissa mahdollisten hyperparametriyhdistelmien määrä voi olla valtava, kaikkien vaihtoehtojen testaaminen on usein epäkäytännöllistä. Satunnaishaku kiertää tämän ongelman arpomalla ennalta määritellyn määrän hyperparametrisettejä, tasapainottaen tutkimisen ja tehokkuuden.

RandomizedSearchCV(
    estimator=model, 
    param_distributions=randomized_parameters, 
    n_iter=number_of_models_to_test,  # Number of random combinations to evaluate
    scoring='accuracy',  # Evaluation metric
    random_state=42,  # Ensures reproducibility
)
  • estimator: optimoitava malli (esim. MLPClassifier);
  • param_distributions: sanakirja, jossa avaimina ovat hyperparametrien nimet ja arvoina listat, joista arvot valitaan satunnaisesti;
  • n_iter: määrittää, kuinka monta satunnaista yhdistelmää testataan. Suurempi arvo kasvattaa optimaalisen yhdistelmän löytymisen todennäköisyyttä, mutta vaatii enemmän laskentatehoa;
  • scoring: määrittää arviointimetriikan (esim. 'accuracy' luokittelussa).
Tehtävä

Swipe to start coding

  1. Määrittele parametriverkko param_distributions:
    • Aseta 'hidden_layer_sizes' kolmeen eri kerroskokoon: (20, 20), (25, 25), (30, 30);
    • Aseta 'learning_rate_init' arvoihin 0.02, 0.01, 0.005;
    • Aseta 'max_iter' arvoihin 10, 30, 50.
  2. Käytä RandomizedSearchCV-menetelmää seuraavasti:
    • Määritelty malli mlp;
    • Määritelty parametriverkko param_distributions;
    • 4 iteraatiota;
    • Arviointimetriikkana 'accuracy'.

Ratkaisu

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 3. Luku 3
single

single

some-alt