Che cos'è il compromesso bias-varianza?

Autore

Fangfang Lee

Developer Advocate

IBM

Introduzione al compromesso bias-varianza

Nel machine learning (ML) e nell'intelligenza artificiale (AI), il compromesso tra bias (distorsione) e varianza è un concetto che regola le prestazioni di un modello di machine learning predittivo, nonché un principio fondamentale della data science.

Quando decidiamo di creare un modello ML per un problema aziendale specifico, vogliamo scegliere un'architettura del modello che riduca al minimo gli errori e acquisisca i segnali sottostanti. Il bias e la varianza rappresentano due fonti di errore di previsione. Il bias misura la distanza tra le previsioni e i valori reali a causa di ipotesi eccessivamente semplicistiche, mentre la varianza rileva la fluttuazione delle previsioni in base a diversi dati di addestramento.

Comprendere e gestire questo compromesso è fondamentale per costruire modelli che si generalizzano bene ai dati invisibili. I modelli con un elevato bias sono inclini all'underfitting, mancando di schemi importanti, mentre i modelli con un'elevata varianza sono inclini all'overfitting, interpretando il rumore come segnale. Trovare il giusto equilibrio è alla base di una progettazione efficace del machine learning e aiuta a spiegare perché i modelli che funzionano bene con i dati di addestramento potrebbero ancora fallire nel mondo reale.

In questo articolo approfondiamo i dettagli tecnici del compromesso tra bias e varianza e dell'errore di previsione, delineando un quadro di come costruire il modello giusto per un set di dati. 

Compromesso illustrato

Nei modelli predittivi come la regressione lineare o il K-Nearest Neighbor (KNN), bias e varianza sono interdipendenti:

  • Il bias misura la distanza, in media, tra le previsioni di un modello e i valori di ground truth. I modelli ad alto bias tendono a formulare ipotesi solide sulla forma dei dati e causano l'underfitting. Un modello eccessivamente semplicistico tende ad avere un elevato bias e una bassa varianza: un modello come questo tende ad avere elevati errori di addestramento e alti errori di previsione.  
  • La varianza misura quanto cambiano le previsioni di un modello con diversi set di dati di addestramento. I modelli ad alta varianza sono sensibili al rumore nei dati di addestramento e causano l'overfitting. Un modello con un'architettura complessa e più parametri tende ad avere un'elevata varianza e un basso bias.
Diagramma bias-varianza

In questo articolo esplicativo, utilizziamo la regressione lineare come esempio per illustrare come la complessità del modello influenzi il bias e la varianza nei risultati previsti. Ricordiamo che nella regressione, la metrica di valutazione è definita dall'errore quadratico medio (MSE) tra la ground truth e il valore previsto. Un MSE di grandi dimensioni indica un modello poco adatto ai dati di addestramento, mentre un MSE basso indica un modello ben adattato ai dati di addestramento.

MSE è definito come:

 MSE=(ypred-yactual)2  

Oppure espresso come somma residua di quadrati:

 RSS=i=1n(yi-yi^)2

Supponiamo che ci venga dato un set di valori di input X e i corrispondenti valori di output Y. La vera relazione tra X e Y non è lineare: immaginiamo una forma a U morbida e curva, simile a un'onda sinusoidale. Tuttavia, non conosciamo la funzione sottostante. Osserviamo solo dati rumorosi che la approssimano.

Grafico dei dati rumorosi

Ora vogliamo costruire un modello per prevedere Y utilizzando X.

Per illustrare come la complessità del modello influenzi le prestazioni, possiamo provare ad adattare tre modelli di complessità crescente: un modello lineare, un modello polinomiale moderatamente complesso e un modello polinomiale molto complesso.

Questa componente di rumore introduce casualità, imitando i dati del mondo reale. Un polinomio è un'espressione matematica che implica una somma di potenze di X moltiplicata per i coefficienti.

Ad esempio, un polinomio di grado 1 è:

 y^=β0+β1x

Il modello è rappresentato come una linea retta:

Grado polinomiale 1

Questo modello è molto semplice e parte dal presupposto che la relazione tra X e Y sia lineare. Tuttavia, i dati hanno chiaramente uno schema curvo. Di conseguenza:

  • Il bias è elevato: il modello non è in grado di catturare lo schema non lineare nei dati.
  • La varianza è bassa: è stabile e non cambia molto con diversi set di dati.
  • MSE (errore quadratico medio): 0,2929. Si tratta di un valore relativamente alto.

Questo è un esempio di underfitting, ovvero il modello è troppo semplice per apprendere la vera struttura.

Un polinomio di grado 4 è:

 y^=β0+β1x+β2x2+β3x3+β4x4

Grado polinomiale 4

Ora usiamo un polinomio che include potenze di X fino a  x4 :

 y^=β0+β1x+β2x2+β3x3+β4x4

Questo modello è abbastanza complesso da catturare la curva dei dati senza essere troppo sensibile al rumore.

  • Il bias è moderato, ovvero il modello riesce a rappresentare abbastanza bene la funzione reale.
  • La varianza è moderata: non reagisce in modo eccessivo a piccole fluttuazioni dei dati.
  • MSE: circa 0,0714, inferiore al grado 1.

Questo è il modello più performante del nostro esempio, poiché si generalizza bene.

Un polinomio di grado 25 è:

 y^=i=025βixi

Grado polinomiale 25

Con 26 parametri, il modello ha un'elevata flessibilità e si adatta molto bene ai dati di addestramento, anche al rumore casuale. La curva appare molto ondulata e sovradimensionata rispetto ai dati.

  • Il bias è basso, ovvero è sufficientemente flessibile da seguire il segnale.
  • La varianza è elevata: reagisce fortemente al rumore e cambierebbe in modo significativo con un nuovo campione di dati.
  •  MSE: circa 0,059 (inferiore al grado 4 perché memorizzava eccessivamente lo schema dei dati di addestramento e oltre).

Questo è un esempio di overfitting, ovvero il modello apprende il rumore insieme al segnale e non generalizza bene ai dati non visibili.

Più alto è il grado, più la curva diventa "ondulata" e più può adattarsi ai dati di addestramento, inclusi sia il segnale che il rumore.

Nell'esempio precedente, possiamo vedere che la complessità del modello e il numero di parametri influenzano direttamente il compromesso bias-varianza. Man mano che il modello diventa più complesso e ha più parametri, la variabilità dei valori previsti nel set di test aumenta, portando a un'elevata varianza. Tuttavia, man mano che il modello si semplifica e il numero di parametri diminuisce,  bias2  nelle previsioni aumenta.

Pertanto, quando costruiamo un modello di machine learning, miriamo a bias e varianze contemporaneamente per ottenere prestazioni ottimali del modello. Questa ottimizzazione non solo genera buoni risultati dalla formazione, ma si generalizza bene anche a dati di test invisibili. Nella prossima sezione, approfondiremo i dettagli matematici su come viene derivato il calcolo di bias e varianza e perché il modello di machine learning contiene incertezze costituite da bias, varianza ed errore irriducibile.

Compromesso tra distorsione e varianza

Bias e varianza nella pratica

Comprendere come si manifestano bias e varianze nei modelli di machine learning del mondo reale è essenziale per analizzare e migliorare le prestazioni. Nella sezione seguente, approfondiamo come un modello ad alta distorsione e ad alta varianza porti a prestazioni potenzialmente scadenti in un sistema AI.

Modelli con bias elevato

I modelli con bias elevato sono in genere troppo semplicistici per catturare i pattern reali nei dati. Sono inadeguati al set di addestramento, con conseguente scarsa precisione dell'addestramento e dei test. Un esempio classico è la regressione lineare applicata ai dati non lineari mostrati in precedenza. Se la vera relazione tra le caratteristiche e l'obiettivo è quadratica o sinusoidale e ci adattiamo a una linea retta, il modello non ha la capacità di catturare la struttura sottostante.

Sintomi: errore elevato sia nei set di addestramento che in quelli di test. Il bias diventa ampio e porta a scarse prestazioni sia nel set di addestramento che nel set di test.

Modelli ad alta varianza

I modelli ad alta varianza sono eccessivamente flessibili e si adattano troppo bene ai dati di addestramento, incluso il rumore. Si adattano eccessivamente al set di addestramento e non riescono a generalizzare a dati invisibili, portando all'overfitting e a previsioni con una variabilità anormalmente elevata.

Alcuni esempi comuni sono:

  • Alberi decisionali senza potatura (pruning).
  • Regressione polinomiale con gradi elevati.
  • KNN con k molto basso.

Sintomi: basso errore di addestramento ma alto errore di test. Le previsioni variano in modo significativo tra i diversi set di dati. Il termine di varianza domina l'errore, indicando che il modello è instabile per quanto riguarda le modifiche ai dati di addestramento.

Diagnosi di bias e varianza

Alcuni strumenti pratici per diagnosticare questi errori includono:

Curve di apprendimento (mostrate prima nella sezione I):

  • Traccia l'errore di addestramento e convalida rispetto alle dimensioni del set di addestramento.
  • Se entrambi gli errori sono elevati e convergono, indica un bias elevato.

Se l'errore di addestramento è basso e l'errore di convalida è alto, con un divario che non si chiude, suggerisce una varianza elevata. La convalida incrociata può essere applicata per diagnosticare le prestazioni del modello e calcolare la media degli errori dal set di addestramento selezionato.

  • Consente di stimare l'errore di generalizzazione.
  • Utile per confrontare modelli o iperparametri tenendo conto della varianza.

Considerazioni nel mondo reale

In pratica, controllare il compromesso bias-varianza significa meno scegliere il modello "perfetto" e più gestire la complessità attraverso varie strategie. Possiamo applicare diverse tecniche per controllare la variabilità degli errori di previsione applicando alcune delle seguenti strategie:

Regolarizzazione

La regolarizzazione si riferisce a una serie di tecniche utilizzate per limitare o penalizzare la complessità di un modello per migliorare la generalizzazione, ovvero le prestazioni su dati invisibili. In termini matematici, la regolarizzazione modifica la funzione di perdita originale aggiungendo un termine di penalità che scoraggia la complessità (di solito sotto forma di pesi elevati o modelli eccessivamente flessibili).

L'obiettivo è quello di evitare l'overfitting, soprattutto quando si tratta di dati ad alta dimensionalità o limitati. Durante l'addestramento di un modello di machine learning, in genere si riduce al minimo una funzione di perdita come l'errore quadratico medio (MSE)

 RSS=∑i=1n(yi-yi^)2

Con la regolarizzazione, aggiungiamo una penalità a questo obiettivo. 

Regolarizzazione L2 (regressione ridge)

LossRidge=∑i=1n(yi-yi^)2+λ*Penalty

Qui

 λ  è un iperparametro che controlla il compromesso tra l'adattamento dei dati di addestramento e la semplicità del modello.

Aggiunge una penalità proporzionale al quadrato della grandezza dei coefficienti. Ciò scoraggia l'uso di pesi eccessivamente grandi, riducendo la varianza. Il termine di penalità garantisce che le caratteristiche con basso potere predittivo abbiano valori bassi, riducendo efficacemente i coefficienti dei parametri.

Regolarizzazione L1 (lasso)

Incoraggia la scarsità:

 Losslasso=∑i=1n(yi-ŷi)2+λ∑j=1p|βj|

Può eliminare completamente le caratteristiche irrilevanti, semplificando il modello e riducendo così la varianza. Il termine di penalità USD{\sum_{j=1}^{p} |\beta_j}USD garantisce che le caratteristiche insignificanti vengano ridotte a zero, eliminando di fatto completamente le caratteristiche.

Metodi d'insieme

I metodi d'insieme combinano più modelli per ridurre l'errore calcolando la media della deviazione di previsione individuale. Si tratta di combinare o sovrapporre più modelli ad alta varianza per ottenere la massima accuratezza di previsione. Ecco alcuni esempi:

- Il bagging (ad esempio, le foreste casuali) riduce la varianza calcolando la media di più estimator ad alta varianza addestrati su diversi sottoinsiemi di dati.

- Il boosting (ad esempio, xgBoost, AdaBoost) crea un apprendimento efficace correggendo sequenzialmente gli errori dei modelli precedenti, spesso bilanciando la riduzione di bias o varianza con un'attenta messa a punto.

Messa a punto degli iperparametri e selezione del modello

La complessità del modello e la forza della regolarizzazione sono spesso controllate tramite iperparametri. Tecniche come la ricerca a griglia o la ricerca casuale con convalida incrociata o l'ottimizzazione bayesiana possono aiutare a trovare un modello che bilanci il bias e la varianza sui dati trattenuti.

Mixture of Experts | 12 dicembre, episodio 85

Decoding AI: Weekly News Roundup

Unisciti al nostro gruppo di livello mondiale di ingegneri, ricercatori, leader di prodotto e molti altri mentre si fanno strada nell'enorme quantità di informazioni sull'AI per darti le ultime notizie e gli ultimi insight sull'argomento.

Applicazioni all'AI moderna

Il compromesso bias-varianza non è solo teorico. Svolge un ruolo critico nel deep learning e nei sistemi di AI su larga scala. Nell'era moderna di AI, la scelta dell'architettura della rete neurale gioca un ruolo critico nella gestione del compromesso tra bias e varianza. Ecco come due architetture fondamentali, CNN e RNN, gestiscono in pratica questo equilibrio.

1. Reti neurali convoluzionali (CNN): le CNN sono progettate specificamente per dati con una struttura spaziale, più comunemente immagini. Le loro caratteristiche di architettura consentono loro di ridurre la varianza mantenendo un'espressività sufficiente per mantenere basso il bias.

  • Campi recettivi locali (convoluzioni): invece di connettere ogni pixel di input a tutti i neuroni di output (come nelle reti completamente connesse), le CNN utilizzano piccoli filtri (kernel) che scorrono sull'input. Ciò rafforza il presupposto che le caratteristiche locali siano utili, ovvero un bias verso la località spaziale.
  • Condivisione del peso: ogni filtro (o kernel) viene riutilizzato nell'intera immagine, riducendo drasticamente il numero di parametri addestrabili. Ciò limita l'overfitting, riduce la varianza, ma introduce alcuni pregiudizi limitando la flessibilità del modello.
  • Livelli di pooling (ad esempio, max pooling): questi livelli riassumono le mappe di caratteristiche e introducono l'invarianza alla traslazione. Sebbene ciò riduca la varianza ignorando le fluttuazioni minori, potrebbe aumentare il bias scartando alcuni dettagli potenzialmente utili.
  • Apprendimento gerarchico delle caratteristiche: le CNN apprendono dagli edge di basso livello fino alle forme di alto livello, strato per strato. Questa distorsione induttiva stratificata consente la generalizzazione con meno esempi, il che è utile nei domini in cui i dati sono scarsi.

2. Reti neurali ricorrenti (RNN): le RNN sono adattate a dati sequenziali come testo, voce o serie temporali, in cui gli output dipendono da elementi precedenti. Il loro design cerca di bilanciare le dipendenze a lungo termine (che riducono il bias) e la stabilità dell'addestramento (che controlla la varianza).

  • Condivisione del peso nel tempo: le RNN utilizzano gli stessi parametri in ogni fase temporale, introducendo un bias verso la stazionarietà nelle sequenze (supponendo che lo stesso tipo di schema si ripeta), ma riducendo significativamente la varianza limitando la crescita dei parametri.
  • Memoria degli input passati: le RNN mantengono uno stato nascosto h_t che riassume le informazioni passate. In teoria, questo stato consente al modello di ridurre il bias modellando le dipendenze a lungo raggio. Tuttavia, in pratica, i gradienti che svaniscono spesso impediscono di apprendere efficacemente tali relazioni di lungo periodo, aumentando così il bias.
  • Varianti come la memoria a breve-lungo termine (LSTM) e le unità ricorrenti gate (GRU): queste architetture attenuano il problema dei gradienti che svaniscono tramite l'uso di gate, consentendo una migliore conservazione della memoria nel tempo. Di conseguenza, possono ridurre ulteriormente il bias senza un forte aumento della varianza.
  • Stabilità e overfitting dell'addestramento: le RNN profonde (molti strati o sequenze lunghe) sono soggette a una varianza elevata, ossia un rumore di overfitting nelle sequenze di addestramento. Per controllare questo problema vengono spesso utilizzate tecniche come dropout, gradient clipping e sequence bucketing.

Tecniche che controllano il compromesso

  • Dropout: la disattivazione casuale dei neuroni durante l'addestramento aggiunge rumore, costringendo la rete ad apprendere rappresentazioni ridondanti, riducendo l'overfitting e quindi la varianza.
  • Normalizzazione batch: aiuta a stabilizzare e accelerare l'addestramento e spesso riduce la varianza attenuando l'ottimizzazione.
  • Arresto anticipato: previene l'overfitting arrestando l'addestramento quando la perdita di convalida inizia ad aumentare.
  • Apprendimento per trasferimento: i modelli pre-addestrati su set di dati di grandi dimensioni spesso si generalizzano meglio con meno parametri da addestrare, riducendo la varianza su set di dati di piccole dimensioni.
  • Leggi di scalabilità e osservazioni moderne: studi recenti su modelli di grandi dimensioni (come i transformer) mostrano che l'aumento delle dimensioni dei dati, del calcolo e del modello riduce l'errore di test, suggerendo che il bias diminuisce più velocemente dell'aumento della varianza nei modelli ad alta capacità. Tuttavia, una scarsa regolarizzazione o dati insufficienti possono ancora portare all'overfitting.

Fondamenti teorici

Entriamo nei fondamenti matematici del compromesso bias-varianza. Ricordando l'esempio precedente, miriamo a ridurre l'errore totale dei valori previsti e dei valori effettivi. Questo errore è composto da tre componenti: bias, varianza ed errore irriducibile. Possiamo analizzare l'errore quadratico medio atteso di un modello:

 f^(x)

rispetto alla funzione reale: f(x),

dove f^ (x) viene appreso da un set di dati di addestramento D e x è la vera funzione (sconosciuta).

Poniamo:

 y=f(x)+ε,ε∼N(0,σ2)

Ciò significa che per la funzione y=f(x)+ε , l'errore (indicato con ε ) è normalmente distribuito con una media di 0 e una varianza di σ2 , σ indica la deviazione standard della distribuzione

 f^(x) è il valore previsto del modello all'input x

L'aspettativa (o media) viene presa in base a diversi set di dati di addestramento D e rumore ε. Il simbolo E viene utilizzato per esprimere "l'aspettativa," o "il valore atteso," che è un valore reale della media della distribuzione

Siamo interessati all'errore di previsione atteso in un singolo punto x :

 ED,ε[(y-f^(x))2]

Sostituiamo:

 y=f(x)+ε

Così l'espressione diventa:

 =ED,ε[(f(x)+ε-f^(x))2]

Espandendo il quadrato:

 $=ED,ε[(f(x)-f^(x))2+2(f(x)-f^(x))ε+ε2]$

Separiamo l'aspettativa usando la linearità (la linearità è un semplice concetto algebrico, ad esempio, E[A+B]=E[A]+E[B]):

 =ED[(f(x)-f^(x))2]+2ED,ε[(f(x)-f^(x))ε]+Eε[ε2]

Ora, dal momento che:

 E[ε]=0⇒E[(f(x)-f^(x))ε]=0

 E[ε2]=σ2

Otteniamo:

 ED[(f(x)-f^(x))2]+σ2

Scomposizione del primo termine:

Aggiungiamo e sottraiamo 

ED[f^(x)] :

 ED[(f(x)-f^(x))2]=ED[(f(x)-ED[f^(x)]+ED[f^(x)]-f^(x))2]

Poniamo:

 a=f(x)-ED[f^(x)]

 b=ED[f^(x)]-f^(x)

Poi:

 ED[(a+b)2]=a2+ED[b2]+2aED[b]

Poiché ED[b]=0 , il termine incrociato svanisce, e otteniamo:

 =(f(x)-ED[f^(x)])2+ED[(f^(x)-ED[f^(x)])2]

Decomposizione finale di bias-varianza:

ED,ε[(y-f^(x))2]=$$(f(x)-ED[f^(x)])2+ED[(f^(x)-ED[f^(x)])2]+σ2

Qui, il primo termine è  bias2 , il secondo termine è la varianza e il terzo termine è l'errore irriducibile

Ciò dimostra che l'errore totale previsto di previsione può essere suddiviso in:

- Bias²: errore dovuto a ipotesi errate nel modello (ad esempio, modello in underfitting, eccessivamente semplice)

- Varianza: errore dovuto alla sensibilità ai dati di addestramento (ad esempio, modello in overfitting, troppo complesso)

- Rumore irriducibile: casualità ed errori inevitabili nelle osservazioni

Conclusione e ulteriori letture

In sintesi, bias e varianza sono due fonti fondamentali di errore di previsione nel machine learning. Comprendere questo compromesso non è solo un esercizio teorico, bensì influenza direttamente il modo in cui progettiamo, addestriamo e distribuiamo i modelli ML nella pratica.

Che tu scelga tra un modello lineare semplice o una rete neurale profonda e complessa, riconoscere l'equilibrio tra underfittiing e overfitting è essenziale per creare sistemi di AI robusti. Sebbene ci siamo concentrati sull'errore quadratico medio (MSE) come funzione di perdita, questo compromesso è applicabile a un'ampia gamma di distribuzioni e metriche di errore, il che ne fa una considerazione universale nell'apprendimento supervisionato.

Negli ultimi anni, i ricercatori hanno osservato un comportamento intrigante in modelli ampi e sovraparametrizzati come le reti neurali. Nonostante la loro elevata capacità, questi modelli spesso si generalizzano bene, anche quando si adattano perfettamente ai dati di addestramento, apparentemente sfidando il tradizionale framework di bias-varianza.

Questo comportamento sconcertante è esplorato in opere come "Reconciling modern machine learning and the bias-variance trade-off" di Belkin et al. (2019), che introduce il concetto di doppia discesa, e "A universal law of robustness via isoperimetry" di Bubeck et al., che propone un'interpretazione geometrica della generalizzazione.

Via via che costruiamo sistemi di AI più potenti, una comprensione più profonda di queste dinamiche diventa essenziale, non solo per ottimizzare le prestazioni, ma anche per interpretare il comportamento dei modelli, garantire l'equità e promuovere pratiche di AI responsabile.

Rendering 3D di una spirale di diverse icone allineate, come una fotocamera, una manopola del volume e una lavagnetta
Soluzioni correlate
IBM® watsonx.data

Watsonx.data ti consente di scalare l'analytics e l'AI con tutti i tuoi dati, ovunque si trovino, attraverso uno storage dei dati aperto, ibrido e governato.

Scopri watsonx.data
Strumenti e soluzioni di data science

Usa strumenti e soluzioni di data science per scoprire modelli e creare previsioni utilizzando dati, algoritmi, tecniche di machine learning e AI.

Scopri le soluzioni di data science
Servizi di consulenza per dati e analytics

Sblocca il valore dei dati enterprise con IBM® Consulting, creando un'organizzazione basata su insight in grado di generare vantaggi aziendali.

Scopri i servizi di dati e analytics
Fasi successive

Unisci tutti i tuoi dati per AI e analytics con IBM watsonx.data. Fai lavorare i tuoi dati, ovunque si trovino, con il data lakehouse ibrido e aperto per AI e analytics.

  1. Scopri watsonx.data
  2. Esplora le soluzioni di data science
Riferimenti

[1]: Hastie, T., Tibshirani, R., e Friedman, J. The Elements of Statistical Learning. Springer.

[2]: James, G., Witten, D., Hastie, T., e Tibshirani, R. An Introduction to Statistical Learning. Springer.

[3]: Belkin, M., Hsu, D., Ma, S., & Mandal, S. (2019). "Reconciling modern machine learning and the bias-variance trade-off."  Proceedings of the National Academy of Sciences*, 116(32), 15849–15854.

[4]: Bubeck, S., Lee, YT, Price, E., e Razenshteyn, I. (2021). "A universal law of robustness via isoperimetry." Advances in Neural Information Processing Systems, 34, 10167–10179.