Problem reprezentacji stanu w uczeniu się zbrojenia (RL) jest podobny do problemów reprezentacji cech, wyboru cech i inżynierii cech w uczeniu nadzorowanym lub bez nadzoru.
Literatura, która uczy podstaw RL, zwykle wykorzystuje bardzo proste środowiska, dzięki czemu można wyliczyć wszystkie stany. Upraszcza to szacunki wartości do podstawowych średnich kroczących w tabeli, które są łatwiejsze do zrozumienia i wdrożenia. Algorytmy uczenia tabelaryczne również uzasadnione teoretyczne gwarancje konwergencji, co oznacza, jeśli można uproszczenia problemu tak, że ma, powiedzmy, mniej niż kilka milionów stanów, to warto spróbować.
Najciekawsze problemy z kontrolą nie mieszczą się w tej liczbie stanów, nawet jeśli je dyskrecjonujesz. Wynika to z „ klątwy wymiarowości ”. W przypadku tych problemów zazwyczaj reprezentujesz swój stan jako wektor różnych cech - np. Dla robota, różne pozycje, kąty, prędkości części mechanicznych. Podobnie jak w przypadku nadzorowanego uczenia się, możesz chcieć traktować je do wykorzystania w określonym procesie uczenia się. Na przykład zazwyczaj chcesz, aby wszystkie były numeryczne, a jeśli chcesz korzystać z sieci neuronowej, powinieneś również znormalizować je do standardowego zakresu (np. -1 do 1).
Oprócz powyższych obaw, które dotyczą innych uczenia maszynowego, w przypadku języka RL należy również martwić się właściwością Markowa - że stan zapewnia wystarczającą ilość informacji, aby można było dokładnie przewidzieć oczekiwane kolejne nagrody i kolejne stany w przypadku danego działania, bez potrzeby żadnych dodatkowych informacji. Nie musi to być idealne, małe różnice wynikające np. Ze zmian gęstości powietrza lub temperatury robota kołowego zwykle nie mają dużego wpływu na jego nawigację i można je zignorować. Każdy czynnik, który jest zasadniczo przypadkowy, można również zignorować, pozostając przy teorii RL - może to spowodować, że czynnik będzie mniej optymalny ogólnie, ale teoria nadal będzie działać.
Jeśli istnieją konsekwentne nieznane czynniki, które wpływają na wynik, i można je logicznie wywnioskować - być może z historii stanu lub działań - ale wykluczyłeś je z reprezentacji stanu, możesz mieć poważniejszy problem i agent może się nie nauczyć .
Warto tutaj zauważyć różnicę między obserwacją a stanem . Obserwacja to niektóre dane, które można gromadzić. Na przykład na robocie mogą znajdować się czujniki, które zwracają pozycje jego stawów. Ponieważ państwo powinno posiadać właściwość Markowa, jedna surowa obserwacja może nie być wystarczającą ilością danych, aby uzyskać odpowiedni stan. W takim przypadku możesz albo zastosować swoją wiedzę domenową, aby zbudować lepszy stan z dostępnych danych, albo możesz spróbować zastosować techniki zaprojektowane dla częściowo obserwowalnych MDP (POMDP) - te skutecznie próbują zbudować brakujące części danych stanu statystycznie. Możesz do tego użyć RNN lub ukrytego modelu markowa (zwanego również „stanem przekonań”), a w pewnym sensie używa „algorytmy uczenia się lub klasyfikacji do „uczenia się” tych stanów, tak jak prosiłeś.
Na koniec należy rozważyć typ modelu aproksymacji, którego chcesz użyć. Stosuje się tutaj podobne podejście jak w przypadku nauki nadzorowanej:
Prosta regresja liniowa z funkcjami zaprojektowanymi w oparciu o wiedzę w dziedzinie może być bardzo dobra. Być może trzeba będzie ciężko pracować nad wypróbowaniem różnych reprezentacji stanów, aby działać w przybliżeniu liniowym. Zaletą jest to, że to prostsze podejście jest bardziej odporne na problemy ze stabilnością niż przybliżenie nieliniowe
Bardziej złożony nieliniowy aproksymator funkcji, taki jak wielowarstwowa sieć neuronowa. Możesz wprowadzić bardziej „surowy” wektor stanu i mieć nadzieję, że ukryte warstwy znajdą jakąś strukturę lub reprezentację, która prowadzi do dobrych oszacowań. W pewnym sensie jest to również „ algorytm uczenia się lub klasyfikowania do„ uczenia się ”tych stanów ”, ale w inny sposób niż RNN lub HMM. To może być rozsądne podejście, jeśli Twój stan został wyrażony naturalnie jako obraz ekranowy - samodzielne ustalenie inżynierii funkcji dla danych obrazu jest bardzo trudne.
Zespół Atari DQN przeprowadzony przez zespół DeepMind wykorzystał połączenie inżynierii cech i poleganie na głębokiej sieci neuronowej, aby osiągnąć swoje wyniki. Inżynieria funkcji obejmowała próbkowanie obrazu w dół, redukowanie go do skali szarości i - co ważne dla właściwości Markowa - stosowanie czterech kolejnych ramek do reprezentowania jednego stanu, dzięki czemu informacje o prędkości obiektów były obecne w reprezentacji stanu. Następnie DNN przetworzył obrazy w funkcje wyższego poziomu, które można wykorzystać do prognozowania wartości stanu.