Dlaczego funkcje aktywacyjne muszą być monotoniczne?

15

Obecnie przygotowuję się do egzaminu z sieci neuronowych. W kilku protokołach z poprzednich badań czytałem, że funkcje aktywacyjne neuronów (w perceptronach wielowarstwowych) muszą być monotoniczne.

Rozumiem, że funkcje aktywacyjne powinny być rozróżnialne, mieć pochodną, ​​która w większości punktów nie jest równa 0, i być nieliniowa. Nie rozumiem, dlaczego bycie monotonnym jest ważne / pomocne.

Znam następujące funkcje aktywacyjne i że są one monotoniczne:

  • ReLU
  • Sigmoid
  • Tanh
  • Softmax: Nie jestem pewien, czy definicja monotoniczności ma zastosowanie do funkcji f:RnRm przy n,m>1
  • Softplus
  • (Tożsamość)

Jednak nadal nie widzę żadnego powodu, dla którego na przykład φ(x)=x2 .

Dlaczego funkcje aktywacyjne muszą być monotoniczne?

(Powiązane pytanie poboczne: czy jest jakiś powód, dla którego funkcja logarytmiczna / wykładnicza nie jest używana jako funkcja aktywacyjna?)

Martin Thoma
źródło
1
@MartinThoma Czy na pewno softmax jest monotoniczny?
Media
1
Dzięki @Media. Aby odpowiedzieć na to pytanie: nie jestem pewien, co „monotoniczne” nawet elementy w funkcji o m > 1 . Dla m = 1 softmax jest stały, a zatem monotoniczny. Ale bez zdefiniowania < dla elementów w R n z n > 1 nie wydaje mi się, żeby monotoniczny miał jakikolwiek sens. f:RnRmm>1m=1<Rnn>1
Martin Thoma
1
@MartinThoma Dzięki, właściwie to było także moje pytanie. Nie wiedziałem i nadal nie wiem, czy istnieje rozszerzenie monotoniczne w funkcjach z wieloma wyjściami. Matematyka, wiesz!
Media

Odpowiedzi:

13

Kryterium monotoniczności pomaga sieci neuronowej łatwiej zjednoczyć się w bardziej dokładny klasyfikator. Zobacz odpowiedź na stos wymiany i artykuł w Wikipedii, aby uzyskać dalsze szczegóły i powody.

Jednak kryterium monotoniczności nie jest obowiązkowe dla funkcji aktywacyjnej - Możliwe jest również trenowanie sieci neuronowych z niemonotonicznymi funkcjami aktywacyjnymi. Po prostu trudniej jest zoptymalizować sieć neuronową. Zobacz odpowiedź Yoshua Bengio .

David Dao
źródło
-1

Podam bardziej matematyczny powód, dlaczego pomaga funkcja monotoniczna!

Korzystając z http://mathonline.wikidot.com/lebesgue-s-theorem-for-the-differentiversity-of-monotone-fun , zakładając, że nasza funkcja aktywacji jest monotonna, możemy powiedzieć, że w prawdziwej linii nasza funkcja będzie różnicowalny. Tak więc gradient funkcji aktywacji nie będzie funkcją nieregularną. Łatwiej będzie znaleźć poszukiwane minima. (niedrogo obliczeniowo)

Funkcje wykładnicze i logarytmiczne są pięknymi funkcjami, ale nie są ograniczone (więc odwrotność twierdzenia Lebesgue'a nie jest prawdziwa, ponieważ Exp i Log są funkcjami różnicowalnymi, które nie są ograniczone do rzeczywistej linii). Nie udaje im się, gdy chcemy sklasyfikować nasze przykłady na ostatnim etapie. Sigmoid i tanh działają naprawdę dobrze, ponieważ mają gradienty, które są łatwe do obliczenia, a ich zakres wynosi odpowiednio (0,1) i (-1,1).

Rohit Rawat
źródło
2
Istnieje nieskończenie wiele funkcji różnicujących, ale nie monotonicznych. Dlaczego więc pomaga funkcja monotoniczna?
Martin Thoma,