Sieci neuronowe w NLP

generalizacja regresji logistycznej

Mc Culloh - Pitts neuron (1943)

głębokie uczenie

uczenie za pomocą sieci neuronowych przy pomocy kilku warstw ukrytych

neuron

zaaplikowanie wiele razy

można użyć dla każdego neuronu innej funkcji regresji logistycznej

podstawowa jednostka w sieci neuronowej

wejście neuronu

suma ważona wejść

przesunięcie (bias)

z = bias + iloczyn_skalarny(wektor wag, wektor wejść)

wyjście neuronu

przejście przez funkcję aktywacji

przykłady

funkcja sigmoidalna

Zbiór wartości: (0; 1)

Dla x = 0, f(x) = 0.5

funkcja ciągła

funkcja rosnąca

funkcja Re LU

f(x) = max(x, 0)

funkcja niemalejąca

funkcja ciągła

fukcja nieróżniczkowalna

Dla x>0 przyjmuje wartości dodatnie

tangens hiperboliczny

funkcja ciągła

Zbiór wartości: (-1; 1)

Dla x = 0; f(x) = 0

funkcja rosnąca

wielowarstwowe sieci neuronowe

jedna warstwa ukryta

wiele warstw ukrytych

pośrednie neurony w warstwie ukrytej - iloczyn skalarny wektora wag i wektora wejść wchodzących do wybranego neuronu pośredniego z uwzględnieniem funkcji aktywacji

neuron wyjściowy - suma neuronów pośrednich

idea podobna jak przy jednej warstwie z tym, że sumują się po drodze poprzednie neurony z poprzednich warstw pośrednich

algorytmy

forward propagation

backward propagation

oblicza wyjścia kolejnych warstw

funkcja softmax

funkcja normalizująca wektor do wektora prawdopodobieństw

wartości wyjściowe muszą być pomiędzy 0 i 1

wartości wyjściowe muszą się sumować do 1

algorytm uczący do znajdowania parametrów dla sieci neuronowej

start z wyjścia neuronu w celu zminimalizowania kosztu wszystkich funkcji aktywacji

używa łańcucha reguł zróżnicowania dla pochodnych cząstkowych

przykłady aplikacji

przewidywanie kolejnego słowa w programie do pisania SMS-ów

problem funkcji logicznych

perceptron

sieć neuronów z liniową funkcją aktywacji i binarnym wyjściem (0 lub 1)

AND / OR / XOR

funkcje logiczne są obliczane przez perceptron

0 - wartość neuronu jest niedodatnia

1 - wartość neuronu jest dodatnia

kontekst probabilistyczny

prawdopodobieństwo wystąpienia słowa na podstawie wcześniej wpisanych słów

4-gram

sprawdzanie 3 poprzednich słów

reprezentacja słowa jako wektor liczb

rekurencyjne sieci neuronowe

wejście - wektor 0-1 o długości leksykonu

wyjście - macierz

trenowanie sieci algorytmem Gradient Descent