Elastic Net è una versione regolarizzata della Linear Regression (Regressione Lineare), una via di mezzo tra Ridge Regression e Lasso Regression per caratteristiche.
Il termine di regolarizzazione è infatti dato dal rapporto tra la L1 penalty e L2 penalty:
- Quando il valore è 0, Elastic Net è equivalente a Ridge Regression
- Quando il valore è 1, Elastic Net è equivalente a LASSO Regression
Elastic Net: When?
Con questo ultimo modello abbiamo concluso l’esame delle versioni regolarizzate della Linear Regression:
- Ridge Regression
- LASSO Regression
- Elastic Net
Possiamo finalmente chiederci: quando dovremmo utilizzare l’uno o latro modello?
Ottimo.
Dunque iniziamo subito col dire che la Regressione Lineare quasi mai è impiegata sul campo, in applicazioni di applied AI, a causa della sua semplicità.
Ridge Regression diventa quindi la soluzione primaria.
Quando però il sospetto che siano poche le feature davvero importanti inizia a insediarsi nelle nostre menti da data scientist, il ricorso alla LASSO Regression è d’obbligo.
Possiamo tenere l‘Elastic Net quando il numero di feature cresce, o le correlazioni tra loro diventano particolarmente importanti.
Potremmo definirla una versione meno severa della LASSO, ma entrambi tendono ad azzerare il valore dei weight nella funzione.
Early Stopping
Un metodo alternativo alla regolarizzazione iterativa degli algoritmi di apprendimento è fermare il training non appena l‘errore di validazione (validation error) raggiunge il minimo: early stopping.
Perché è utile questa tecnica?
Procediamo con ordine.
In un modello complesso, come quello di regressione polinomiale (Polynomial Regression), durante il training l’errore di previsione (Root Mean Squared Error) sul training set naturalmente diminuisce, come quello sul validation set.
Progressivamente l’errore cessa di calare e inizia invece ad aumentare: un chiaro segnale di overfitting.
Stoppando l’allenamento al raggiungimento del valore minimo per il validation error massimizziamo le performance.
Geoffrey Hinton, esperto di reti neural artificiali, definisce questo metodo in modo semplice ed elegante: “beautiful free lunch“.
Quando l’optimization algorithm scelto è lo Stochastich Gradient Descent o Mini-batch Gradient Descent diventa difficile impiegare questa tecnica, a causa della loro curva di apprendimento frastagliata.
Quando l’errore rimane costante, al di sopra del minimo, per un tempo sufficiente, il training può essere sospeso.
Occorre quindi ripristinare i parametri al punto in cui l’errore di validazione fosse minimo.
Un caldo abbraccio, Andrea.