Overfitting e underfitting


Risposte:


30

Proverò a rispondere nel modo più semplice. Ognuno di questi problemi ha la sua origine principale:

Overfitting: i dati sono rumorosi, il che significa che ci sono alcune deviazioni dalla realtà (a causa di errori di misurazione, fattori influentemente casuali, variabili non osservate e correlazioni di immondizia) che ci rende più difficile vedere la loro vera relazione con i nostri fattori esplicativi. Inoltre, di solito non è completo (non abbiamo esempi di tutto).

Ad esempio, supponiamo che sto cercando di classificare ragazzi e ragazze in base alla loro altezza, solo perché sono le uniche informazioni che ho su di loro. Sappiamo tutti che anche se i ragazzi sono in media più alti delle ragazze, esiste un'enorme regione di sovrapposizione, che rende impossibile separarli perfettamente solo con quel po 'di informazioni. A seconda della densità dei dati, un modello sufficientemente complesso potrebbe essere in grado di ottenere un tasso di successo migliore su questo compito di quanto teoricamente possibile sulla formazioneset di dati perché potrebbe tracciare confini che consentono ad alcuni punti di essere autonomi. Quindi, se abbiamo solo una persona che è alta 2,04 metri ed è una donna, la modella potrebbe tracciare un piccolo cerchio attorno a quell'area, il che significa che una persona a caso che è alta 2,04 metri è molto probabilmente una donna.

Il motivo alla base di tutto ciò è la fiducia eccessiva nei dati di allenamento (e nell'esempio, il modello afferma che poiché non esiste un uomo con altezza 2,04, allora è possibile solo per le donne).

La sottovalutazione è il problema opposto, in cui il modello non riesce a riconoscere le vere complessità nei nostri dati (ovvero i cambiamenti non casuali nei nostri dati). Il modello presuppone che il rumore sia maggiore di quello che è realmente e quindi utilizza una forma troppo semplicistica. Quindi, se il set di dati ha molte più ragazze che ragazzi per qualsiasi motivo, allora il modello potrebbe classificarle tutte come ragazze.

In questo caso, il modello non si fidava abbastanza dei dati e presupponeva solo che le deviazioni fossero tutte rumore (e nell'esempio, il modello presuppone che i ragazzi semplicemente non esistano).

In conclusione, affrontiamo questi problemi perché:

  • Non abbiamo informazioni complete.
  • Non sappiamo quanto siano rumorosi i dati (non sappiamo di quanto dovremmo fidarci).
  • Non conosciamo in anticipo la funzione sottostante che ha generato i nostri dati e quindi la complessità ottimale del modello.

2
benvenuto nel CV. bella risposta, che mi fa venir voglia di cancellare la mia risposta ...
Haitao Du

1
Penso che la parte riguardante "i confini del disegno" e "i cerchi" sia un po 'confusa ...
Easymode44

Direi solo che l'esempio della previsione dell'altezza tra uomini e donne cade sotto il sottofondo piuttosto che in eccesso.
Digio

6

L'overfitting è quando un modello stima la variabile che stai modellando molto bene sui dati originali, ma non stima bene su un nuovo set di dati (blocco, convalida incrociata, previsione, ecc.). Hai troppe variabili o stimatori nel tuo modello (variabili fittizie, ecc.) E questi fanno diventare il tuo modello troppo sensibile al rumore nei tuoi dati originali. A causa del sovradimensionamento del rumore nei dati originali, il modello prevede scarsamente.

Il underfitting si verifica quando un modello non stima bene la variabile né nei dati originali né nei nuovi dati. Nel modello mancano alcune variabili necessarie per stimare e prevedere meglio il comportamento della variabile dipendente.

L'atto di bilanciamento tra over e underfitting è impegnativo e talvolta senza un chiaro traguardo. Nella modellizzazione delle serie temporali di econometria, questo problema viene risolto abbastanza bene con i modelli di regolarizzazione (LASSO, regressione di cresta, rete elastica) che si rivolgono specificamente alla riduzione del sovradimensionamento riducendo rispettivamente il numero di variabili nel modello, riducendo la sensibilità dei coefficienti a i tuoi dati o una combinazione di entrambi.


5

Forse durante la tua ricerca ti sei imbattuto nella seguente equazione:

Error = IrreducibleError + Bias² + Variance.

Perché affrontiamo questi due problemi nella formazione di un modello?

Lo stesso problema di apprendimento è fondamentalmente un compromesso tra pregiudizio e varianza .

Quali sono i motivi principali per eccesso e insufficiente?

Breve: rumore.

Lungo: errore irriducibile : errori di misurazione / fluttuazioni nei dati, nonché la parte della funzione target che non può essere rappresentata dal modello. Rimisurare la variabile target o cambiare lo spazio delle ipotesi (cioè selezionare un modello diverso) cambia questo componente.

Modifica (per collegarsi alle altre risposte): prestazioni del modello al variare della complessità:

.

dove errorD è l'errore sull'intera distribuzione D (in pratica stimato con set di test).


3
Penso che dovresti definire la tua terminologia. OP non usa i termini "bias" o "varianza" nella domanda, non usi i termini "overfitting" o "underfitting" nella tua risposta (tranne in una citazione della domanda). Penso che questa sarebbe una risposta molto più chiara se spiegassi la relazione tra questi termini.
Gregor --state Monica -

4

Quasi tutti i problemi statistici possono essere indicati nella seguente forma:

  1. Dati i dati find che produce .(y,X)f^y^=f^(X)

  2. Rendi questo più vicino possibile a "vero" , dove è definito comef^ff

y=f(X)+ε

La tentazione è sempre di far sì che produca che siano molto vicini ai dati . Ma quando arriva un nuovo punto dati o utilizziamo dati che non sono stati usati per costruire la previsione potrebbe essere molto lontana. Questo accade perché stiamo cercando di spiegare invece di . Quando lo facciamo, ci allontaniamo dalla "vera" e quindi quando arrivano nuove osservazioni otteniamo una cattiva previsione. Questo quando si verifica un overfitting.f^y^yf^εff

D'altra parte, quando troviamo la domanda è sempre forse possiamo ottenere una migliore che produce un adattamento migliore ed è vicina alla "vera" ? Se riusciamo, nel primo caso ci siamo indebitati.f^f~f

Se si guarda al problema statistico in questo modo, l'adattamento del modello è sempre un equilibrio tra insufficiente e insufficiente e qualsiasi soluzione è sempre un compromesso. Affrontiamo questo problema perché i nostri dati sono casuali e rumorosi.


2

Quali sono i motivi principali per eccesso e insufficiente?

Per l'adattamento eccessivo, il modello è troppo complesso per adattarsi bene ai dati di allenamento. Per il underfitting, il modello è troppo semplice.

Perché affrontiamo questi due problemi nella formazione di un modello?

È difficile scegliere il modello "giusto" e i parametri per i dati.


0

Il sovrautilizzo e il sottoutilizzo sono spiegazioni fondamentalmente inadeguate dei dati da parte di un modello ipotizzato e possono essere viste come il modello che spiega in modo eccessivo o inspiegabile i dati. Questo è creato dalla relazione tra il modello utilizzato per spiegare i dati e il modello che genera i dati. Nel nostro tentativo di spiegare non possiamo accedere al modello sottostante, quindi il nostro giudizio è guidato da un altro fattore: le incertezze o le barre di errore.

Quando, nel tentativo di soddisfare tutta la varianza, utilizziamo un modello troppo complesso, ci stiamo adattando troppo. Questo è creato da noi che ha il regno libero nella scelta del modello e secondo troppa importanza alle barre di errore (o cercando di spiegare tutta la variabilità, che è la stessa). Quando ci limitiamo a un modello che è troppo semplice per descrivere i dati e non assegniamo abbastanza importanza alle barre di errore (o non spieghiamo la variabilità), ci stiamo dimostrando insufficienti.

Come si possono evitare questi due? Modelli supportati da informazioni (non derivati ​​dai dati ma dalla precedente conoscenza del problema) e incertezze significative.


0

In breve, l'overfiit appare come conseguenza di schemi che compaiono nel tuo set di dati di allenamento ma non sono presenti sull'intera popolazione (sono apparsi sfortunatamente) Se usi un modello semplice (pensa per esempio alla regressione lineare), rischi di eccesso è basso, poiché il numero di possibili schemi che è in grado di rilevare è piccolo e quindi anche la possibilità che uno di quelli mostrati casualmente nel campione non sia così grande. Un esempio di ciò può verificarsi se si tenta di studiare correlazioni 1.000.000 di variabili su una popolazione prelevando un campione di 100 individui. Alcune delle funzionalità possono presentare casualmente un'enorme correlazione di esempio nonostante siano completamente indipendenti l'una dall'altra

Un altro motivo di overfitting è il campionamento distorto (i "modelli falsi del campione" sono lì perché il campione non è davvero casuale) Ad esempio, se vuoi studiare la dimensione media di un certo tipo di fungo andando là fuori e trovandoli in natura , è probabile che lo sopravvaluti (i funghi più grandi sono più facili da trovare)

Il underfitting è invece un fenomeno piuttosto semplice. Può significare due cose molto basilari: A) Non abbiamo dati sufficienti per il modello per apprendere il modello di popolazione o B) Il nostro modello non è abbastanza potente per rifletterlo.

y=un'*X+εε

y=X2+ε


0

Risposta breve:

Il motivo principale del sovradimensionamento è l'utilizzo di un modello complesso quando si dispone di un piccolo set di allenamento.

Il motivo principale per il underfitting è l'utilizzo di un modello troppo semplice e che non può funzionare bene sul set di allenamento.


Principale ragione per un overfitting?

  • I modelli con capacità elevata possono sovralimentarsi memorizzando le proprietà del set di addestramento che non sono utili sul set di test.

-Deep Learning book, Goodfellow et al.

L'obiettivo dell'apprendimento automatico è formare un modello sul set di formazione nella speranza che si comporti altrettanto bene sui dati di test. Ma ottenere buone prestazioni sul set di allenamento si traduce sempre in una buona prestazione sul set di test? Non lo sarà, perché i dati di allenamento sono limitati . Se disponi di dati limitati, il tuo modello potrebbe trovare alcuni schemi che funzionano per quel set di addestramento limitato, ma tali schemi non si generalizzano ad altri casi (ad esempio set di test). Questo può essere risolto con:

A- Fornire un set di training più ampio al modello per ridurre la possibilità di avere schemi arbitrari nel set di training.

B- Usare un modello più semplice in modo che il modello non sia in grado di trovare quegli schemi arbitrari nel set di addestramento. Un modello più complesso sarà in grado di trovare schemi più complicati, quindi hai bisogno di più dati per assicurarti che il tuo set di allenamento sia abbastanza grande da non contenere schemi arbitrari.

(ad esempio, immagina di voler insegnare a un modello a rilevare le navi dai camion e di avere 10 immagini di ciascuna. Se la maggior parte delle navi nelle tue immagini sono in acqua, il tuo modello potrebbe imparare a classificare qualsiasi immagine con uno sfondo blu come nave invece di imparare come appare una nave. Ora, se avevi 10.000 immagini di navi e camion, il tuo set di addestramento ha maggiori probabilità di contenere navi e camion in una varietà di sfondi e il tuo modello non può più fare affidamento solo sullo sfondo blu.)

Motivo principale del sottofondo?

  • Il underfitting si verifica quando il modello non è in grado di ottenere un valore di errore sufficientemente basso sul set di addestramento.

  • I modelli con bassa capacità possono avere difficoltà ad adattarsi al set di allenamento.

-Deep Learning book, Goodfellow et al.

Il underfitting si verifica quando il tuo modello non è abbastanza buono per imparare il set di allenamento, il che significa che il tuo modello è troppo semplice. Ogni volta che iniziamo a risolvere un problema, desideriamo un modello che sia almeno in grado di ottenere una buona prestazione sul set di addestramento, e quindi iniziamo a pensare di ridurre il sovradimensionamento. In generale, la soluzione al underfitting è piuttosto semplice: utilizzare un modello più complesso.


0

Considera un esempio in cui abbiamo un'equazione ipotesi / modello,

y=q*X+c,

dove X = lista delle caratteristiche, y = etichetta e q e c sono i coefficienti che dobbiamo addestrare.

Se arriviamo a valori di coefficiente tali che è abbastanza grande e iniziamo a sopprimere il valore delle caratteristiche (cioè X) in tal caso, otteniamo sempre il valore costante di y, indipendentemente da qualsiasi valore X. Questo si chiama modello altamente distorto o poco adatto.

Considera un altro esempio di ipotesi complessa,

y=q*X+r*sqr(X)+s*cube(X)+c, where q,r,s and c are the coefficients.

Dopo aver identificato il valore dei coefficienti migliori, è possibile che per i dati di allenamento sia possibile ottenere la perdita minima. È solo perché abbiamo reso il nostro modello così complesso e strettamente associato che si comporta molto bene con i dati di allenamento. Considerando che con i dati invisibili possiamo ottenere risultati piuttosto opposti. Questo si chiama modello altamente varianced o overfit.

Il modello distorto richiede una maggiore complessità nella selezione del modello, mentre il modello ad alta varianza richiede una riduzione della complessità nella selezione del modello. La tecnica di regolarizzazione può aiutarci a identificare il giusto livello di complessità del modello e attraverso questa tecnica possiamo superare entrambi i problemi.


È possibile utilizzare la formattazione matematica nella risposta. Ulteriori informazioni: math.meta.stackexchange.com/questions/5020/…
Sycorax dice
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.