Overfitting nell’ambito informatico significa sovraddattamento di un modello statistico che include un numero eccessivo di parametri rispetto al numero di osservazioni. Come sottolineano gli esperti, l’overfitting è un errore di modellazione comune che incontreranno tutte le aziende che stanno sviluppando applicazioni di machine learning e deep learning. Quando i modelli di apprendimento automatico consentono al rumore, ai dati casuali o alle fluttuazioni naturali dei dati di dettare le funzioni di destinazione, il modello risulta disfunzionale nella sua capacità di generalizzare nuovi dati e di lavorare sui suoi set di addestramento. I data scientist devono costruire i loro modelli con maggiore attenzione, addestrarli in modo efficace, migliorare la loro capacità di apprendimento automatico, arrivando a progettare sistemi di incentivi per contrastare il rischio di overfitting.
Overfitting e machine learning: definizione del problema
Lo sviluppo di modelli di machine learning e deep learning è pieno di potenziali fallimenti, ma l’overfitting è tra le principali cause di insuccesso. Generalmente l’overfitting si verifica quando un modello è stato addestrato su un set di dati specifico in modo così accurato da risultare utile solo per trovare punti dati all’interno di quel set di addestramento. Messo a lavorare su un nuovo set, questo lo stesso modello fatica ad adattarsi.
Perché l’overfittig non è funzionale
Invece di apprendere cosa cercare nei dati generali, nell’overfitting il modello ha memorizzato quali pattern cercare nel training set e tende a fare solo quello. Per un data scientist, il modello sembra essere addestrato in modo efficace e quindi sembra essere un successo. Confrontato con altri set di dati, però, lo stesso modello non performa.
Secondo gli esperti, per evitare l’eccessivo adattamento di un modello bisogna trovare un delicato equilibrio tra il fornire la giusta quantità di dettagli da cercare e su cui allenarsi ed evitare di inserire troppo poche informazioni (sottoadattamento). Il che risulta difficile quando i modelli diventano più complessi e non si hanno dati sufficienti per addestrarli. In questo caso, infatti, il rischio di overfittig è una certezza ed è per questo che le reti neurali hanno un alta predisposizione al sovradimensionamento.
In sintesi, tutti i modelli devono affrontare il problema dell’overfitting, soprattutto se si addestra troppo il modello.
Sradicare l’overfitting promuovendo una nuova cultura aziendale
Anticipare il problema dell’overfitting è sicuramente una best practice per tutti i data scientist. Ma i team che si occupano di questo tipo di sviluppo devono anche occuparsi di identificare e gestire i modelli che sono diventati overfitting. Il che non è affatto semplice. Le organizzazioni che distribuiscono reti neurali e deep learning su questo punto hanno molte difficoltà.
“Considerando tutti gli strati coinvolti nell’apprendimento profondo – ha commentato Kjell Carlsson, analista di Forrester -, è difficile indicare quando e dove un modello è diventato eccessivamente addestrato. L’elevata domanda di dati e analisi in azienda fa si che ai team di data science rimanga troppo poco tempo per implementare modelli efficaci. Per quanto la tempestività sia importante, le organizzazioni devono implementare processi e promuovere una cultura che dia la priorità all’efficacia dell’apprendimento automatico. Nell’organizzazione della data science è necessario istituire processi molto disciplinati per assicurare che vengano seguite le migliori pratiche di analisi e di sviluppo”.
L’importanza della collaborazione tra i team
Quando si tratta di implementare dei modelli, le organizzazioni devono collaborare con il proprio team di data science. Se un modello non funziona o se i risultati non sono promettenti come si pensava all’inizio la comunicazione diventa quanto più importante. La relazione tra i data scientist e team aziendali può aiutare a determinare se il modello funziona male a causa dell’overfitting, a causa dell’applicazione dell’utente finale o, ancora, a causa di proiezioni eccessivamente pubblicizzate o di un’altra causa non correlata ai dati.
Overfitting: ma quanto mi costa?
Risolvere l’overfitting è fondamentale per la distribuzione del modello. Un modello sovradimensionato, se distribuito su dati del mondo reale, non sarà in grado di generalizzare e non fornirà vantaggi tangibili, generando false intuizioni. Il che costa a un’impresa una notevole quantità di tempo, risorse e coinvolgimento in riunioni di confronto anche con i quadri. Costo che aumenta e incide negativamente sull’azienda ancora di più se le false intuizioni dei modelli overfitted passano inosservate e vengono considerate affidabili.
Nel caso della manutenzione predittiva, ad esempio, il sistema non è in grado di prevedere dove o quando la macchina si guasterà. Nella previsione delle vendite, il modello non sarà in grado di prevedere se qualcuno reagirà favorevolmente a una proposta di vendita o fornirà falsi positivi.
Come identificare il sovradimensionamento di un modello
L’esecuzione del modello attraverso numerose prove con diversi set di dati è il modo migliore per dimostrare le sue capacità di generalizzare e di memorizzare. Anche in questo caso è la tecnologia ad aiutare… sé stessa. Per evitare l’overfitting, infatti, e ci sono soluzioni di machine learning che possono facilitare questo processo fatto di tentativi ed errori. Ecco tre best practices:
#1 utilizzare il machine learning per i test
Invece di chiedere ai membri del team di data science di eseguire queste prove manualmente e di distribuire numerosi modelli per trovare quello corretto da utilizzare, l’apprendimento automatico può eseguire centinaia di set di dati in un breve lasso di tempo.
#2 codificare una funzione di oblio
Un altro modo per evitare l’overfitting dei modelli è costruire una funzione di oblio, specialmente quando si tratta di reti neurali profonde. Nel momento in cui un team di data science codifica una funzione di dimenticanza il modello può organizzare, creare regole sui dati e creare uno spazio per ignorare il rumore di fondo. In questo modo il modello prova a memorizzare solo le generalità delle cose, cercando di dimenticare la natura esatta delle cose.
#3 disporre di un set di dati di controllo
Un altro modo per prevenire l’overfitting nei modelli di machine e deep learning è assicurarsi di disporre di un set di dati di controllo su cui testare il modello. Quando il modello riesce a generalizzare abbastanza bene, dovrebbe mantenere le stesse performance anche con questi dati di test.
Sviluppare una conoscenza di base dell’ML e dell’AI
Come regola generale, l’addestramento frequente e con varietà di un modello, abbinato a funzioni di dimenticanza della formattazione e set di dati di test separati, sono tutte misure efficaci contro l’overfitting. È altrettanto importante che le organizzazioni garantiscano che ci sia un livello di competenza di base sui guasti comuni dei modelli di apprendimento automatico in tutta l’azienda. Questo significa investire e migliorare i livelli di apprendimento automatico e di alfabetizzazione dei dati dell’organizzazione. È vero che i data scientist e i membri del team di data science sono la prima linea di difesa contro l’overfitting e i problemi che possono insorgere con i modelli. Ma le organizzazioni devono potenziare i livelli di supervisione per garantire un’applicazione efficace dell’apprendimento automatico.
“Gli stakeholder delle varie linee di business devono essere consapevoli dei rischi associati all’eccessivo adattamento dei modelli e delle conseguenze – ha concluso Carlsson -. Il fatto che i vari team aziendale comprendano i problemi comuni insiti nelle applicazioni dei modelli aggiunge un ulteriore livello di sicurezza. Sebbene esistano numerosi corsi sull’apprendimento automatico e l’apprendimento profondo, trovare il giusto livello di alfabetizzazione di base sull’Intelligenza Artificiale tra i dipendenti può essere sfidante. La maggior parte di questi corsi, infatti, sono progettati su misura per i data scientist e forniscono informazioni che un imprenditore o un membro del team non avrà realisticamente bisogno di conoscere. Ma indirizzare la formazione corretta anche ai vari professionisti aziendali aiuta a ridurre le possibilità di overfitting e a prevenire applicazioni scadenti”.