Hluboké učení

Recurrent networks for sequential data

Úvod do tématu

Jak bylo zmíněno v anotaci, rekurentní sítě obsahují rekurentní vrstvy s cyklickým propojením neuronů. Samotné rekurentní vrstvy ale k naučení nestačí, protože u dlouhých sekvencí se během učení algoritmem Backpropagation through time (BPTT) ztrácí, dík výpočtu gradientu, závislosti mezi vzdálenými prvky sekvence. Používají se proto speciální jednotky jako LSTM (Long Short-Term Memory) a GRU (Gated Recurrent Unit). Ty řeší problém mizejícího gradientu tak, že přidávají jednotce další signál - její vnitřní stav, který při učení nepodléhá derivaci, a tím umožňuje zapamatovat předchozí členy sekvencí po delší dobu.

Termín "LSTM jednotka" nebo "GRU jednotka" ve skutečnosti označuje celou vrstvu sítě, jejímž vstupem i výstupem je vektor hodnot popisující jeden prvek zpracovávané sekvence (např. jedno slovo). Celá sekvence se předá na vstupu/výstupu sítě v sérii po sobě následujících časových kroků. Rekurentní sítě se velmi často graficky znázorňují "rozvinuté" v čase:  rozkreslíme postup jednotlivých signálů jednotkou na časové ose zleva doprava, jako např. na slajdech č. 5, 7, 8, 11 a dalších. Vztah mezi rozvinutým a nerozvinutým vykreslením znázorňují slajdy č. 15-16.

Peephole LSTM unit (4 points)
Learn about peephole LSTM units at C. Olah's blog (https://colah.github.io/posts/2015-08-Understanding-LSTMs/) and at Wikipedia (https://en.wikipedia.org/wiki/Long_short-term_memory). Explain the differences between "classical" and peephole LSTM.