Cosa significa Overfitting e Underfitting

AI, INTELLIGENZA ARTIFICIALE

In ambito machine learning il significato di overfitting and underfitting è intrinsecamente collegato al concetto di “adeguato dimensionamento” della rete/modello.

La comprensione, infatti,  di quale potrebbe essere  il modello più adatto per rappresentare il sistema reale è importante per capire le eventuali cause che potrebbero generare  scarsa accuratezza del modello stesso.  Un approccio per determinare se un modello predittivo è soggetto ad underfitting o overfitting dei dati di addestramento è quello di esaminare l’errore di previsione sui dati di addestramento e sui dati di test.

Si parla generalmente di underfitting  quando il modello è dimensionato in modo tale che il risultato delle previsioni (quindi l’errore) sia nella fase di test, sia della fase di training restituisce errori molto elevati; Si parla di overfitting quando il modello restituisce risultati ottimali in fase di training mentre restituisce risultati poco ottimali  in fase di test. Si parla di modello  well-fitted, quindi  ben dimensionato, quando lo stesso restituisce risultati buoni in fase di test e di training.

Quindi riassumendo, il modello è soggetto a underfitting quando ha prestazioni scarse sui dati di addestramento in quanto  non è in grado di ridurre l’errore  tra gli esempi di input  e i valori di uscita.

Il modello è soggetto a overfitting  quando  funziona bene con i dati di addestramento, ma non con i dati di test, perché il modello “memorizza” i dati che ha osservato, ma  non è in grado di generalizzare il modello con dati non osservati.

Proviamo a comprendere meglio  il significato partendo dal seguente esempio:  un modello per il calcolo del prezzo di un immobile in base alla sua superficie.

Come abbiamo avuto modo di vedere in un altro articolo, la regressione lineare è uno strumento che non sempre risponde efficacemente alle diverse casistiche, in quanto la complessità dello spazio di dispersione ( legato ai dati campione) può suggerire la necessità di utilizzare funzioni ben più complesse di una retta, d’altro canto, come anticipato, bisogna stare ben attendi a scegliere un modello molto complesso con la speranza di annullare l’errore di stima, perché bisogna ricordarsi che curve molte complesse possono si approssimare adeguatamente i dati conosciuti ma potrebbero non essere in grado di predire adeguatamente risultati non conosciuti.

Cerchiamo di comprendere questo aspetto facendo un discorso qualitativo. Per per comprendere le problematiche legate alla complessità del modello e quindi ai problemi di overfitting e di underfitting, osserviamo  i grafici seguenti.

Ad un prima occhiata si potrebbe cadere nell’errore di scegliere  la curva più complessa, in quanto apparentemente sembrerebbe  quella migliore perché  in grado di ricalcare senza errori lo spazio dei punti campione, mentre la retta (tracciata in rosso) e la curva del secondo ordine (tratteggiata in verde)  potrebbero essere scartate perché introducono delle approssimazioni rispetto ai punti rappresentati nello spazio campione. Se si osservano però  le  3 curve  si può intuire che la retta è probabilmente il modello in grado di predire meglio i dati non noti. La curva del secondo ordine, infatti, potrebbe introdurre all’aumentare  della superficie un errore sul prezzo in rialzo, quando sappiamo che normalmente il prezzo al mq di un immobile,  tende a non crescere proporzionalmente all’aumentare della superficie anzi tende a ridursi, mentre diventa difficile dare un significato  ai risultati oscillanti previsti dalla curva più complessa. In definitiva il modello più semplice potrebbe di fatto essere quello più adeguato. In tal senso potrebbe venirci incontro anche la legge del rasoio di Occam, che suggerisce di “eliminare con tagli di lama” tutte le strade più complicate e imboccare quella più immediata e plausibile, scegliendo la via più logica che, molto spesso, è anche quella più efficace e realista.

In generale, dunque, per la valutazione del modello dobbiamo tenere in considerazione i  seguenti aspetti :

Modello under-fitted

Se  si sceglie un modello  troppo semplice potremmo ricadere  inevitabilmente in un sistema che non sarà in grado di capire appieno la realtà e farà predizioni sbagliate, perché  evidentemente il modello  non è stato in grado di imparare adeguatamente il sistema osservato. 

Modello over-fitted

Se si sceglie un modello molto complesso,  il rischio è che per tentare di trovare l’approssimazione migliore rispetto al sistema osservato, si ricadrà nel caso in cui  il sistema restituirà dati non veritieri pur essendo riuscito a trovare un modello che approssima il sistema osservato.

Conclusioni

In qualità di  data Scientist il nostro compito sarà quello di identificare il giusto  livello di complessità che  consentirà alla macchina di imparare in modo adeguato implementando un modello di validità generale, che può funzionare non solo sui dati utilizzati per l’apprendimento ma anche sui  sui nuovi.

Il nostro obiettivo, pertanto,  sarà quello di scegliere un modello  well-fitted o well-trained ma ricordate che la scelta di cosa fare dipenderà da caso in caso;  in generale :

  • Se il modello dimostra di soffrire in fase di  di addestramento potrebbe essere dovuto al fatto che il modello è troppo semplice  per descrivere correttamente il target. È possibile in tal caso migliorare le prestazioni aumentando la complessità del modello; nel caso di reti neurali ad esempio può essere aumentato il numero dei neuroni dei livelli hidden.
  • Se il modello effettua l’overfitting dei dati di addestramento, è opportuno intervenire per ridurre la complessità del modello e nel contempo aumentare la quantità di esempi di addestramento ed aumentare il numero di epoche di addestramento.
Se vuoi farmi qualche richiesta o contattarmi per un aiuto riempi il seguente form

    Comments