Nie znalazłem ustalonego tłumaczenia terminu reservoir computing na język polski. Mamy otwarte pole, żeby zaproponować jakąś nazwę. Jest to ogólny termin dla architektur rekurencyjnych sieci neuronowych – takich jak echo state network i liquid state machine – wykorzystujących warstwę neuronów połączonych krawędziami o losowych wagach, które nie ulegają modyfikacji w trakcie nauki sieci. W sieciach typu feed-forward (nie rekurencyjnych) podobną ideę realizują extreme learning machines.
za: http://www.scholarpedia.org/article/Echo_state_network
Sygnał wejściowy przepuszczany jest przez rekurencyjną sieć rzadko połączonych neuronów, w której zaczyna krążyć generując „echa”. Następnie odtwarzamy pożądany sygnał wyjściowy jako liniową kombinację ech.
Wejście: ciągły sygnał/sekwencja
Wyjście: pożądany sygnał
Wagi wejściowe: losowe, niemodyfikowane
Wagi połączeń rekurencyjnych w rezerwuarze: losowe, niemodyfikowane
Wagi wyjściowe: uczone regresją liniową
Sieć posiada pamięć kontekstu sekwencji ze względu na połączenia rekurencyjne. Jest w stanie klasyfikować nieliniowe wzorce. Nauka jest bardzo szybka, ponieważ modyfikowane są jedynie wagi wyjściowych połączeń.
W stosunku do współczesnych sieci rekurencyjnych uczonych propagacją wsteczną (LSTM), sieci echo state network uczą się dużo szybciej i są mniej podatne na przeuczenie przy małej ilości danych. Przy problemach wielowymiarowych i dużych zbiorach danych (np. modele języka) sieci LSTM są skuteczniejsze.
Obrazowo, neurony w sieciach neuronowych pełnią jednocześnie dwie funkcje: 1) kodowania sygnału wejściowego do wielowymiarowej, rozrzedzonej reprezentacji, 2) dekodowania sygnału wyjściowego poprzez składanie wielowymiarowej reprezentacji. W przypadku sieci uczonych propagacją wsteczną można zaobserwować, że różne neurony/warstwy pełnią te dwie role w różnych proporcjach. Schiller i Steil (2005) zauważyli, że w sieciach rekurencyjnych treningowi podlegają głównie wagi połączeń neuronów z ostatniej warstwy.
W sieciach rekurencyjnych uczonych propagacją wsteczną pozwalamy, żeby specjalizacja neuronów wyłoniła się w toku nauki, wprowadzając jednocześnie konkretne ograniczenia w postaci topologii sieci (liczba warstw, połączenia). Generalnie rzecz biorąc neurony w głębszych warstwach specjalizują się rozrzedzaniu sygnału, a te w warstwach wyjściowych w składaniu sygnału.
W sieciach reservoir computing z góry zakładamy, że część neuronów będzie używana jedynie do rozrzedzonej reprezentacji sygnału (poprzez losową projekcję), a część do składania sygnału (neurony wyjściowe). Upraszczamy w ten sposób problem nauki sieci.
Schiller U.D. and Steil J. J. (2005) Analyzing the weight dynamics of recurrent learning algorithms. Neurocomputing, 63C:5-23
Luźna hipoteza: Przyjmijmy na chwilę grubymi nićmi szytą analogię między reservoir computing a budową mózgu. Wyobraźmy sobie, że mózg musi pełnić bardzo wiele funkcji przy ograniczonej liczbie neuronów, z czego wynika, że te same grupy neuronów są wykorzystywane w różnych zadaniach do budowania pośrednich reprezentacji sygnału. Im bardziej różnorodne są zadania, tym bardziej uniwersalne (=mniej wyspecjalizowane) muszą być reprezentacje sygnałów tworzone przez te neurony. Przy nieograniczonej różnorodności zadań nie ma określonej optymalnej reprezentacji – najskuteczniejszą strategią jest losowa, wielowymiarowa projekcja jak przy reservoir computing.
Obserwacja: grupa neuronów budująca pośrednią reprezentacją optymalną dla zadania A może być jednocześnie wykorzystywana do budowania suboptymalnej losowej reprezentacji dla zadania B. Innymi słowy, nawet jeśli pewne struktury neuronalne są wyspecjalizowane pod konkretne funkcje, mogą być równolegle wykorzystywane w sposób bardziej uniwersalny na zasadzie reservoir computing.
— Julian Zubek 2021/12/07 23:10