Deep Reinforcement Learning Atari: jak agent rozumie ruch?

Aug 25 2020

Podstawowe metody uczenia się z głębokim wzmocnieniem wykorzystują jako dane wejściowe obraz aktualnego stanu, wykonaj na tym obrazie pewne zwoje, zastosuj algorytm uczenia się ze wzmocnieniem i zostanie rozwiązany.

Weźmy na przykład grę Breakout lub Pong. To, czego nie rozumiem, to jak rozumie agent, kiedy obiekt zbliża się do niego lub od niego oddala? Uważam, że akcja, którą wybiera, musi być inna w tych dwóch scenariuszach, a od pojedynczego obrazu jako danych wejściowych nie ma pojęcia ruchu.

Odpowiedzi

3 16Aghnar Aug 25 2020 at 19:50

W artykule Playing Atari with Deep Reinforcement Learning , Mnih i in., 2013 , który był poważnym wybuchem w uczeniu się z głębokim wzmocnieniem (szczególnie w uczeniu Deep Q), nie przekazują do sieci tylko ostatniego obrazu. Układają 4 ostatnie obrazy:

W przypadku eksperymentów w tym artykule funkcja φ z algorytmu 1 stosuje to wstępne przetwarzanie do ostatnich 4 ramek historii i układa je w stosy w celu uzyskania danych wejściowych do funkcji Q

Więc dodają ruch poprzez sekwencję. Z różnych artykułów i własnych doświadczeń w kodowaniu, wydaje mi się, że jest to główne wspólne podejście. Nie wiem, czy wdrożono inne techniki.

Jedyną rzeczą, jaką moglibyśmy sobie wyobrazić, byłoby obliczenie korelacji krzyżowej między poprzednią klatką a ostatnią, a następnie przekazanie produktu korelacji krzyżowej do sieci.

Innym pomysłem byłoby wyszkolenie poprzedniej CNN w celu wyodrębniania funkcji ruchu z sekwencji klatek i przekazywania tych wyodrębnionych funkcji do sieci. Ten artykuł (Wykonywanie welocymetrii obrazu cząstek przy użyciu sztucznych sieci neuronowych: dowód koncepcji) , Rabault i in., 2017 jest przykładem CNN do wyodrębniania cech ruchu.