Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Riepilogo della Modellazione | Modellizzazione
Introduzione al ML con Scikit-Learn

bookRiepilogo della Modellazione

Hai ora appreso come costruire un modello, integrarlo in una pipeline e ottimizzare gli iperparametri. Sono stati inoltre trattati due metodi di valutazione: la suddivisione train-test e la cross-validation.

Il passo successivo consiste nel combinare la valutazione del modello con l'ottimizzazione degli iperparametri utilizzando GridSearchCV o RandomizedSearchCV.

Note
Nota

Poiché il nostro dataset è molto piccolo, utilizzeremo il GridSearchCV, ma tutto ciò che segue si applica anche a RandomizedSearchCV.

L'obiettivo è ottenere il punteggio di cross-validation più alto sul dataset, poiché la cross-validation è più stabile e meno dipendente da come i dati vengono suddivisi rispetto al metodo train-test.

GridSearchCV è progettato specificamente per questo scopo: identifica gli iperparametri che raggiungono il miglior punteggio di cross-validation, producendo un modello ottimizzato che offre prestazioni ottimali sui dati di addestramento.

L'attributo .best_score_ memorizza il punteggio di cross-validation più alto trovato durante la ricerca.

Note
Nota

I migliori iperparametri per uno specifico dataset potrebbero non essere i migliori in assoluto. Se vengono aggiunti nuovi dati, gli iperparametri ottimali potrebbero cambiare.

Di conseguenza, il valore di .best_score_ ottenuto potrebbe essere superiore rispetto alle prestazioni su dati completamente nuovi, poiché gli iperparametri potrebbero non generalizzare altrettanto bene oltre il dataset di addestramento.

Tipicamente, il dataset viene inizialmente suddiviso in set di addestramento e di test. La validazione incrociata viene poi applicata al set di addestramento per ottimizzare il modello e identificare la configurazione migliore. Infine, il modello ottimizzato viene valutato sul set di test, che contiene solo dati mai visti prima, per valutarne le prestazioni nel mondo reale.

In sintesi, il flusso di lavoro completo consiste in:

  1. Pre-elaborazione dei dati;
  2. Suddivisione del dataset in set di addestramento e di test;
  3. Utilizzo della validazione incrociata sul set di addestramento per trovare il modello con le migliori prestazioni;
  4. Valutazione di quel modello sul set di test.
Note
Approfondisci

Il terzo passaggio di solito prevede il test di più algoritmi e la regolazione dei loro iperparametri per identificare l'opzione migliore. Per semplicità, in questo corso è stato utilizzato un solo algoritmo.

Prima di passare alla sfida finale, è importante notare che la cross-validation non è l'unico metodo per ottimizzare i modelli. Con l'aumentare delle dimensioni dei dataset, il calcolo dei punteggi di cross-validation diventa più dispendioso in termini di tempo, e la classica suddivisione train-test offre maggiore stabilità grazie all'aumento della dimensione del set di test.

Di conseguenza, i dataset di grandi dimensioni vengono spesso suddivisi in tre insiemi: un training set, un validation set e un test set. Il modello viene addestrato sul training set e valutato sul validation set per selezionare il modello o gli iperparametri con le migliori prestazioni.

Questa selezione utilizza i punteggi del validation set invece dei punteggi di cross-validation. Infine, il modello scelto viene valutato sul test set, che consiste in dati completamente nuovi, per verificare le sue prestazioni.

Il dataset dei pinguini è di piccole dimensioni, con solo 342 istanze. A causa di questa limitazione, nel prossimo capitolo verrà utilizzato il punteggio di cross-validation per la valutazione.

question mark

Perché la cross-validation è particolarmente preziosa per l'ottimizzazione degli iperparametri nei dataset più piccoli, rispetto a quelli più grandi dove si preferiscono le divisioni train-test?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 9

Chieda ad AI

expand

Chieda ad AI

ChatGPT

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

Awesome!

Completion rate improved to 3.13

bookRiepilogo della Modellazione

Scorri per mostrare il menu

Hai ora appreso come costruire un modello, integrarlo in una pipeline e ottimizzare gli iperparametri. Sono stati inoltre trattati due metodi di valutazione: la suddivisione train-test e la cross-validation.

Il passo successivo consiste nel combinare la valutazione del modello con l'ottimizzazione degli iperparametri utilizzando GridSearchCV o RandomizedSearchCV.

Note
Nota

Poiché il nostro dataset è molto piccolo, utilizzeremo il GridSearchCV, ma tutto ciò che segue si applica anche a RandomizedSearchCV.

L'obiettivo è ottenere il punteggio di cross-validation più alto sul dataset, poiché la cross-validation è più stabile e meno dipendente da come i dati vengono suddivisi rispetto al metodo train-test.

GridSearchCV è progettato specificamente per questo scopo: identifica gli iperparametri che raggiungono il miglior punteggio di cross-validation, producendo un modello ottimizzato che offre prestazioni ottimali sui dati di addestramento.

L'attributo .best_score_ memorizza il punteggio di cross-validation più alto trovato durante la ricerca.

Note
Nota

I migliori iperparametri per uno specifico dataset potrebbero non essere i migliori in assoluto. Se vengono aggiunti nuovi dati, gli iperparametri ottimali potrebbero cambiare.

Di conseguenza, il valore di .best_score_ ottenuto potrebbe essere superiore rispetto alle prestazioni su dati completamente nuovi, poiché gli iperparametri potrebbero non generalizzare altrettanto bene oltre il dataset di addestramento.

Tipicamente, il dataset viene inizialmente suddiviso in set di addestramento e di test. La validazione incrociata viene poi applicata al set di addestramento per ottimizzare il modello e identificare la configurazione migliore. Infine, il modello ottimizzato viene valutato sul set di test, che contiene solo dati mai visti prima, per valutarne le prestazioni nel mondo reale.

In sintesi, il flusso di lavoro completo consiste in:

  1. Pre-elaborazione dei dati;
  2. Suddivisione del dataset in set di addestramento e di test;
  3. Utilizzo della validazione incrociata sul set di addestramento per trovare il modello con le migliori prestazioni;
  4. Valutazione di quel modello sul set di test.
Note
Approfondisci

Il terzo passaggio di solito prevede il test di più algoritmi e la regolazione dei loro iperparametri per identificare l'opzione migliore. Per semplicità, in questo corso è stato utilizzato un solo algoritmo.

Prima di passare alla sfida finale, è importante notare che la cross-validation non è l'unico metodo per ottimizzare i modelli. Con l'aumentare delle dimensioni dei dataset, il calcolo dei punteggi di cross-validation diventa più dispendioso in termini di tempo, e la classica suddivisione train-test offre maggiore stabilità grazie all'aumento della dimensione del set di test.

Di conseguenza, i dataset di grandi dimensioni vengono spesso suddivisi in tre insiemi: un training set, un validation set e un test set. Il modello viene addestrato sul training set e valutato sul validation set per selezionare il modello o gli iperparametri con le migliori prestazioni.

Questa selezione utilizza i punteggi del validation set invece dei punteggi di cross-validation. Infine, il modello scelto viene valutato sul test set, che consiste in dati completamente nuovi, per verificare le sue prestazioni.

Il dataset dei pinguini è di piccole dimensioni, con solo 342 istanze. A causa di questa limitazione, nel prossimo capitolo verrà utilizzato il punteggio di cross-validation per la valutazione.

question mark

Perché la cross-validation è particolarmente preziosa per l'ottimizzazione degli iperparametri nei dataset più piccoli, rispetto a quelli più grandi dove si preferiscono le divisioni train-test?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 9
some-alt