Relu ha un gradiente 0 per definizione, quindi perché il gradiente svanire non è un problema per x <0?


10

Per definizione, Relu è max(0,f(x)). Poi la sua pendenza è definito come: 1 if x > 0 and 0 if x < 0.

Questo non significherebbe che il gradiente è sempre 0 (svanisce) quando x <0? Allora perché diciamo che Relu non soffre del problema svanire gradiente?

Risposte:


5

Per lo più hai ragione! ReLU ha un problema con la scomparsa del gradiente, ma solo da un lato, quindi lo chiamiamo qualcos'altro: il "problema ReLU morente". Vedi questa risposta di overflow dello stack per ulteriori informazioni: Qual è il problema "morire ReLU" nelle reti neurali?

È una piccola differenza semantica. Molte funzioni (tanh e logistica / sigmoide) hanno derivati ​​molto vicini allo zero quando si è fuori dal range operativo standard. Questo è il problema del "gradiente evanescente". Peggio diventa, più difficile è tornare nella buona zona. ReLU non peggiora quanto più sei nella direzione positiva, quindi nessun problema di gradiente evanescente (da quel lato). Questa asimmetria potrebbe essere sufficiente per giustificare chiamarla come qualcosa di diverso, ma le idee sono abbastanza simili.


2
Vale la pena aggiungere: il problema del gradiente evanescente tende a riguardare cambiamenti progressivi nella profondità di una rete e non direttamente sulle proprietà delle funzioni di trasferimento dei neuroni.
Neil Slater,

1

Svanire significa che va verso 0 ma non sarà mai veramente 0. Avere gradienti di 0 rende molto facili i calcoli, avere gradienti vicini a 0 significa che ci sono cambiamenti, solo molto piccoli che significano apprendimento lento e problemi numerici. 1 e 0 sono due dei numeri più semplici da calcolare in questo tipo di problemi di ottimizzazione.

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.