Robocikowo>ROBOCIKOWO

Sieci neuronowe od podstaw do nowoczesnej AI · Sekwencje: RNN, LSTM i GRU

Problem sekwencji — dlaczego feedforward nie wystarczy

Sekwencje: RNN, LSTM i GRU

Wprowadzenie

Klasyczna sieć feedforward (MLP, CNN bez rekurencji) zakłada wejście o stałym kształcie i przetwarza je w jednym przejściu, bez żadnej pamięci między próbkami. Sekwencje — tekst, dźwięk, szeregi czasowe, DNA — łamią oba te założenia: ich długość jest zmienna, a sens elementu w pozycji t zależy od historii pozycji 1..t-1. Próby załatwienia tego klasyczną siecią dają trzy klasy obejść: (1) okno o stałej długości N (NNLM Bengio et al. 2003 — predykcja słowa z N-1 poprzednich), (2) bag-of-words/averaging, które gubi kolejność, (3) padding/truncation do maksymalnej długości, co marnuje parametry i nie skaluje się. Wszystkie trzy mają jeden wspólny problem: brak współdzielenia parametrów w czasie. W feedforwardzie waga dla pozycji 3 jest inna niż dla pozycji 7, więc model uczy się każdego "slotu" osobno i traci dane przy rzadkich zdarzeniach. Sieci rekurencyjne (RNN, LSTM, GRU) rozwiązują to przez parameter sharing across time: ta sama macierz W aplikowana w każdym kroku, ukryty stan h_t niesie podsumowanie historii. Lekcja zarysowuje też alternatywy nie-rekurencyjne: 1D-CNN z dilated convolutions (WaveNet, van den Oord et al. 2016), Transformer z self-attention (Vaswani et al. 2017) — ale dla zrozumienia rdzenia problemu sekwencji najpierw trzeba zobaczyć dlaczego sam MLP zawodzi.