Che cos'è la regolarizzazione in inglese?


74

A differenza di altri articoli, ho trovato la voce di Wikipedia per questo argomento illeggibile per una persona non matematica (come me).

Ho capito l'idea di base, secondo cui preferisci modelli con meno regole. Quello che non capisco è come si passa da un insieme di regole a un "punteggio di regolarizzazione" che è possibile utilizzare per ordinare i modelli dal meno alla maggior parte.

Puoi descrivere un semplice metodo di regolarizzazione?

Sono interessato al contesto dell'analisi dei sistemi statistici di negoziazione. Sarebbe bello se potessi descrivere se / come posso applicare la regolarizzazione per analizzare i seguenti due modelli predittivi:

Modello 1 - prezzo in aumento quando:

  • exp_moving_avg (prezzo, periodo = 50)> exp_moving_avg (prezzo, periodo = 200)

Modello 2 - prezzo in aumento quando:

  • prezzo [n] <prezzo [n-1] 10 volte di seguito
  • exp_moving_avg (prezzo, periodo = 200) in aumento

Ma sono più interessato a farmi un'idea di come fai la regolarizzazione. Quindi se conosci modelli migliori per spiegarlo, per favore, fallo.


7
Un esempio è la regressione della cresta, che è OLS con un limite sulla somma dei coefficienti quadrati. Ciò introdurrà una distorsione nel modello, ma ridurrà la varianza dei coefficienti, a volte in modo sostanziale. LASSO è un altro metodo correlato, ma pone un vincolo L1 sulla dimensione dei coefficienti. Ha il vantaggio di perdere coefficienti. Ciò è utile per le situazioni p >> n Regolarizzare, in un certo senso, significa "ridurre" il modello per evitare un eccesso di adattamento (e per ridurre la varianza dei coefficienti), che di solito migliora le prestazioni predittive del modello.
HairyBeast,

2
@HairyBeast Dovresti inserire il tuo bel commento come risposta. Se possibile, prova ad aggiungere un esempio illustrativo in modo che l'OP possa capire come si traduce nel problema attuale.
chl,

1
@HairyBeast, quindi posso dire che la regolarizzazione è solo un metodo per implementare l'idea del compromesso di bias-varianza ?
avocado,

Ho trovato questo video molto utile, in particolare nella visualizzazione delle diverse forme di regolarizzazione Lp: youtube.com/watch?v=sO4ZirJh9ds
Anm

La regolarizzazione serve per affrontare l'overfit nel modello che viene appreso. Ho cercato di spiegare in parole povere e visivamente. Di seguito è riportato il link all'articolo medium.com/@vamsi149/…
solver149

Risposte:


57

In termini semplici, la regolarizzazione sta sintonizzando o selezionando il livello preferito di complessità del modello in modo che i tuoi modelli siano più bravi a prevedere (generalizzare). Se non lo fai, i tuoi modelli potrebbero essere troppo complessi, troppo adatti o troppo semplici e poco adatti, in ogni caso dando previsioni sbagliate.

Se i minimi quadrati si adattano a un modello complesso a un piccolo insieme di dati di allenamento che probabilmente si sovrautilizzeranno, questa è la situazione più comune. La complessità ottimale del modello dipende dal tipo di processo che si sta modellando e dalla qualità dei dati, quindi non esiste una complessità a priori corretta di un modello.

Per regolarizzare hai bisogno di 2 cose:

  1. Un modo per testare la capacità dei tuoi modelli di prevedere, ad esempio utilizzando la convalida incrociata o un insieme di dati di convalida (non è possibile utilizzare l' errore di adattamento per questo).
  2. Un parametro di ottimizzazione che consente di modificare la complessità o la scorrevolezza del modello o una selezione di modelli di diversa complessità / scorrevolezza.
Fondamentalmente si regola il parametro complessità (o si modifica il modello) e si trova il valore che fornisce le migliori previsioni del modello.

Si noti che l'errore di regolarizzazione ottimizzato non sarà una stima accurata dell'errore di predizione globale, quindi dopo la regolarizzazione sarà finalmente necessario utilizzare un set di dati di convalida aggiuntivo o eseguire alcune analisi statistiche aggiuntive per ottenere un errore di predizione imparziale.

Un'alternativa all'utilizzo dei test di validazione (incrociata) consiste nell'utilizzare Priori bayesiani o altri metodi per penalizzare la complessità o la non scorrevolezza, ma questi richiedono una maggiore sofisticazione statistica e conoscenza del problema e delle caratteristiche del modello.


2
+1 da me. Mi piace che questa risposta stia iniziando e sia così facile da capire ...
Andrew,

2
La regolarizzazione è mai davvero utilizzata per ridurre il underfitting? Nella mia esperienza, la regolarizzazione viene applicata su un modello complesso / sensibile per ridurre la complessità / sensibilità, ma mai su un modello semplice / insensibile per aumentare la complessità / sensibilità.
Richard Hardy,

Questa risposta ora è piuttosto vecchia, ma presumo che Toby si riferisse è che la regolarizzazione è un modo di principio per adattarsi a un modello di complessità appropriata data la quantità di dati; è un'alternativa sia alla scelta a priori di un modello con troppi parametri (o di quelli sbagliati), sia alla selezione di un modello troppo complesso e sovradimensionato.
Bryan Krause,

26

Supponiamo di eseguire l'apprendimento tramite la minimizzazione del rischio empirico.

Più precisamente:

  • L(actual value, predicted value)
  • vuoi adattare il tuo modello in modo tale che le sue previsioni minimizzino la media della funzione di perdita, calcolata solo sui dati di allenamento (gli unici dati che hai)

Model=argminL(actual,predicted(Model))

Ma se non hai abbastanza dati e ci sono enormi quantità di variabili nel tuo modello, è molto probabile trovare un tale modello che non solo spieghi i modelli ma spieghi anche il rumore casuale nei tuoi dati. Questo effetto è chiamato overfitting e porta al degrado della capacità di generalizzazione del tuo modello.

Model=argminL(actual,predicted(Model))+λR(Model)

R(Model)RRR

Ra¯


12

In parole povere, la regolarizzazione riguarda il beneficio delle soluzioni che ti aspetteresti di ottenere. Come accennato, ad esempio, puoi beneficiare di soluzioni "semplici", per una certa definizione di semplicità. Se il tuo problema ha delle regole, una definizione può essere meno regole. Ma questo dipende dal problema.

Stai facendo la domanda giusta, comunque. Ad esempio in Support Vector Machines questa "semplicità" deriva dalla rottura dei legami nella direzione del "margine massimo". Questo margine è qualcosa che può essere chiaramente definito in termini di problema. C'è un'ottima derivazione geometrica nell'articolo SVM su Wikipedia . Si scopre che il termine di regolarizzazione è, probabilmente, la "salsa segreta" delle SVM.

Come si fa la regolarizzazione? In generale, questo viene fornito con il metodo che usi, se usi SVM stai effettuando la regolarizzazione L2, se stai usando LASSO stai facendo la regolarizzazione L1 (vedi cosa dice la pelosa). Tuttavia, se stai sviluppando il tuo metodo, devi sapere come distinguere le soluzioni desiderabili da quelle non desiderabili e avere una funzione che quantifica questo. Alla fine avrai un termine di costo e un termine di regolarizzazione e vuoi ottimizzare la somma di entrambi.


1

Le tecniche di regolarizzazione sono tecniche applicate ai modelli di apprendimento automatico che rendono più fluido il confine decisionale / modello adattato. Queste tecniche aiutano a prevenire un eccesso di adattamento.

C


0

In termini semplici, la regolarizzazione è una tecnica per evitare un adattamento eccessivo durante l'addestramento degli algoritmi di apprendimento automatico. Se si dispone di un algoritmo con sufficienti parametri liberi, è possibile interpolare con grande dettaglio il campione, ma gli esempi che escono dal campione potrebbero non seguire questa interpolazione di dettagli in quanto ha semplicemente catturato rumore o irregolarità casuali nel campione anziché la tendenza reale.

Il superadattamento viene evitato limitando il valore assoluto dei parametri nel modello. Ciò può essere fatto aggiungendo un termine alla funzione di costo che impone una penalità in base all'entità dei parametri del modello. Se la grandezza viene misurata nella norma L1, questa viene chiamata "regolarizzazione L1" (e di solito si traduce in modelli sparsi), se viene misurata nella norma L2, questa viene chiamata "regolarizzazione L2" e così via.

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.