Perché le funzioni di costo utilizzano l'errore quadrato?


73

Sto appena iniziando con l'apprendimento automatico e fino ad ora ho avuto a che fare con una regressione lineare su una variabile.

Ho imparato che esiste un'ipotesi, che è:

hθ(x)=θ0+θ1x

Per scoprire buoni valori per i parametri e vogliamo minimizzare la differenza tra il risultato calcolato e il risultato effettivo dei nostri dati di test. Quindi sottraiamoθ0θ1

hθ(x(i))y(i)

per tutti da a . Quindi calcoliamo la somma su questa differenza e quindi calcoliamo la media moltiplicando la somma per . Fin qui tutto bene. Ciò comporterebbe:i1m1m

1mi=1mhθ(x(i))y(i)

Ma questo non è ciò che è stato suggerito. Invece il corso suggerisce di assumere il valore quadrato della differenza e di moltiplicarsi per . Quindi la formula è:12m

12mi=1m(hθ(x(i))y(i))2

Perché? Perché utilizziamo la funzione quadrata qui e perché moltiplichiamo per invece di ?12m1m


3
Domanda correlata su stats.stackexchange.com
user1205197


perché è una divergenza di Bregman
Andrew

Risposte:


41

La funzione di perdita non funzionerebbe perché incentiva l'impostazione di su qualsiasi valore finito e su .θ1θ0

Chiamiamo il residuo per .r(x,y)=1mi=1mhθ(x(i))yh

Il tuo obiettivo è rendere più vicino possibile a zero , non solo minimizzarlo . Un valore negativo elevato è altrettanto negativo di un valore positivo elevato.r

EDIT: puoi contrastarlo limitando artificialmente lo spazio dei parametri (ad es. Vuoi ). In questo caso, i parametri ottimali si troverebbero su alcuni punti al limite dello spazio dei parametri. Vedi https://math.stackexchange.com/q/896388/12467 . Questo non è quello che vuoi.Θ|θ0|<10

Perché utilizziamo la perdita quadrata

L'errore al quadrato forza la corrispondenza di e . È minimizzato a , se possibile, ed è sempre , perché è un quadrato del numero reale .h(x)yu=v0uv

|uv|funzionerebbe anche per lo scopo sopra, come farebbe , con un numero intero positivo. Il primo di questi viene effettivamente utilizzato (si chiama perdita ; potresti anche imbatterti nella perdita , che è un altro nome per errore al quadrato).(uv)2nn12

Quindi, perché la perdita al quadrato è migliore di queste? Questa è una domanda profonda legata al legame tra frequentatore e inferenza bayesiana . In breve, l'errore al quadrato si riferisce al rumore gaussiano .

Se i tuoi dati non si adattano esattamente a tutti i punti, ovvero non è zero per un certo punto, non importa quale tu scelga (come accadrà sempre nella pratica), ciò potrebbe essere a causa del rumore . In qualsiasi sistema complesso ci saranno molte piccole cause indipendenti per la differenza tra il modello e la realtà : errore di misura, fattori ambientali ecc. Secondo il Teorema del limite centrale (CLT), il rumore totale verrebbe distribuito normalmente , cioè secondo il Distribuzione gaussiana . Vogliamo scegliere il miglioreh(x)yθ h yθprendendo in considerazione questa distribuzione del rumore. Supponiamo che , la parte di che il tuo modello non possa spiegare, segue la distribuzione gaussiana . Stiamo usando le maiuscole perché adesso stiamo parlando di variabili casuali.R=h(X)YyN(μ,σ)

La distribuzione gaussiana ha due parametri, media e varianza . Vedi qui per capire meglio questi termini.μ=E[R]=1mihθ(X(i))Y(i))σ2=E[R2]=1mi(hθ(X(i))Y(i)))2

  • Consideriamo , è l' errore sistematico delle nostre misurazioni. Usa per correggere l'errore sistematico, in modo che (esercizio per il lettore). Nient'altro da fare qui.μh(x)=h(x)μμ=E[R]=0

  • σ rappresenta l' errore casuale , chiamato anche rumore . Una volta che ci siamo occupati della componente sistematica del rumore come nel punto precedente, il miglior predittore si ottiene quando è ridotto a icona. Detto in altro modo, il miglior predittore è quello con la distribuzione più stretta (la varianza più piccola) attorno al valore previsto, ovvero la varianza più piccola. Ridurre al minimo la perdita minima quadrata è la stessa cosa di ridurre al minimo la varianza! Questo spiega perché la perdita meno quadrata funziona per una vasta gamma di problemi. Il rumore di fondo è molto spesso gaussiano, a causa del CLT, e minimizzare l'errore al quadrato risulta essere il giustoσ2=1mi(hθ(X(i))Y(i)))2 cose da fare!

Per prendere contemporaneamente in considerazione sia la media che la varianza, includiamo un termine di bias nel nostro classificatore (per gestire l'errore sistematico ), quindi ridurre al minimo la perdita quadrata.μ

Domande di follow-up:

  • Perdita dei minimi quadrati = errore gaussiano. Ogni altra funzione di perdita corrisponde anche alla distribuzione del rumore? Sì. Ad esempio, la perdita (minimizzando il valore assoluto invece dell'errore al quadrato) corrisponde alla distribuzione di Laplace (Guarda la formula per il PDF nella casella info - è solo il gaussiano con anziché ). Una perdita popolare per le distribuzioni di probabilità è la divergenza KL . -La distribuzione gaussiana è molto ben motivata a causa del teorema del limite centrale1|xμ|(xμ)2, di cui abbiamo discusso in precedenza. Quando la distribuzione di Laplace è il modello di rumore giusto? Ci sono alcune circostanze in cui si verifica naturalmente, ma è più comunemente come un regolarizzatore per applicare la scarsità : la perdita è la meno convessa tra tutte le perdite convesse.1

    • Come menziona Jan nei commenti, il minimizzatore delle deviazioni quadrate è la media e il minimizer della somma delle deviazioni assolute è la mediana . Perché dovremmo trovare la mediana dei residui anziché la media? A differenza della media, la mediana non viene respinta da un valore anomalo molto grande. Pertanto, la perdita viene utilizzata per una maggiore robustezza. A volte viene utilizzata una combinazione dei due.1
  • Ci sono situazioni in cui minimizziamo sia la media che la varianza? Sì. Cerca il compromesso di bias-varianza . Qui, stiamo esaminando una serie di classificatori e chiedendo quale tra questi sia il migliore. Se chiediamo quale serie di classificatori sia la migliore per un problema, ridurre al minimo sia la distorsione che la varianza diventa importante. Si scopre che c'è sempre un compromesso tra loro e usiamo la regolarizzazione per raggiungere un compromesso.hθH

Per quanto riguarda la termine12

Il 1/2 non ha importanza e in realtà non lo è nemmeno la - sono entrambe costanti. Il valore ottimale di rimarrebbe lo stesso in entrambi i casi.mθ

  • L'espressione per il gradiente diventa più bella con , perché il 2 dal termine quadrato si annulla.12

    • Quando scriviamo codice o algoritmi, di solito ci occupiamo maggiormente del gradiente, quindi aiuta a mantenerlo conciso. Puoi controllare i progressi semplicemente controllando la norma del gradiente. La funzione di perdita stessa viene talvolta omessa dal codice perché viene utilizzata solo per la convalida della risposta finale.
  • La è utile se si risolve questo problema con la discesa del gradiente. Quindi il gradiente diventa la media di termini anziché una somma, quindi la sua scala non cambia quando si aggiungono più punti dati.mm

    • Ho riscontrato questo problema in precedenza: testare il codice con un piccolo numero di punti e funziona bene, ma quando lo si verifica con l'intero set di dati si verifica una perdita di precisione e talvolta over / under -flow, ovvero il gradiente diventa nano inf. Per evitarlo, basta normalizzare il numero wrt di punti dati.
  • Queste decisioni estetiche vengono utilizzate qui per mantenere la coerenza con le equazioni future in cui aggiungere termini di regolarizzazione . Se si include , il parametro di regolarizzazione non dipenderà dalla dimensione del set di dati e sarà più interpretabile in tutti i problemi.mλm


hai detto "quando prendi la derivata, l'espressione è più bella, perché il 2 cancella il 2 dal termine quadrato". Ma perché vogliamo prendere il suo derivato?
DrGeneral,

In genere ottimizziamo la perdita utilizzando la discesa gradiente, che richiede l'assunzione del derivato. Non ho menzionato questo perché dovrebbe essere chiaro dal contesto di questa domanda.
Duro

1
Duro, perdona la mia ingenuità, ma perché non usare il valore assoluto invece del quadrato?
Alexander Suraphel,

1
Anche l'errore assoluto può funzionare, ma in tal caso regredirai alla mediana prevista anziché alla media. Prendi un piccolo elenco di numeri e vedi come differisce la perdita spostando la tua stima (sia per errore al quadrato che assoluto)
Jan van der Vegt,

@AlexanderSuraphel Ci scusiamo per il ritardo nella risposta :) Ho aggiunto una sezione sopra per rispondere a questo
duro

25

Il coefficiente 1/2 è solo per comodità; rende la derivata, che è la funzione effettivamente ottimizzata, sembra più bella. L'1 / m è più fondamentale; suggerisce che siamo interessati all'errore quadratico medio . Ciò consente di effettuare confronti equi quando si modifica la dimensione del campione e impedisce l'overflow. I cosiddetti ottimizzatori "stocastici" utilizzano un sottoinsieme del set di dati (m '<m). Quando si introduce un regolarizzatore (un termine aggiuntivo per la funzione obiettivo), l'utilizzo del fattore 1 / m consente di utilizzare lo stesso coefficiente per il regolarizzatore indipendentemente dalle dimensioni del campione.

Quanto alla domanda sul perché il quadrato e non semplicemente la differenza: non vuoi che le sottostime vengano penalizzate in modo simile alle sopravvalutazioni? La quadratura elimina l'effetto del segno dell'errore. Anche prendere il valore assoluto (norma L1), ma il suo derivato non è definito all'origine, quindi richiede una maggiore raffinatezza da usare. La norma L1 ha i suoi usi, quindi tienilo a mente, e forse chiedi all'insegnante se lo coprirà.


4
Oltre alla differenziabilità, la norma è unica nelle norme in quanto è uno spazio di Hilbert. Il fatto che la norma derivi da un prodotto interno rende disponibile un'enorme quantità di macchinari per che non è disponibile per altre norme. L p L 2L2LpL2
Steven Gubkin,

6

La misura dell'errore nella funzione di perdita è una "distanza statistica"; in contrasto con la comprensione popolare e preliminare della distanza tra due vettori nello spazio euclideo. Con la "distanza statistica" stiamo tentando di mappare la "dis-somiglianza" tra il modello stimato e il modello ottimale allo spazio euclideo.

Non esiste una regola restrittiva per quanto riguarda la formulazione di questa "distanza statistica", ma se la scelta è appropriata, una riduzione progressiva di questa "distanza" durante l'ottimizzazione si traduce in una stima del modello progressivamente migliorante. Di conseguenza, la scelta della "distanza statistica" o della misura dell'errore è correlata alla distribuzione dei dati sottostanti.

In effetti, esistono diverse misure di distanza / errore ben definite per diverse classi di distribuzioni statistiche. Si consiglia di selezionare la misura dell'errore in base alla distribuzione dei dati in mano. Accade così che la distribuzione gaussiana sia onnipresente e, di conseguenza, la sua misura di distanza associata, la norma L2 è la misura di errore più popolare. Tuttavia, questa non è una regola ed esistono dati del mondo reale per i quali un'implementazione di 'ottimizzazione' efficiente * adotterà una misura di errore diversa rispetto alla norma L2.

Considera l'insieme delle divergenze di Bregman . La rappresentazione canonica di questa misura di divergenza è la norma L2 (errore al quadrato). Include anche entropia relativa (divergenza di Kullback-Liebler), distanza euclidea generalizzata (metrica Mahalanobis) e funzione Itakura-Saito. Puoi leggere di più al riguardo in questo articolo su Funzionale divergenza di Bregman e stima bayesiana delle distribuzioni .

Take-away: la norma L2 ha un insieme interessante di proprietà che la rende una scelta popolare per la misura dell'errore (altre risposte qui ne hanno menzionate alcune, sufficienti allo scopo di questa domanda) e l'errore al quadrato sarà appropriato scelta il più delle volte. Tuttavia, quando la distribuzione dei dati lo richiede, ci sono misure di errore alternative tra cui scegliere e la scelta dipende in gran parte dalla formulazione della routine di ottimizzazione.

* La misura di errore "appropriata" renderebbe la funzione di perdita convessa per l'ottimizzazione, il che è molto utile, al contrario di qualche altra misura di errore in cui la funzione di perdita è non convessa e quindi notoriamente difficile.


5

Oltre ai punti chiave fatti da altri, l'uso dell'errore al quadrato pone una maggiore enfasi sull'errore più grande (cosa succede a 1/2 quando lo quadrate contro 3/2?).

Avere un algoritmo che sposta gli errori frazionari, che probabilmente comporterebbe una classificazione corretta o una differenza molto piccola tra stima e verità di base, se lasciato solo vicino allo zero, lasciando i grandi errori come errori di grandi dimensioni o errate classificazioni, non è una caratteristica desiderabile di un algoritmo.

L'uso dell'errore al quadrato utilizza l'errore come peso di importanza implicita per regolare la previsione.


quindi, qual è l'errore arbitrario
jeza

3

Nella tua formulazione, cerchi di ottenere la deviazione media della tua approssimazione dai dati osservati.

Se il valore medio della tua approssimazione è vicino o uguale al valore medio dei dati osservati (qualcosa che è desiderabile e spesso accade con molti schemi di approssimazione), il risultato della tua formulazione sarebbe zero o trascurabile, perché gli errori positivi compensano il negativo errori. Ciò potrebbe portare alla conclusione che la tua approssimazione è meravigliosa per ogni campione osservato, mentre potrebbe non essere il caso. Ecco perché usi il quadrato dell'errore in ogni campione e li aggiungi (il tuo turno è positivo per ogni errore).

Naturalmente questa è solo una possibile soluzione, in quanto avresti potuto usare la norma L1 (valore assoluto dell'errore in ciascun campione) o molte altre, invece della norma L2.

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.