Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Sfida: Ottimizzazione degli Iperparametri con RandomizedSearchCV | Modellazione
Introduzione al ML con Scikit-Learn

bookSfida: Ottimizzazione degli Iperparametri con RandomizedSearchCV

Il principio di RandomizedSearchCV è simile a quello di GridSearchCV, ma invece di testare tutte le possibili combinazioni, valuta solo un sottoinsieme campionato casualmente.

Ad esempio, il seguente param_grid contiene 100 combinazioni:

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

GridSearchCV testerebbe tutte le 100 combinazioni, risultando dispendioso in termini di tempo. RandomizedSearchCV può invece valutare un sottoinsieme più piccolo, ad esempio 20 combinazioni scelte casualmente. Questo riduce il tempo di calcolo e solitamente produce risultati vicini ai migliori.

Il numero di combinazioni da testare è controllato dall'argomento n_iter (il valore predefinito è 10). Per il resto, l'utilizzo è lo stesso di GridSearchCV.

Compito

Swipe to start coding

  1. Inizializzare un oggetto RandomizedSearchCV con la griglia dei parametri e impostare n_iter=20.
  2. Inizializzare un oggetto GridSearchCV con la stessa griglia dei parametri.
  3. Addestrare entrambi gli oggetti di ricerca utilizzando .fit(X, y).
  4. Stampare il miglior stimatore dalla grid search con .best_estimator_.
  5. Stampare il miglior punteggio dalla randomized search con .best_score_.

Soluzione

Note
Nota

È possibile eseguire il codice più volte. Osservare la differenza tra i due punteggi. Talvolta i punteggi possono essere uguali a causa della presenza dei parametri ottimali tra le combinazioni campionate da RandomizedSearchCV.

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 8
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

close

Awesome!

Completion rate improved to 3.13

bookSfida: Ottimizzazione degli Iperparametri con RandomizedSearchCV

Scorri per mostrare il menu

Il principio di RandomizedSearchCV è simile a quello di GridSearchCV, ma invece di testare tutte le possibili combinazioni, valuta solo un sottoinsieme campionato casualmente.

Ad esempio, il seguente param_grid contiene 100 combinazioni:

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

GridSearchCV testerebbe tutte le 100 combinazioni, risultando dispendioso in termini di tempo. RandomizedSearchCV può invece valutare un sottoinsieme più piccolo, ad esempio 20 combinazioni scelte casualmente. Questo riduce il tempo di calcolo e solitamente produce risultati vicini ai migliori.

Il numero di combinazioni da testare è controllato dall'argomento n_iter (il valore predefinito è 10). Per il resto, l'utilizzo è lo stesso di GridSearchCV.

Compito

Swipe to start coding

  1. Inizializzare un oggetto RandomizedSearchCV con la griglia dei parametri e impostare n_iter=20.
  2. Inizializzare un oggetto GridSearchCV con la stessa griglia dei parametri.
  3. Addestrare entrambi gli oggetti di ricerca utilizzando .fit(X, y).
  4. Stampare il miglior stimatore dalla grid search con .best_estimator_.
  5. Stampare il miglior punteggio dalla randomized search con .best_score_.

Soluzione

Note
Nota

È possibile eseguire il codice più volte. Osservare la differenza tra i due punteggi. Talvolta i punteggi possono essere uguali a causa della presenza dei parametri ottimali tra le combinazioni campionate da RandomizedSearchCV.

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 8
single

single

some-alt