Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Sfida: Ottimizzazione Automatica degli Iperparametri | Conclusione
Introduzione alle Reti Neurali

bookSfida: Ottimizzazione Automatica degli Iperparametri

Piuttosto che selezionare manualmente valori specifici per gli iperparametri del modello, la ricerca randomizzata (RandomizedSearchCV) offre un modo più efficiente per individuare una configurazione ottimale. A differenza della ricerca a griglia (GridSearchCV), che valuta sistematicamente tutte le possibili combinazioni di iperparametri, la ricerca randomizzata seleziona un sottoinsieme casuale di queste combinazioni. Questo approccio riduce significativamente il costo computazionale, pur garantendo risultati validi.

Per le reti neurali, dove il numero di possibili combinazioni di iperparametri può essere enorme, testare esaustivamente ogni opzione è spesso impraticabile. La ricerca randomizzata aggira questo problema campionando casualmente un numero definito di set di iperparametri, bilanciando esplorazione ed efficienza.

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: il modello da ottimizzare (ad esempio, MLPClassifier);
  • param_distributions: un dizionario in cui le chiavi sono i nomi degli iperparametri e i valori sono le liste da cui campionare;
  • n_iter: specifica quante combinazioni casuali devono essere testate. Un valore più alto aumenta la probabilità di trovare una combinazione ottimale ma richiede più risorse computazionali;
  • scoring: definisce la metrica di valutazione (ad esempio, 'accuracy' per la classificazione).
Compito

Swipe to start coding

  1. Definire la griglia dei parametri param_distributions:
    • Impostare 'hidden_layer_sizes' su tre diverse configurazioni di layer: (20, 20), (25, 25), (30, 30);
    • Impostare 'learning_rate_init' sui valori 0.02, 0.01, 0.005;
    • Impostare 'max_iter' sui valori 10, 30, 50.
  2. Applicare RandomizedSearchCV con:
    • Il modello definito mlp;
    • La griglia dei parametri definita param_distributions;
    • 4 iterazioni;
    • 'accuracy' come metrica di valutazione.

Soluzione

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 3
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 4

bookSfida: Ottimizzazione Automatica degli Iperparametri

Scorri per mostrare il menu

Piuttosto che selezionare manualmente valori specifici per gli iperparametri del modello, la ricerca randomizzata (RandomizedSearchCV) offre un modo più efficiente per individuare una configurazione ottimale. A differenza della ricerca a griglia (GridSearchCV), che valuta sistematicamente tutte le possibili combinazioni di iperparametri, la ricerca randomizzata seleziona un sottoinsieme casuale di queste combinazioni. Questo approccio riduce significativamente il costo computazionale, pur garantendo risultati validi.

Per le reti neurali, dove il numero di possibili combinazioni di iperparametri può essere enorme, testare esaustivamente ogni opzione è spesso impraticabile. La ricerca randomizzata aggira questo problema campionando casualmente un numero definito di set di iperparametri, bilanciando esplorazione ed efficienza.

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: il modello da ottimizzare (ad esempio, MLPClassifier);
  • param_distributions: un dizionario in cui le chiavi sono i nomi degli iperparametri e i valori sono le liste da cui campionare;
  • n_iter: specifica quante combinazioni casuali devono essere testate. Un valore più alto aumenta la probabilità di trovare una combinazione ottimale ma richiede più risorse computazionali;
  • scoring: definisce la metrica di valutazione (ad esempio, 'accuracy' per la classificazione).
Compito

Swipe to start coding

  1. Definire la griglia dei parametri param_distributions:
    • Impostare 'hidden_layer_sizes' su tre diverse configurazioni di layer: (20, 20), (25, 25), (30, 30);
    • Impostare 'learning_rate_init' sui valori 0.02, 0.01, 0.005;
    • Impostare 'max_iter' sui valori 10, 30, 50.
  2. Applicare RandomizedSearchCV con:
    • Il modello definito mlp;
    • La griglia dei parametri definita param_distributions;
    • 4 iterazioni;
    • 'accuracy' come metrica di valutazione.

Soluzione

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

single

some-alt