Evitare l'overfitting

Un errore comune durante l'addestramento di un modello BigQuery ML è l'overfitting. L'overfitting si verifica quando il modello si adatta troppo ai dati di addestramento, il che ne comporta un cattivo rendimento sui nuovi dati. BigQuery ML supporta due metodi per evitare il sovraadattamento: l'interruzione anticipata e la 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 nel in BigQuery ML. Quando l'interruzione anticipata è attivata, la perdita sui dati di esclusione 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 esclusione non vengono utilizzati durante l'addestramento, rappresentano una buona stima della perdita del modello sui 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 ai pesi del modello di diventare troppo grandi, impedendo al modello di corrispondere troppo ai dati di addestramento. BigQuery ML supporta due metodi per controllare la dimensione il peso del modello: L1 regolarizzazione ed L2 regolarizzazione.

Per impostazione predefinita, i valori di l1_reg e l2_reg sono pari a 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 con nuovi dati. Il meglio per i parametri di regolarizzazione si trovano in genere attraverso ed è comune fare esperimenti con valori in diversi ordini di magnitudo (ad esempio, 0,01, 0,1, 1, 10 e 100).

Ecco alcuni consigli generali sull'uso della regolarizzazione:

  • Se stai sperimentando i parametri di regolarizzazione, prova a disattivare interruzione anticipata in modo che l'effetto della regolarizzazione sia chiaro.

  • Se il numero di caratteristiche è elevato rispetto alla dimensione del set di addestramento, provare valori elevati per i parametri di regolarizzazione. Il rischio di overfitting è maggiore quando ci sono solo poche osservazioni per caratteristica.

  • Se temi che molte funzionalità possano essere irrilevanti per la previsione dell'etichetta, prova a impostare l1_reg su un valore maggiore di l2_reg e viceversa. Esistono prove teoriche che dimostrano che la regolarizzazione L1 funziona meglio quando molte funzionalità sono irrilevanti.

Un altro vantaggio della regolarizzazione L1 è che tende a impostare molti pesi del modello su esattamente zero, il che è utile per identificare le caratteristiche più pertinenti e addestrare un modello compatto.

Passaggi successivi