Evitare l'overfitting
Un problema comune durante l'addestramento di un modello BigQuery ML è l'overfitting. L'overfitting si verifica quando il modello corrisponde troppo da vicino ai dati di addestramento, il che ne causa un rendimento scarso sui nuovi dati. BigQuery ML supporta due metodi per prevenire l'overfitting: interruzione anticipata e regolarizzazione.
Per scoprire come modificare le opzioni descritte di seguito, consulta
l'istruzione CREATE MODEL.
Interruzione anticipata
L'interruzione anticipata è l'opzione predefinita per la prevenzione dell'overfitting in
BigQuery ML. Quando l'interruzione anticipata è attivata, la
perdita nei
dati di holdout viene monitorata durante l'addestramento e
l'addestramento viene interrotto quando il miglioramento della perdita nell'ultima iterazione scende al di sotto
di una soglia. Poiché i dati di holdout non vengono utilizzati durante l'addestramento, rappresentano una buona
stima della perdita del modello su nuovi dati. Le opzioni early_stop, min_rel_progress,
data_split_method e data_split_eval_fraction controllano il comportamento
dell'interruzione anticipata.
Regolarizzazione
La regolarizzazione impedisce che i pesi del modello diventino troppo grandi, impedendo al modello di corrispondere troppo da vicino ai dati di addestramento. BigQuery ML supporta due metodi per controllare le dimensioni dei pesi del modello: regolarizzazione L1 e regolarizzazione L2.
Per impostazione predefinita, i valori di l1_reg e l2_reg sono zero, il che disattiva
la regolarizzazione. In alcuni set di dati, l'impostazione di valori positivi per l1_reg e
l2_reg migliorerà le prestazioni del modello addestrato sui nuovi dati. I valori migliori
per i parametri di regolarizzazione vengono in genere trovati per tentativi ed errori ed è comune sperimentare con valori di diversi ordini di
grandezza (ad esempio 0,01, 0,1, 1, 10 e 100).
Ecco alcuni consigli generali sull'utilizzo della regolarizzazione:
Se stai sperimentando con i parametri di regolarizzazione, prova a disattivare l'interruzione anticipata in modo che l'effetto della regolarizzazione sia chiaro.
Se il numero di caratteristiche è elevato rispetto alle dimensioni del set di addestramento, prova a utilizzare valori elevati per i parametri di regolarizzazione. Il rischio di overfitting è maggiore quando ci sono poche osservazioni per funzionalità.
Se temi che molte funzionalità possano essere irrilevanti per la previsione dell'etichetta, prova a impostare
l1_regsu un valore maggiore dil2_rege viceversa. Esistono prove teoriche che dimostrano che la regolarizzazione L1 funziona meglio quando molte caratteristiche non sono pertinenti.
Un altro vantaggio della regolarizzazione L1 è che tende a impostare molti pesi del modello esattamente su zero, il che è utile per identificare le caratteristiche più pertinenti e addestrare un modello compatto.
Passaggi successivi
- Per una panoramica di BigQuery ML, consulta Introduzione a BigQuery ML.
- Per iniziare a utilizzare BigQuery ML, consulta Creare modelli di machine learning in BigQuery ML.
- Per scoprire di più su come lavorare con i modelli, consulta: