Regolarizzazione: perché moltiplicare per 1 / 2m?


10

Nelle note di lezione della settimana 3 del corso di apprendimento automatico Coursera di Andrew Ng , viene aggiunto un termine alla funzione di costo per implementare la regolarizzazione:

J+(θ)=J(θ)+λ2mj=1nθj2

Gli appunti delle lezioni dicono:

Potremmo anche regolarizzare tutti i nostri parametri theta in un'unica somma:

minθ 12m [i=1m(hθ(x(i))y(i))2+λ j=1nθj2]

12m viene successivamente applicato al termine di regolarizzazione delle reti neurali :

Ricordiamo che la funzione di costo per la regressione logistica regolarizzata era:

J(θ)=1mi=1m[y(i) log(hθ(x(i)))+(1y(i)) log(1hθ(x(i)))]+λ2mj=1nθj2

Per le reti neurali, sarà leggermente più complicato:

J(Θ)=1mi=1mk=1K[yk(i)log((hΘ(x(i)))k)+(1yk(i))log(1(hΘ(x(i)))k)]+λ2ml=1L1i=1slj=1sl+1(Θj,i(l))2
  • Perché la metà costante viene utilizzata qui? In modo che sia cancellato nella derivata J ?
  • Perché la divisione per m esempi di formazione? In che modo la quantità di esempi di formazione influisce sulle cose?

sei sicuro che l'1 / m sia sulla regolarizzazione e non sulla risposta di J (theta) AFAIK @DikranMarsupial sta facendo questo assunto ...... o J (theta) stesso ha un termine di 1 / m?
seanv507,

Tale ipotesi non è corretta: viene applicato sia alla funzione di costo non regolarizzata sia al termine di regolarizzazione. Ho aggiornato la domanda per fornire le formule complete. 12m
Tom Hale,

Risposte:


5

Supponiamo di avere 10 esempi e di non dividere un costo di regolarizzazione L2 per numero di esempi m . Quindi una "posizione dominante" del costo di regolarizzazione L2 rispetto a un costo di entropia trasversale sarà come 10: 1, perché ogni esempio di addestramento può contribuire al costo complessivo proporzionalmente a 1 / m = 1/10.

Se hai altri esempi, diciamo 100, allora il "dominio" del costo di regolarizzazione L2 sarà qualcosa come 100: 1, quindi devi ridurre di conseguenza un λ , il che è scomodo. È meglio avere una costante λ indipendentemente dalla dimensione del lotto.

Aggiornamento: per rendere questo argomento più forte ho creato un quaderno jupyter .


1
Hmm, ma non è lo scopo del fattore 1 / m prima della funzione di costo che ciascun esempio di formazione contribuisce equamente al costo? Quindi, poiché stiamo già calcolando la media dei costi individuali, questa non dovrebbe essere la causa del dominio del termine L2. Tuttavia, dalla tua grande simulazione vedo che il fattore 1 / m anche prima del termine L2 aiuta. Semplicemente non capisco l'intuizione (ancora).
Milania,

Perché è scomodo ?? è semplice dividere il costo L2 per il numero di campioni. Penso che forse tu l'abbia definito nel modo sbagliato. Penso che volessi dire che è scomodo ridimensionare manualmente il costo di L2 ogni volta, è meglio dividere per il numero di campioni come parte della formula per ridimensionarlo automaticamente.
SpaceMonkey il

6

La funzione di perdita sul set di allenamento è generalmente una somma sugli schemi che comprendono il set di allenamento, quindi man mano che il set di allenamento diventa più grande, il primo termine si ridimensiona essenzialmente in modo lineare con . Possiamo restringere un po ' l'intervallo per il seraching per un buon valore di se prima dividiamo il termine di regolarizzazione per per compensare la dipendenza di su . Il 2 ovviamente è davvero nel denominatore per semplificare i derivati ​​necessari per l'algoritmo di opimizzazione utilizzato per determinare il ottimale .m λ m J ( θ ) m θJ(θ)mλmJ(θ)mθ


Grazie per aver spiegato il ridimensionamento dei costi non regolarizzato con . Non riesco ancora a capire come la divisione per aiuterà un singolo valore funzionare meglio con valori molto diversi di . Il costo non regolarizzato è già fortemente dipendente da , quindi perché preoccuparsi del termine di regolarizzazione che dipende da parametri, non da esempi? È perché con più esempi di allenamento, la varianza diminuirà dato lo stesso numero di parametri? m λ m m n mmmλmmnm
Tom Hale,

La funzione di perdita nella domanda è una media su tutti gli esempi (cioè è divisa per m), non una somma, quindi non vedo davvero come funziona questa risposta.
Denziloe,

@Denziloe si applica anche al termine di regolarizzazione.
Dikran Marsupial,

2

Mi sono chiesto esattamente la stessa cosa quando ho seguito questo corso e ho finito per ricercarlo un po '. Ti darò una breve risposta qui, ma puoi leggere una panoramica più dettagliata in un post sul blog che ho scritto al riguardo .

Credo che almeno in parte la ragione di questi coefficienti di scala sia che la regolarizzazione di L² è probabilmente entrata nel campo dell'apprendimento profondo attraverso l'introduzione del concetto correlato, ma non identico, di riduzione del peso.

Il fattore 0,5 è quindi lì per ottenere un buon coefficiente solo λ per il decadimento del peso nel gradiente e il ridimensionamento di m ... beh, ci sono almeno 5 diverse motivazioni che ho trovato o trovato:

  1. Un effetto collaterale della discesa del gradiente batch: quando una singola iterazione della discesa del gradiente viene invece formalizzata sull'intero set di allenamento, risultando in un algoritmo chiamato talvolta discesa del gradiente batch, il fattore di ridimensionamento di 1 / m, introdotto per rendere comparabile la funzione di costo attraverso set di dati di dimensioni diverse, viene automaticamente applicato al termine di decadimento del peso.
  2. Passa al peso di un singolo esempio: vedi l'interessante intuizione di Grez.
  3. Rappresentatività del set di allenamento: ha senso ridimensionare la regolarizzazione man mano che le dimensioni del set di allenamento aumentano, poiché statisticamente aumenta anche la sua rappresentatività della distribuzione complessiva. Fondamentalmente, più dati abbiamo, meno è necessaria la regolarizzazione.
  4. Rendere λ comparabile: sperando di mitigare la necessità di cambiare λ quando m cambia, questo ridimensionamento rende λ stesso comparabile attraverso set di dati di dimensioni diverse. Ciò rende λ uno stimatore più rappresentativo del grado effettivo di regolarizzazione richiesto da un modello specifico su un problema di apprendimento specifico.
  5. Valore empirico: il grande notebook grezdimostra che questo migliora le prestazioni in pratica.

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.