Come funziona il termine momentum per l'algoritmo di backpropagation?


9

Quando si aggiornano i pesi di una rete neurale usando l'algoritmo di backpropagation con un termine di momentum, il tasso di apprendimento dovrebbe essere applicato anche al termine di momentum?

La maggior parte delle informazioni che ho potuto trovare sull'uso della quantità di moto hanno le equazioni simili a queste:

Wi=WiαΔWi+μΔWi1

dove è il tasso di apprendimento e μ è il termine di momentum.αμ

se il termine è maggiore del termine α, nella successiva iterazione il Δ W della precedente iterazione avrà un'influenza maggiore sul peso rispetto a quello corrente.μαΔW

È questo lo scopo del termine momentum? o l'equazione dovrebbe apparire più simile a questa?

Wi=Wiα(ΔWi+μΔWi1)

vale a dire. ridimensionare tutto in base al tasso di apprendimento?

Risposte:


10

nWkiWk

ΔWk(i)=αEWk+μΔWk(i1)EWkWk

L'introduzione della quantità di moto consente l'attenuazione delle oscillazioni nella discesa del gradiente. L'idea geometrica alla base di questa idea può probabilmente essere meglio compresa in termini di un'analisi di eigenspace nel caso lineare. Se il rapporto tra autovalore minimo e massimo è elevato, l'esecuzione di una discesa gradiente è lenta anche se il tasso di apprendimento è elevato a causa del condizionamento della matrice. Lo slancio introduce un certo bilanciamento nell'aggiornamento tra gli autovettori associati agli autovalori più bassi e più grandi.

Per maggiori dettagli mi riferisco a

http://page.mi.fu-berlin.de/rojas/neural/chapter/K8.pdf


Cosa significa sottosella?
David Richerby,

ΔWkμWk(i1)μΔWk(i1)

ΔWk(i1)

Cosa intendi per "variazione della perdita"? È qualcosa del tipo "variazione dell'errore"?
starbeamrainbowlabs

Non significa altro che la derivata dell'errore rispetto ai pesi.
nico,
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.