Tempo di lettura
Quando i data scientist e gli ingegneri addestrano i modelli di machine learning (ML), rischiano di utilizzare un algoritmo troppo semplice per catturare i pattern sottostanti nei dati, con conseguente underfitting, oppure uno troppo complesso, con conseguente overfitting. La gestione dell'overfitting e dell'underfitting rappresenta una sfida chiave nei workflow della data science e nello sviluppo di sistemi di intelligenza artificiale (AI) affidabili.
Il bias e la varianza spiegano l'equilibrio che gli ingegneri devono raggiungere per garantire un buon adattamento ai loro modelli di machine learning. Pertanto, il compromesso bias-varianza è fondamentale per affrontare l'underfitting e l'overfitting.
Un modello distorto genera ipotesi forti in merito ai dati di addestramento, al fine di semplificare il processo di apprendimento, ignorando sottigliezze o complessità di cui non può tenere conto. La varianza fa riferimento alla sensibilità del modello alle fluttuazioni di apprendimento nei dati di addestramento.
Alcuni esempi di modelli ad alta distorsione (bias) sono gli algoritmi di regressione lineare o i decision tree poco complessi, che suppongono semplici relazioni lineari o binarie anche quando i modelli di dati sono più complessi.
L'utilizzo di un modello di regressione lineare per i dati con una relazione quadratica comporterà un underfitting, poiché il modello non è in grado di catturare la curvatura intrinseca. Di conseguenza, il modello offre prestazioni scarse nel set di addestramento e nei dati di test non visibili, perché non è in grado di eseguire una generalizzazione corretta sui nuovi dati.
La generalizzazione è la capacità del modello di comprendere e applicare i modelli appresi a dati invisibili. I modelli con bassa varianza tendono anche a non adattarsi perché sono troppo semplici per catturare modelli complessi. Tuttavia, i modelli a basso bias potrebbero risultare eccessivamente adattati se sono troppo flessibili.
Un'alta varianza indica che il modello potrebbe catturare il rumore, le idiosincrasie e i dettagli casuali all'interno dei dati di addestramento. I modelli ad alta varianza sono eccessivamente flessibili, con conseguente basso errore in fase di addestramento tuttavia, quando vengono testati su nuovi dati, i modelli appresi non riescono a generalizzarsi, generando un'elevata quantità di errori in fase di test.
Immagina di dover memorizzare le risposte per un test invece di comprendere i concetti necessari per elaborare le risposte da solo. Se il test è diverso da ciò che hai studiato, farai fatica a rispondere alle domande. Trovare l'equilibrio tra varianza e bias è fondamentale per ottenere prestazioni ottimali nei modelli di machine learning.
Un modello in overfitting può comportare un'elevata precisione del modello sui dati di addestramento e una bassa precisione sui nuovi dati, a causa della memorizzazione anziché della generalizzazione. L'overfitting si verifica quando gli ingegneri utilizzano un modello di machine learning con troppi parametri o livelli, come una rete neurale di deep learning, che lo rende altamente adattabile ai dati di addestramento.
Se addestrato su un set di dati piccolo o rumoroso, il modello rischia di memorizzare punti dati specifici e rumore piuttosto che apprendere i modelli generali. Se i dati contengono errori o incongruenze, il modello potrebbe erroneamente apprenderli come pattern significativi.
Gli ingegneri cercano un divario di prestazioni tra addestramento e test, ma possono anche rilevare un overfitting nelle curve di apprendimento, in cui la perdita di addestramento diminuisce verso lo zero mentre la perdita di convalida aumenta, indicando una scarsa generalizzazione.
Un altro segno di un modello in overfitting sono i suoi confini decisionali, ovvero le regole apprese dal modello per classificare i punti dati. Il confine decisionale diventa eccessivamente complesso e irregolare nei modelli in overfitting, in quanto si adatta al rumore nel set di addestramento piuttosto che catturare le vere strutture sottostanti, dimostrando ulteriormente un caso di overfitting.
Inoltre, i set di dati ad alta dimensione possono portare a un overfitting a causa della "riduzione della dimensionalità". Con l'aumentare del numero di caratteristiche, i dati diventano scarsi, rendendo più difficile per i modelli trovare pattern significativi e aumentando la varianza e il rischio di overfitting.
Un modello in underfitting funziona male sui dati di addestramento e sui dati di test perché non riesce a catturare i pattern dominanti nel set di dati. Gli ingegneri in genere identificano l'underfitting attraverso prestazioni costantemente scadenti in entrambi i set di dati.
I modelli in underfitting tendono inoltre a presentare errori elevati nelle curve di apprendimento, restituiscono metriche di valutazione non ottimali e presentano pattern residui sistematici, tutti fattori che indicano l'incapacità di apprendere in modo efficace le relazioni alla base dei dati.
L'underfitting nel machine learning si verifica spesso a causa di modelli troppo semplici, scarsa progettazione delle caratteristiche o eccessiva regolarizzazione che limita eccessivamente la flessibilità del modello. Allo stesso modo, una selezione inadeguata delle caratteristiche, come l'omissione di termini di interazione o funzionalità polinomiali, può impedire al modello di comprendere le relazioni nascoste nei dati. Anche una pre-elaborazione inadeguata, un tempo di addestramento insufficiente o la mancanza di dati per addestrare il modello possono contribuire all'underfitting.
Modello di diagnosi medica
Un modello di machine learning viene addestrato per classificare le immagini mediche come "sane" o "malate" su un piccolo set di dati. Il modello memorizza le immagini di addestramento, raggiungendo una precisione quasi perfetta, ma offre prestazioni scadenti con le nuove immagini perché ha appreso rumori o artefatti specifici nei dati di addestramento, anziché le caratteristiche generali della malattia.
Previsione del prezzo delle azioni
Un modello finanziario utilizza una rete neurale complessa con molti parametri per prevedere i prezzi delle azioni. Invece di apprendere tendenze o modelli, cattura le fluttuazioni casuali nei dati storici, portando a previsioni di addestramento altamente accurate ma con scarse prestazioni quando testate sui valori azionari futuri.
Previsione dell'abbandono del cliente
Un modello di customer retention include troppe caratteristiche specifiche, come dati demografici estremamente dettagliati, che causano l'overfitting dei dati di addestramento. Fatica a generalizzare e identificare pattern attraverso diverse fasce demografiche quando applicato a una base clienti più ampia.
Previsione dei prezzi delle abitazioni
Un modello di regressione lineare prevede i prezzi delle case basandosi esclusivamente sui metri quadrati. Il modello non considera altre caratteristiche importanti come la posizione, il numero di camere da letto o l'età della casa, il che si traduce in prestazioni scarse con i dati di addestramento e test.
Previsioni meteo
Un modello utilizza un piccolo set di funzionalità semplici, come la temperatura media e l'umidità, per prevedere le precipitazioni. Non riesce a catturare relazioni più complesse, come i modelli stagionali o le interazioni tra più fattori atmosferici, con conseguente scarsa precisione.
Riconoscimento delle immagini
Un decision tree poco complesso viene utilizzato per classificare immagini di cani e gatti. A causa della sua semplicità, non riesce a distinguere le due specie, ottenendo risultati insoddisfacenti con le immagini di addestramento e con quelle nuove mai viste prima.
Gli algoritmi di machine learning addestrano i modelli a riconoscere i pattern nei dati, consentendo agli ingegneri di utilizzarli per il forecasting dei risultati futuri da input invisibili. L'ottimizzazione degli iperparametri svolge un ruolo importante nel bilanciamento dell'overfitting e del underfitting, garantendo che un modello predittivo si generalizzi in modo efficace su dati invisibili.
Utilizzando gli iperparametri, gli ingegneri possono mettere a punto il tasso di apprendimento, la forza della regolarizzazione, il numero di livelli in una rete neurale o la profondità massima di un decision tree. Una corretta messa a punto può impedire che un modello sia troppo rigido o eccessivamente adattabile.
Regolarizzazione
La regolarizzazione per modelli di regressione, o il dropout nelle reti neurali, è una tecnica utilizzata nel machine learning che dissuade il modello dal fare troppo affidamento su una singola caratteristica o dall'adattare il rumore nei dati di addestramento.
I tipi comuni di regolarizzazione includono L1, che incoraggia la scarsità riducendo alcuni coefficienti a zero, e L2, che riduce le dimensioni di tutti i coefficienti per rendere il modello più semplice e generalizzabile. La regolarizzazione consente al modello di concentrarsi sui pattern sottostanti anziché memorizzare i dati.
Data augmentation
La data augmentation è un'altra strategia efficace, specialmente in attività come la computer vision, dove espandere artificialmente i dati di addestramento capovolgendo, ruotando o ritagliando le immagini aiuta il modello a generalizzare meglio. Semplificare il modello riducendo il numero di parametri o livelli in una rete neurale limita anche la sua capacità di memorizzare i dettagli dei dati di addestramento.
Convalida incrociata k-fold
Gli ingegneri possono utilizzare tecniche come la convalida incrociata k-fold per valutare la generalizzazione del modello. La convalida incrociata K-fold suddivide i dati in sottoinsiemi, ne utilizza alcuni per l'addestramento ed esegue i test sui rimanenti.
Allo stesso modo, gli ingegneri possono utilizzare un set di holdout, ovvero le informazioni del set di addestramento da riservare come dati non visibili, per offrire un altro mezzo per valutare le prestazioni di generalizzazione. I risultati vengono quindi mediati per fornire un punteggio complessivo delle prestazioni.
Framework di valutazione
Oltre a queste tecniche, sono essenziali solidi framework di valutazione dei modelli per garantire che un modello di machine learning si generalizzi bene. Una tecnica di valutazione avanzata è la convalida incrociata nidificata, particolarmente utile per l'ottimizzazione degli iperparametri. Nella convalida incrociata nidificata, un ciclo esterno suddivide i dati in sottoinsiemi di addestramento e test per valutare la capacità di generalizzazione del modello.
Allo stesso tempo, un ciclo interno esegue la messa a punto dell'iperparametro sui dati di addestramento, per garantire che il processo di messa a punto non si adatti eccessivamente al set di validazione. Questo approccio separa l'ottimizzazione degli iperparametri dalla valutazione del modello, fornendo una stima più accurata delle prestazioni del modello su dati non visibili.
Un'altro framework efficace combina gli split di addestramento-test con l'arresto precoce per monitorare la perdita di convalida durante l'addestramento. Valutando le prestazioni del modello su un set di convalida dedicato, gli ingegneri possono interrompere l'addestramento quando le prestazioni della convalida raggiungono il livello massimo o iniziano a peggiorare, evitando l'overfitting.
I framework di valutazione dovrebbero includere il campionamento stratificato per i problemi di classificazione con set di dati sbilanciati, per garantire che ogni suddivisione dei dati mantenga la stessa distribuzione di classi del set di dati originale. In questo modo si evita l'overfitting per le classi maggioritarie, fornendo al contempo una valutazione equa delle prestazioni delle classi minoritarie.
Metodi d'insieme
I metodi ensemble, come il bagging e il boosting, combinano più modelli per ridurre i punti deboli individuali e migliorare la generalizzazione complessiva. Ad esempio, le random forest, un diffuso metodo ensemble, riducono l'overfitting aggregando le previsioni provenienti da più decision tree e bilanciando efficacemente i bias e la varianza.
Modelli più complessi
Per gestire l'underfitting, gli ingegneri spesso aumentano la complessità del modello al fine di acquisire meglio i pattern sottostanti nei dati. Ad esempio, passare dalla regressione lineare semplice a una regressione polinomiale può aiutare nei casi in cui le caratteristiche della relazione e la variabile target non sono lineari. Sebbene i modelli più complessi possano risolvere il problema dell'underfitting, rischiano l'overfitting se non vengono regolarizzati correttamente.
Regolarizzazione
La riduzione delle penalità di regolarizzazione può anche consentire al modello una maggiore flessibilità per adattarsi ai dati senza essere eccessivamente vincolato. Ad esempio, i parametri L1 e L2 sono tipi di regolarizzazione utilizzati per verificare la complessità di un modello. L1(lasso) aggiunge una penalità per incoraggiare il modello a selezionare solo le caratteristiche più importanti. L2(ridge) aiuta a condurre il modello verso un'importanza più uniformemente distribuita tra le caratteristiche.
Progettazione di funzioni
La progettazione e la selezione delle caratteristiche rivestono un ruolo nella creazione o nella trasformazione delle caratteristiche, ad esempio l'aggiunta di termini di interazione, caratteristiche polinomiali o la codifica di variabili categoriali, per fornire al modello informazioni più pertinenti.
Tempo di addestramento
Offrire al modello più tempo di addestramento aumentando il numero di epoche aiuta a garantire che esso abbia un'adeguata opportunità di imparare dai dati. Un'epoca rappresenta un passaggio completo attraverso il set di dati di addestramento e più epoche consentono al modello di apprendere i pattern in modo più efficace.
Epoche multiple vengono spesso utilizzate per consentire al modello di apprendere i pattern nei dati in modo più efficace. Inoltre, l'aumento delle dimensioni del set di dati di addestramento consente al modello di identificare pattern più diversificati, riducendo il rischio di semplificazione eccessiva e migliorando la generalizzazione.
Qualità dei dati
Dal punto di vista olistico, gli ingegneri dovrebbero valutare attentamente i dati di addestramento per verificarne accuratezza, completezza e coerenza, confrontandoli con fonti affidabili per risolvere eventuali discrepanze. Tecniche come la normalizzazione (valori di scala compresi tra 0 e 1) o la standardizzazione (ridimensionamento a una media di 0 e deviazione standard di 1) aiutano a garantire che il modello non favorisca determinate variabili rispetto ad altre a causa di scale diverse.
Con il tempo, le distribuzioni dei dati di input potrebbero cambiare (un fenomeno noto come data drift o deriva dei dati), che può causare un underfitting o un overfitting dei modelli ai nuovi dati. Per contrastare questo fenomeno, sono essenziali un monitoraggio regolare e un riaddestramento periodico con set di dati aggiornati. Anche la rimozione degli outlier può aiutare a prevenire risultati distorti e a migliorare la solidità del modello.
Strumenti come AutoML possono semplificare ulteriormente i processi, automatizzando l'ottimizzazione degli iperparametri, la selezione delle caratteristiche e la creazione di framework di valutazione dei modelli, consentendo agli ingegneri di concentrarsi su insight e processi decisionali più importanti.
Un buon adattamento del modello si ottiene con un equilibrio ottimale tra underfitting e overfitting. Descrive un modello che cattura accuratamente i pattern sottostanti nei dati senza essere eccessivamente sensibile al rumore o alle fluttuazioni casuali.
La conoscenza del dominio svolge un ruolo significativo nell'affrontare l'underfitting e l'overfitting, poiché aiuta gli ingegneri ad adattare il modello alle caratteristiche specifiche del problema in questione. I set di dati del mondo reale spesso contengono rumore, squilibri o incongruenze.
Una logistica efficiente, come la corretta suddivisione dei dati e la pre-elaborazione, aiuta a mitigare i problemi di adattamento. La comprensione del contesto dei dati consente agli ingegneri di prendere decisioni informate sulla pre-elaborazione, sulla selezione delle caratteristiche e sulla progettazione, al fine di ottenere un modello ben addestrato. Per esempio:
Trovare l'equilibrio tra underfitting e overfitting consente agli ingegneri di identificare l'intervallo ottimale in cui un modello di machine learning passa da una semplicità rigida a una generalizzazione significativa, senza diventare eccessivamente complesso. Un modello ben bilanciato può prevedere l'abbandono dei clienti in diversi gruppi demografici, classificare le immagini mediche in modo efficace nonostante le variazioni nella qualità dei dati ed effettuare previsioni dei prezzi delle azioni acquisendo le tendenze del mercato senza adattarsi eccessivamente alle fluttuazioni casuali.
La gestione efficace del compromesso tra bias o varianza produce modelli che apprendono accuratamente i pattern nei dati, mantenendo al contempo la flessibilità necessaria per adattarsi all'ignoto. Raggiungendo questo equilibrio, i data scientist possono creare soluzioni tecnicamente valide e di grande impatto nelle applicazioni del mondo reale.
Abbiamo intervistato 2.000 organizzazioni in merito alle loro iniziative di AI per scoprire cosa funziona, cosa non funziona e come giocare d'anticipo.
IBM Granite è la nostra famiglia di modelli AI aperti, efficienti e affidabili, su misura per le aziende e ottimizzati per scalare le applicazioni di AI. Esplora le opzioni di linguaggio, codice, serie temporali e guardrail.
Accedi al nostro catalogo completo di oltre 100 corsi online acquistando oggi stesso un abbonamento individuale o multiutente che ti consentirà di ampliare le tue competenze su una gamma di prodotti a un prezzo contenuto.
Condotto dai migliori leader di pensiero di IBM, il programma di studi è stato progettato per aiutare i dirigenti aziendali ad acquisire le conoscenze necessarie per dare priorità agli investimenti in AI che possono favorire la crescita.
Vuoi ottenere un ritorno migliore sui tuoi investimenti nell'AI? Scopri come lo scaling della GenAI in settori chiave può favorire il cambiamento, aiutando le tue menti migliori a creare e fornire nuove soluzioni innovative.
Scopri come incorporare in tutta sicurezza l'AI generativa e il machine learning nella tua azienda.
Approfondisci i 3 elementi critici di una solida strategia AI: creare un vantaggio competitivo, scalare l'AI attraverso l'azienda e promuovere un'AI affidabile.