Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Uczenie ze wzmocnieniem

Podobne prezentacje


Prezentacja na temat: "Uczenie ze wzmocnieniem"— Zapis prezentacji:

1 Uczenie ze wzmocnieniem
Literatura: Paweł Cichosz, Systemy uczące się, Wydawnictwa Naukowo-Techniczne, Warszawa 2000, str Richard Sutton, Andrew G. Barto, Reinforcement Learning: An Introduction, MIT Press, Cambridge, MA, 1998. Stuart J.Russel, Peter Norvig, Artificial Intelligence, Prentice-Hall, London, 2003, str

2 Środowisko Cechy środowiska w sztucznych systemach uczących się:
przydziela nagrody i wyznacza bieżący stan jest niezależne od ucznia, czyli oznacza wszystko to, na co uczeń nie ma wpływu Typy środowisk: niestacjonarne (zmienne w czasie) niedeterministyczne - taka sama akcja może spowodować przejście do różnych stanów a przy przejściu do takiego samego stanu może zwrócić różne nagrody nieznane uczniowi: Ze względu na niepełną informację o stanie środowiska (brak własności Markowa) Ze względu na nieznajomość wszystkich możliwych stanów w trakcie uczenia (może ich być nieskończenie wiele) - konieczność uogólniania zachowań

3 Wieloetapowe procesy decyzyjne
Procesy polegające na wielokrotnej interakcji ucznia (agenta) ze środowiskiem. W wyniku podjęcia jednej z możliwych akcji at w danym stanie st, środowisko przechodzi do nowego stanu st+1 i zwraca nagrodę rt st st+1 st+2 st+k ... at, rt+1 at+1, rt+2 at+k-1, rt+k Celem uczenia jest maksymalizacja nagród uzyskanych w ciągu całego procesu, niezależnie od stanu początkowego Wniosek: należy szukać optymalnej strategii (policy) zachowania ucznia (wyboru odpowiedniej akcji w każdym ze stanów)

4 Ogólny schemat uczenia się w interakcji ze środowiskiem
rt st UCZEŃ akcja at rt+1 st+1 ŚRODOWISKO

5 Typy procesów Ze względu na środowisko: deterministyczne / niedeterministyczne, stacjonarne / niestacjonarne Ze względu na informacje o stanie: spełniające własność Markowa / niespełniające własności Markowa Ze względu na ogólną liczbę stanów środowiska: o skończonej liczbie stanów / o nieskończonej liczbie stanów Ze względu na typ przestrzeni stanów: ciągłe / dyskretne Ze względu na umiejscowienie nagród: tylko w stanach końcowych (terminalnych) / również w stanach pośrednich Ze względu na liczbę etapów procesu: ciągłe (nieskończone), epizodyczne (kończące się po pewnej liczbie kroków)

6 Metody szukania optymalnej strategii
Metoda Monte Carlo Programowanie dynamiczne Metoda różnic czasowych (TD)

7 Zadanie optymalizacji w procesach epizodycznych
Maksymalizacja: gdzie rt - nagroda w kroku t,  - współczynnik dyskontowania, 0  1, reguluje ważność krótko i długoterminowych nagród. Zastosowanie współczynnika dyskontowania wynika z pewnych zastosowań praktycznych: nagrody warto zdobywać jak najszybciej (zadania do-sukcesu), kary jak najdłużej odwlekać (zadania do-porażki)

8 Przykład GRID-6 0.5 1

9 Funkcje wartości Funkcja wartości stanu st przy strategii  :
Funkcja wartości pary [stan,akcja]: (st , at) przy strategii  : Przy danej strategii  dla każdego stanu s zachodzi równanie:

10 Porównanie funkcji V oraz Q
Wady: Użycie funkcji wartości stanu V(s) wymaga każdorazowej symulacji wykonania jednego kroku naprzód w celu znalezienia akcji optymalnej Użycie funkcji Q(s,a) wymaga stosowania większych tablic lub bardziej złożonych aproksymatorów funkcji

11 Strategia optymalna Strategia  jest lepsza od strategii ’ jeśli dla każdego s: oraz istnieje takie s, że zachodzi: Strategia jest optymalna, gdy nie ma od niej lepszej. Zachłanna strategia wyboru akcji: Wniosek: zachłanna strategia wyboru akcji względem optymalnej funkcji wartości lub funkcji wartości akcji jest strategią optymalną

12 Proces decyzyjny Markowa
Proces decyzyjny Markowa można zdefiniować jako czwórkę (S, A, , ): S - skończony zbiór stanów A - skończony zbiór akcji (s,a) - funkcja wzmocnienia - zmienna losowa o wartościach rzeczywistych oznaczająca nagrodę po wykonaniu akcji a w stanie s (s,a) - funkcja przejść stanów - zmienna losowa o wartościach ze zbioru S oznaczająca następny stan po wykonaniu akcji a w stanie s W ogólności w każdym kroku t nagroda rt+1 jest realizacją zmiennej losowej (st,at) a stan st+1 jest realizacją zmiennej losowej (st,at)

13 Przykład GRAF-5 S = {1,2,3,4,5}, A={0,1}
Nagroda za akcję a w stanie s:

14 Przykład GRAF-5 Optymalne wartości stanów dla  = 0.9 V(1) V(2) V(3)
4 5 Optymalne wartości stanów dla  = 0.9 V(1) V(2) V(3) V(4) V(5) 0.299 0.527 0.768 0.945

15 Uczenie ze wzmocnieniem - ogólny algorytm
Zainicjuj Q(s,a) lub V(s) Repeat (dla kolejnych epizodów): Zainicjuj s Repeat (dla kolejnych kroków epizodu): obserwuj aktualny stan st; wybierz akcję at do wykonania w stanie st; wykonaj akcję at; obserwuj wzmocnienie rt+1 i następny stan st+1; ucz się na podstawie doświadczenia (st,at,rt+1,st+1); until s jest stanem końcowym until spełniony warunek końca

16 Programowanie dynamiczne
Prawdopodobieństwo przejścia ze stanu s do s’ po wykonaniu akcji a, oraz średnia nagroda związana z tym zdarzeniem: Model środowiska Równania równowagi Bellmana dla reprezentacji [stan] oraz [stan,akcja] i strategii , ( (s) - akcja w stanie s zgodna ze strategią  ):

17 Programowanie dynamiczne
Przykładowy graf przejść ze stanu s=s1 do s’ {s1 , s2 , s3 }, po wykonaniu akcji a: s2 s1 s3 stąd:

18 Programowanie dynamiczne
Wyprowadzenie równania równowagi dla funkcji wartości stanu s:

19 Programowanie dynamiczne
Równania optymalności Bellmana dla reprezentacji [stan] oraz [stan,akcja]: - wartości optymalne

20 Programowanie dynamiczne
Metody wyznaczania optymalnej strategii: Iteracja strategii - naprzemienne obliczanie V (s) dla wszystkich stanów przy danej strategii  oraz wyznaczanie lepszej strategii ’ dla V (s) Iteracja wartości - obliczanie V (s) stosując strategię zachłanną przy wyborze akcji

21 Programowanie dynamiczne - wady i zalety
duża złożoność obliczeniowa metody dokładnej (bez iteracji) konieczność znajomości modelu środowiska (prawdopodobieństw przejść pomiędzy stanami dla wszystkich możliwych akcji i oczekiwanych wartości nagród) Zalety: pewność znalezienia rozwiązania w przypadku metody dokładnej oraz zbieżność metod iteracyjnych

22 Metody Monte Carlo Obliczanie funkcji wartości stanów lub par [stan, akcja] dla pewnej strategii  metodą uśredniania nagród z wielu epizodów.

23 Metody Monte Carlo - wada
Powolna zbieżność - obliczenie funkcji wartości nowego stanu bez uwzględnienia wartości stanów następujących po danym (bootstraping) może wymagać wielu iteracji V = ? V = -0.8 -1 1 p = 0.9 p = 0.1 nowy stan

24 Metody Monte Carlo - zalety
Pewna zbieżność do funkcji wartości dla ustalonej strategii przy odpowiedniej eksploracji Nie jest wymagana znajomość modelu środowiska

25 Metoda różnic czasowych – TD(0)
Aktualizacja wartości stanu lub pary [stan,akcja] - ogólna postać:

26 Metoda różnic czasowych – TD(0)
Metody uczenia: Q-learning (off-policy) SARSA (on-policy) Actor-Critic (on-policy) (dodatkowy system wartościowania strategii przyjętej do uczenia (strategia działania + eksploracja) Zalety: uczenie w czasie rzeczywistym dobra zbieżność

27 Algorytm Q-learning Algorytm Q-learning z aktualizacją wartości par [stan,akcja] niezależną od aktualnej strategii wyboru akcji (off-policy) Zainicjuj Q(s,a) Repeat (dla kolejnych epizodów): Zainicjuj s Repeat (dla kolejnych kroków epizodu): Wykonaj akcję a w stanie s zgodnie z wybraną strategią(np. ε-zachłanną względem Q(s,a)) until s jest stanem końcowym until spełniony warunek końca

28 Eksploatacja i eksploracja
Przykłady strategii wyboru akcji w trakcie uczenia: maksimum losowa -zachłanna softmax Strategia -zachłanna : z prawdopodobieństwem  wybierz akcję losowo z prawdopodobieństwem 1- wybierz akcję: Strategia softmax - wybór akcji zgodnie z rozkładem Bolzmanna (prawdopodobieństwo wylosowania akcji proporcjonalne do jej funkcji wartości):

29 Algorytm SARSA Algorytm SARSA z aktualizacją wartości par [stan,akcja] zgodnie z aktualną strategią (on-policy) Zainicjuj Q(s,a) Repeat (dla kolejnych epizodów): Zainicjuj s Wykonaj akcję a w stanie s zgodnie ze strategią opartą na Q (np. ε-zachłanną) Repeat (dla kolejnych kroków epizodu): Wykonaj akcję a’ w stanie s’ zgodnie ze strategią wyboru akcji (np. -zachłanną względem Q(s’,a’)) until s jest stanem końcowym until spełniony warunek końca

30 Różnica pomiędzy algorytmami SARSA i Q-learning - przykład
SARSA – zabezpieczenie przed niedeterminizmem strategii użytej do uczenia np. -zachłannej S KLIF K Droga bezpieczna Droga optymalna Q-learning Nauka chodzenia po krawędzi klifu: za każdy krok odbierany jest 1 pkt, za wejście na zbocze klifu 100 pkt Pytanie: Jaka droga zostanie wybrana w przypadku niedeterminizmu środowiska?

31 Metoda Actor-Critic - schemat
Schemat ogólny: Funkcja Strategii (s,a) (actor) błąd TD -  Funkcja wartości V(s) (critic) stan akcja nagroda Środowisko

32 Algorytm Actor-Critic
Algorytm Actor-Critic z funkcją wartości stanów V(s) i dodatkową funkcją wyboru akcji Zainicjuj V(s), (s,a) Repeat (dla kolejnych epizodów): Zainicjuj s Repeat (dla kolejnych kroków epizodu): Wykonaj akcję a w stanie s zgodnie ze strategią wyboru akcji (np. -zachłanną względem (s,a)) until s jest stanem końcowym until spełniony warunek końca

33 Metoda Actor-Critic - zaleta
W stosunku do standardowego algorytmu z reprezentacją stanów (V(s)) wymaga małego nakładu obliczeniowego przy wyborze akcji

34 Przybliżenie TD(0) Wartość stanu w danym epizodzie jest modyfikowana tylko na podstawie wartości stanu w następnym kroku: st+1 st r > 0

35 Inne przybliżenia Można zsumować i wykorzystać wszystkie przybliżenia przyjmując, że im dalsze, tym mniej istotne:

36 Ślady aktywności TD() - zalety
Przyspieszenie uczenia dzięki równoległemu przypisywaniu zasług wszystkim stanom lub akcjom, które poprzedzają otrzymanie nagrody Połączenie cech metod Monte Carlo i TD(0) przez odpowiedni wybór współczynnika świeżości  Znaczne przyspieszenie uczenia w przypadku nagród znacznie oddalonych

37 Ślady aktywności TD()
Sumując elementy w kolumnach i uwzględniając: otrzymujemy:

38 Ślady aktywności TD()
gdzie

39 Ślady aktywności TD()
W każdym kroku modyfikowane są wartości wszystkich stanów lub par [stan,akcja]:

40 Ślady aktywności - algorytm
Zainicjuj V(s) Repeat (dla kolejnych epizodów): Zainicjuj s, e(s)=0 dla wszystkich s Repeat (dla kolejnych kroków epizodu): Wykonaj akcję a w stanie s zgodnie z , obserwuj nagrodę r i następny stan s’ for all s: end for until s jest stanem końcowym until spełniony warunek końca

41 Aproksymatory funkcji
Przykłady: Sztuczne sieci neuronowe wielowarstwowe (MLP) Sieci RBF Wielomiany Zalety: Oszczędność miejsca przy dużych zbiorach stanów lub par [stan,akcja] Możliwość uogólniania wiedzy dla stanów pośrednich Uniknięcie dyskretyzacji w przypadku rzeczywistoliczbowej reprezentacji stanów lub akcji

42 Aproksymator MLP ... s1 s2 s3 sn V(s) ... Q(s,a) s1 s2 s3 sn a

43 Aproksymatory funkcji - definicje
Wartości stanów lub par [stan,akcja] reprezentowane są za pomocą funkcji zależnej od parametrów (i): Wektor parametrów: Kryterium optymalizacji: P(s) – rozkład wag błędów dla poszczególnych stanów, V(s) – wartość stanu s dla strategii 

44 Gradientowa metoda aproksymacji funkcji wartości stanów
Przyjmując przybliżenie: Otrzymujemy algorytm aktualizacji wartości stanu: (następny slajd)

45 Gradientowa metoda aproksymacji funkcji wartości stanów - TD()
Zainicjuj  Repeat (dla kolejnych epizodów): Zainicjuj s, dla wszystkich stanów e(s)=0 Repeat (dla kolejnych kroków epizodu): Wybierz i wykonaj akcję a w stanie s zgodnie z przyjętą strategią until s jest stanem końcowym until spełniony warunek końca

46 Aproksymacja funkcji - wybór akcji z wykorzystaniem strategii -zachłannej
for all a  A(s) symuluj wykonanie akcji a, obserwuj stan s’ end for z prawdopodobieństwem  a’  random(A(s)) Reprezentacja [stan]: for all a  A(s) end for z prawdopodobieństwem  a’  random(A(s)) Reprezentacja [stan,akcja]:

47 Aproksymatory funkcji
Najczęściej stosowane typy aproksymatorów: Wielowarstwowe sieci neuronowe (MLP) Sieci o radialnej funkcji bazowej (RBF) Kodowanie przybliżone (coarse coding) Kodowanie metodą pokryć (CMAC, tile coding)

48 Aproksymator liniowy Aproksymator liniowy - ogólna postać:
- wektor cech wejściowych aproksymatora Kodowanie przybliżone dla 2-wymiarowej przestrzeni stanów - każde pole jest związane z jedną cechą binarną, równą 1 jeśli stan znajduje się wewnątrz pola: Licząc po kolejnych wierszach od lewej do prawej wektor cech: y x


Pobierz ppt "Uczenie ze wzmocnieniem"

Podobne prezentacje


Reklamy Google