Funkcja aktywacji tanh to:
Gdzie , funkcja sigmoidalna jest zdefiniowana jako: σ ( x ) = e x
.
Pytania:
- Czy to naprawdę ma znaczenie między użyciem tych dwóch funkcji aktywacyjnych (tanh vs. sigma)?
- Która funkcja jest lepsza w jakich przypadkach?
Odpowiedzi:
Tak, ma to znaczenie techniczne. Zasadniczo do optymalizacji. Warto przeczytać Efficient Backprop LeCun i in.
Istnieją dwa powody tego wyboru (zakładając, że znormalizowałeś swoje dane, a to jest bardzo ważne):
Zakres funkcji tanh wynosi [-1,1], a zakres funkcji sigmoidalnej wynosi [0,1]
źródło
Wielkie dzięki @jpmuc! Zainspirowany twoją odpowiedzią osobno obliczyłem i narysowałem pochodną funkcji tanh i standardowej funkcji sigmoidalnej. Chciałbym się z wami wszystkimi podzielić. Oto co mam. Jest to pochodna funkcji tanh. Dla danych wejściowych między [-1,1] mamy pochodną między [0,42, 1].
Jest to pochodna standardowej funkcji sigmoidalnej f (x) = 1 / (1 + exp (-x)). Dla danych wejściowych między [0,1] mamy pochodną między [0,20, 0,25].
Najwyraźniej funkcja tanh zapewnia silniejsze gradienty.
źródło