Jaka jest różnica między feed-forward i nawracających sieci neuronowej?
Dlaczego miałbyś używać jednego nad drugim?
Czy istnieją inne topologie sieci?
Jaka jest różnica między feed-forward i nawracających sieci neuronowej?
Dlaczego miałbyś używać jednego nad drugim?
Czy istnieją inne topologie sieci?
Odpowiedzi:
Sprzężenie zwrotne ANN umożliwia przesyłanie sygnałów tylko w jedną stronę: od wejścia do wyjścia. Brak sprzężenia zwrotnego (pętle); tj . wyjście dowolnej warstwy nie wpływa na tę samą warstwę. Informacje zwrotne ANN są zwykle sieciami, które łączą dane wejściowe z wynikami. Są szeroko stosowane w rozpoznawaniu wzorów. Ten typ organizacji jest również określany jako oddolny lub odgórny.
Sieci zwrotne (lub cykliczne lub interaktywne) mogą mieć sygnały podróżujące w obu kierunkach poprzez wprowadzenie pętli w sieci. Sieci zwrotne są potężne i mogą się bardzo skomplikować. Obliczenia pochodzące z wcześniejszych danych wejściowych są przesyłane z powrotem do sieci, co daje im rodzaj pamięci. Sieci zwrotne są dynamiczne; ich „stan” zmienia się nieustannie, dopóki nie osiągną punktu równowagi. Pozostają w punkcie równowagi do momentu zmiany danych wejściowych i znalezienia nowej równowagi.
Sieci neuronowe ze sprzężeniem zwrotnym idealnie nadają się do modelowania relacji między zbiorem zmiennych predykcyjnych lub wejściowych a jedną lub większą liczbą zmiennych odpowiedzi lub danych wyjściowych. Innymi słowy, są one odpowiednie dla każdego problemu z mapowaniem funkcjonalnym, w którym chcemy wiedzieć, jak wiele zmiennych wejściowych wpływa na zmienną wyjściową. Wielowarstwowe sieci neuronowe ze sprzężeniem zwrotnym, zwane także wielowarstwowymi perceptronami (MLP), są najczęściej badanym i stosowanym modelem sieci neuronowej w praktyce.
Jako przykład sieci opinii mogę przypomnieć sobie sieć Hopfielda . Głównym zastosowaniem sieci Hopfielda jest pamięć asocjacyjna. Pamięć asocjacyjna to urządzenie, które przyjmuje wzorzec wejściowy i generuje wyjście jako zapisany wzorzec, który jest najściślej powiązany z wejściem. Funkcja skojarzonej pamięci polega na przywołaniu odpowiedniego zapisanego wzorca, a następnie wygenerowaniu wyraźnej wersji wzorca na wyjściu. Sieci Hopfield są zwykle używane w przypadku problemów z wektorami wzorów binarnych, a wzór wejściowy może być hałaśliwą wersją jednego z przechowywanych wzorów. W sieci Hopfield przechowywane wzorce są kodowane jako wagi sieci.
Samoorganizujące się mapy Kohonena(SOM) reprezentuje inny typ sieci neuronowej, który jest wyraźnie różny od sprzężonych w przód sieci wielowarstwowych. W przeciwieństwie do szkolenia w sprzężeniu zwrotnym MLP, szkolenie lub uczenie się SOM jest często nazywane bez nadzoru, ponieważ nie są znane docelowe wyniki związane z każdym wzorcem wejściowym w SOM, a podczas procesu szkoleniowego SOM przetwarza wzorce wejściowe i uczy się grupować lub segmentować dane poprzez dostosowanie wag (co czyni go ważnym modelem sieci neuronowej dla redukcji wymiarów i grupowania danych). Dwuwymiarowa mapa jest zwykle tworzona w taki sposób, że zachowane są rzędy wzajemnych powiązań między danymi wejściowymi. Liczbę i skład klastrów można wizualnie określić na podstawie rozkładu wyjściowego generowanego przez proces szkolenia. Z tylko zmiennymi wejściowymi w próbce treningowej,
(Schematy pochodzą ze strony internetowej C463 / B551 Artificial Intelligence Dany Vrajitoru .)
źródło
To, co pisze George Dontas, jest poprawne, jednak wykorzystanie RNN w praktyce jest obecnie ograniczone do prostszej klasy problemów: szeregów czasowych / zadań sekwencyjnych.
Podczas sieci wyprzedzającym stosuje się nauczyć zestawów danych, takich jak , gdzie i są wektory (na przykład , sieci nawrotowych zawsze będzie sekwencji, na przykład .(i,t) i t i∈Rn i i∈(Rn)∗
Wykazano, że RNN mogą reprezentować dowolną mierzalną sekwencję do mapowania sekwencji przez Hammer.
Tak więc RNN są obecnie używane do wszelkiego rodzaju zadań sekwencyjnych: przewidywanie szeregów czasowych, znakowanie sekwencji, klasyfikacja sekwencji itp. Dobry przegląd można znaleźć na stronie Schmidhubera o RNN .
źródło
Co jest naprawdę interesujące w zadawaniu tego pytania?
Zamiast mówić RNN i FNN ma inną nazwę. Więc są różne. , Myślę, że bardziej interesujące jest modelowanie układu dynamicznego, czy RNN różni się znacznie od FNN?
tło
Odbyła się debata na temat modelowania układu dynamicznego między Rekurencyjną siecią neuronową a siecią neuronową Feedforward z dodatkowymi funkcjami jak wcześniejsze opóźnienia czasowe (FNN-TD).
Z mojej wiedzy po przeczytaniu tych artykułów w latach 90-tych ~ 2010. Większość literatury woli, aby waniliowy RNN był lepszy niż FNN, ponieważ RNN korzysta z pamięci dynamicznej, podczas gdy FNN-TD jest pamięcią statyczną .
Jednak niewiele jest badań numerycznych porównujących te dwa. Ten [1] na początku pokazał, że do modelowania układu dynamicznego FNN-TD wykazuje porównywalną wydajność do waniliowego RNN, gdy jest wolny od szumów, a działa nieco gorzej, gdy występuje hałas. W moich doświadczeniach z modelowaniem układów dynamicznych często widzę, że FNN-TD jest wystarczająco dobry.
Jaka jest kluczowa różnica w traktowaniu efektów pamięci między RNN i FNN-TD?
Niestety nigdzie nie widzę, a żadna publikacja teoretycznie pokazuje różnicę między nimi. To dość interesujące. Rozważmy prosty przypadek, używając sekwencji skalarnej do przewidzenia . Jest to więc zadanie sekwencyjne do skalarnego.Xn,Xn−1,…,Xn−k Xn+1
FNN-TD to najbardziej ogólny, kompleksowy sposób leczenia tak zwanych efektów pamięci . Ponieważ jest brutalny, obejmuje każdy rodzaj, każdy rodzaj, każdy efekt pamięci teoretycznie. Jedynym minusem jest to, że w praktyce zajmuje on zbyt wiele parametrów.
Pamięć w RNN jest niczym innym jak ogólnym „splotem” poprzednich informacji . Wszyscy wiemy, że splot między dwiema sekwencjami skalarnymi ogólnie nie jest procesem odwracalnym, a dekonwolucja jest najczęściej źle postawiona.
Moje przypuszczenie jest „stopień swobody” w takim procesie splotu zależy od liczby jednostek ukrytych w RNN państwowej . Jest to ważne dla niektórych układów dynamicznych. Zauważ, że „stopień swobody” może zostać przedłużony poprzez opóźnienie czasowe osadzania stanów [2] przy zachowaniu tej samej liczby jednostek ukrytych.s
Dlatego RNN faktycznie kompresuje poprzednią informację o pamięci z utratą przez wykonanie splotu, podczas gdy FNN-TD po prostu ujawnia je w pewnym sensie bez utraty informacji o pamięci. Pamiętaj, że możesz zmniejszyć utratę informacji w trakcie splotu, zwiększając liczbę ukrytych jednostek lub stosując więcej opóźnień czasowych niż waniliowy RNN. W tym sensie RNN jest bardziej elastyczny niż FNN-TD. RNN nie może osiągnąć żadnej utraty pamięci, ponieważ FNN-TD i może być trywialne pokazanie liczby parametrów w tej samej kolejności.
Wiem, że ktoś może chcieć wspomnieć, że RNN ma długotrwały efekt, podczas gdy FNN-TD nie. W tym celu chcę tylko wspomnieć, że dla ciągłego autonomicznego systemu dynamicznego, z teorii osadzania Takensa, jest to ogólna właściwość osadzania dla FNN-TD z pozornie krótką pamięcią czasu, aby osiągnąć taką samą wydajność jak pozornie długi czas pamięć w RNN. Wyjaśnia, dlaczego RNN i FNN-TD nie różnią się zbytnio przykładem ciągłego systemu dynamicznego na początku lat 90-tych.
Teraz wspomnę o zaletach RNN. Dla zadania autonomicznego układu dynamicznego, przy użyciu większej liczby poprzednich terminów, chociaż efektywnie byłoby to to samo, co przy użyciu FNN-TD z mniejszymi wcześniejszymi terminami w teorii, liczbowo byłoby pomocne, ponieważ jest bardziej odporny na zakłócenia. Wynik w [1] jest zgodny z tą opinią.
Odniesienie
[1] Gençay, Ramazan i Tung Liu. „Modelowanie i prognozowanie nieliniowe w sieciach feedforward i recurrent”. Physica D: Zjawiska nieliniowe 108.1-2 (1997): 119-134.
[2] Pan, Shaowu i Karthik Duraisamy. „Wykrywanie modeli zamknięcia oparte na danych”. nadruk arXiv arXiv: 1803.09318 (2018).
źródło