Co oznacza termin nasycenie nieliniowości?


30

Czytałem artykuł Klasyfikacja ImageNet z głębokimi sieciami neuronowymi splotowymi, aw części 3, w której wyjaśnili architekturę swojej sieci neuronowej splotowej, wyjaśnili, w jaki sposób woleli:

nieliniowa nieliniowośćf(x)=max(0,x).

ponieważ trenowanie było szybsze. W tym artykule wydaje się, że odnoszą się one do nasycenia nieliniowości jako bardziej tradycyjnych funkcji używanych w CNN, funkcji sigmoidalnej i funkcji stycznej hiperbolicznej (tj. i jako nasycenie).f(x)=tanh(x)f(x)=11+ex=(1+ex)1

Dlaczego nazywają te funkcje „nasycaniem” lub „nienasyceniem”? W jakim sensie są to funkcje „nasycające” lub „nienasycające”? Co oznaczają te terminy w kontekście splotowych sieci neuronowych? Czy są wykorzystywane w innych obszarach uczenia maszynowego (i statystyk)?


Uważam również, że ta odpowiedź na quora jest bardzo pomocna.
szczery

Odpowiedzi:


26

Intuicja

Funkcja aktywacji nasycenia ściska wejście.


Definicje

  • f jest nienasycającym iff(|limzf(z)|=+)(|limz+f(z)|=+)
  • f jest nasyceniem iff nie jest nasyceniem.f

Definicje te nie są specyficzne dla splotowych sieci neuronowych.


Przykłady

Funkcja aktywacji rektyfikowanej jednostki liniowej (ReLU), która jest zdefiniowana jako nie nasyca, ponieważ :f(x)=max(0,x)limz+f(z)=+

wprowadź opis zdjęcia tutaj

Funkcja aktywacji sigmoidalnej, która jest zdefiniowana jako jest nasycona, ponieważ zmiażdży liczby rzeczywiste w zakresie od :f(x)=11+ex[0,1]

wprowadź opis zdjęcia tutaj

Funkcja aktywacji tanh (styczna hiperboliczna) jest nasycona, ponieważ zmiażdży rzeczywiste liczby w zakresie od :[1,1]

wprowadź opis zdjęcia tutaj

(dane pochodzą z CS231n , licencja MIT)


1
ah, miło ma sens! Wiem, że to nie było moje pierwotne pytanie, ale jaka jest ta właściwość ważna w kontekście ML i CNN?
Charlie Parker

W przypadku ANN, aby uniknąć posiadania jednej jednostki o dużej wydajności, która zbyt mocno wpływa na warstwę wyjściową ANN.
Franck Dernoncourt

jaka jest różnica między opalenizną a sigmoidą? oba wyciskają liczby w zamkniętym zakresie! Nie rozumiem, czy mógłbyś bardziej rozwinąć ten gówno? Jestem trochę zła w matematyce. (tak przy okazji, pochodzę z perspektywy CNN)
Rika

@FranckDernoncourt Czy chodziło Ci o nasycenie dla funkcji aktywacji tanh? Chyba jest literówka? :)
CoderSpinoza

1
@tenCupMaximum: Do nasycania czynnik wypełniający do punktu, w którym już nie mogą być dodawane. W kontekście funkcji nasycającej oznacza to, że po pewnym momencie, dalszy wzrost danych wejściowych funkcji nie będzie już powodować (znaczącego) wzrostu jej wyjściowej wartości, która (bardzo prawie) osiągnęła maksymalną wartość. W tym momencie funkcja jest „pełna”, że tak powiem ( nasycona ).
Ruben van Bergen,

0

Najczęstsze funkcje aktywacyjne to LOG i TanH. Funkcje te mają zwarty zakres, co oznacza, że ​​kompresują odpowiedź neuronową do ograniczonego podzbioru liczb rzeczywistych. LOG kompresuje dane wejściowe na wyjścia między 0 a 1, TAN H między -1 a 1. Funkcje te wyświetlają zachowanie graniczne na granicach.

Na granicy gradient wyniku względem wejścia ∂yj / ∂xj jest bardzo mały. Tak więc Gradient jest mały, a zatem małe kroki do konwergencji, a zatem dłuższy czas na konwergencję.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.