co sprawia, że ​​sieci neuronowe są nieliniowym modelem klasyfikacji?


18

Próbuję zrozumieć matematyczne znaczenie nieliniowych modeli klasyfikacji:

Właśnie przeczytałem artykuł mówiący o sieciach neuronowych będących nieliniowym modelem klasyfikacji.

Ale zdaję sobie sprawę, że:

wprowadź opis zdjęcia tutaj

Pierwsza warstwa:

h1=x1wx1h1+x2wx1h2

h2=x1wx2h1+x2wx2h2

Kolejna warstwa

y=bwby+h1wh1y+h2wh2y

Można to uprościć

=b+(x1wx1h1+x2wx1h2)wh1y+(x1wx2h1+x2wx2h2)wh2y

=b+x1(wh1ywx1h1+wx2)h1wh2)y)+x2)(wh1ywx1h1+wx2)h2)wh2)y)

Dwuwarstwowa sieć neuronowa To tylko prosta regresja liniowa

=b+x1W.1+x2)W.2)

Można to pokazać na dowolnej liczbie warstw, ponieważ liniowa kombinacja dowolnej liczby wag jest znowu liniowa.

Co tak naprawdę sprawia, że ​​sieć neuronowa jest nieliniowym modelem klasyfikacji?
Jak funkcja aktywacji wpłynie na nieliniowość modelu?
Możesz mi wytłumaczyć?

Odpowiedzi:


18

Myślę, że zapomnisz funkcję aktywacji w węzłach w sieci neuronowej, która jest nieliniowa i sprawi, że cały model będzie nieliniowy.

W twojej formule nie jest całkowicie poprawne, gdzie,

h1w1x1+w2)x2)

ale

h1=sigmoid(w1x1+w2)x2))

gdzie sigmoid działa w ten sposób,sigmoid(x)=11+mi-x

wprowadź opis zdjęcia tutaj

Użyjmy liczbowego przykładu, aby wyjaśnić wpływ funkcji sigmoidalnej, załóżmy, że masz a następnie . Z drugiej strony załóżmy, że masz , i jest prawie taki sam jak , który jest nieliniowy.sigmoid ( 4 ) = 0,99 w 1 x 1 + w 2 x 2 = 4000 sigmoid ( 4000 ) = 1 sigmoid ( 4 )w1x1+w2)x2)=4sigmoid(4)=0,99w1x1+w2)x2)=4000sigmoid(4000)=1sigmoid(4)


Ponadto myślę, że slajd 14 w tym samouczku może pokazać, gdzie dokładnie popełniłeś błąd. W przypadku nie otuput to nie -7,65, aleSigmoid H 1 ( - 7,65 )H.1sigmoid(-7,65)

wprowadź opis zdjęcia tutaj


1
Jak funkcja aktywacji wpłynie na nieliniowość modelu? Możesz mi wytłumaczyć?
Alvaro Joao,

3

Masz rację, że wiele warstw liniowych może być równoważnych pojedynczej warstwie liniowej. Jak powiedziano w innych odpowiedziach, nieliniowa funkcja aktywacji umożliwia klasyfikację nieliniową. Powiedzenie, że klasyfikator jest nieliniowy, oznacza, że ​​ma nieliniową granicę decyzyjną. Granica decyzji jest powierzchnią, która oddziela klasy; klasyfikator przewidzi jedną klasę dla wszystkich punktów po jednej stronie granicy decyzji, a drugą klasę dla wszystkich punktów po drugiej stronie.

Rozważmy powszechną sytuację: przeprowadzanie klasyfikacji binarnej za pomocą sieci zawierającej wiele warstw nieliniowych jednostek ukrytych i jednostki wyjściowej z funkcją aktywacji sigmoidalnej. daje wynik, jest wektorem aktywacji ostatniej ukrytej warstwy, jest wektorem ich ciężarów na jednostce wyjściowej, a jest stronniczością jednostki wyjściowej. Dane wyjściowe to:h w byhwb

y=σ(hw+b)

gdzie jest logistyczną funkcją sigmoidalną. Dane wyjściowe interpretowane są jako prawdopodobieństwo, że klasa wynosi . Przewidywana klasa to:1 cσ1do

do={0y0,51y>0,5

Rozważmy regułę klasyfikacji w odniesieniu do aktywacji ukrytych jednostek. Widzimy, że aktywacje ukrytej jednostki są rzutowane na linię . Reguła przypisywania klasy jest funkcją , która jest monotonicznie związana z rzutowaniem wzdłuż linii. Reguła klasyfikacji jest zatem równoważna z ustaleniem, czy rzut wzdłuż linii jest mniejszy lub większy niż jakiś próg (w tym przypadku próg jest podawany przez ujemne odchylenie). Oznacza to, że granica decyzyjna jest hiperpłaszczyzną prostopadłą do linii i przecina linię w punkcie odpowiadającym temu progowi.hW.+by

Powiedziałem wcześniej, że granica decyzji jest nieliniowa, ale hiperpłaszczyzna jest samą definicją granicy liniowej. Ale rozważaliśmy granicę jako funkcję ukrytych jednostek tuż przed wyjściem. Aktywacje ukrytych jednostek są nieliniową funkcją oryginalnych danych wejściowych, ze względu na poprzednie ukryte warstwy i ich nieliniowe funkcje aktywacji. Jednym ze sposobów myślenia o sieci jest to, że mapuje dane nieliniowo na pewną przestrzeń funkcji. Współrzędne w tej przestrzeni są podawane przez aktywacje ostatnich ukrytych jednostek. Sieć dokonuje następnie klasyfikacji liniowej w tej przestrzeni (w tym przypadku regresji logistycznej). Możemy również myśleć o granicy decyzji jako funkcji oryginalnych danych wejściowych. Ta funkcja będzie nieliniowa w wyniku mapowania nieliniowego od wejść do aktywacji ukrytych jednostek.

Ten post na blogu pokazuje ładne postacie i animacje tego procesu.


1

Nieliniowość pochodzi od funkcji aktywacji sigmoidalnej, 1 / (1 + e ^ x), gdzie x jest liniową kombinacją predyktorów i wag, do których odnosiłeś się w pytaniu.

Nawiasem mówiąc, granice tej aktywacji wynoszą zero i jeden, ponieważ albo mianownik staje się tak duży, że ułamek zbliża się do zera, lub e ^ x staje się tak mały, że ułamek zbliża się do 1/1.

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.