1 / 57

Uczenie ze wzmocnieniem

Uczenie ze wzmocnieniem. Literatura: Paweł Cichosz, Systemy uczące się , Wydawnictwa Naukowo-Techniczne, Warszawa 2000, str. 712-792. Richard Sutton, Andrew G. Barto, Reinforcement Learning: An Introduction , MIT Press, Cambridge, MA, 1998.

Download Presentation

Uczenie ze wzmocnieniem

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Uczenie ze wzmocnieniem • Literatura: • Paweł Cichosz, Systemy uczące się, Wydawnictwa Naukowo-Techniczne, Warszawa 2000, str. 712-792. • Richard Sutton, Andrew G. Barto, Reinforcement Learning: An Introduction,MIT Press, Cambridge, MA, 1998. http://www.cs.ualberta.ca/~sutton/book/the-book.html • Stuart J.Russel, Peter Norvig, Artificial Intelligence, Prentice-Hall, London, 2003, str. 598-645.

  2. Plan wykładu • Wieloetapowe procesy decyzyjne - typy procesów i środowisk • Programowanie dynamiczne a metoda Monte Carlo • Uczenie ze wzmocnieniem – podstawowy algorytm • Eksploatacja a eksploracja • Metody przyśpieszania zbieżności - ślady aktywności • Aproksymacja funkcji wartości stanów • Metody kodowania stanów • Agregacja stanów • Przykłady zastosowań

  3. Ś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: • stacjonarne / niestacjonarne (zmienne w czasie) • deterministyczne / niedeterministyczne - taka sama akcja może spowodować przejście do różnych stanów, a przy przejściu do takiego samego stanu można uzyskać różne nagrody z tym, że wartości oczekiwane nagród i prawdopodobieństwa przejść są stałe • niedeterministyczne o znanym / nieznanym modelu • o parametrach ciągłych / dyskretnych • o pełnej informacji o stanie (własność Markowa) / o niepełnej informacji o stanie

  4. at+1, rt+2 at+k-1, rt+k at, rt+1 st st+1 st+2 st+k ... 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+1 • 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)

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

  6. 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 (nieprzeliczalne)/ dyskretne • Ze względu na umiejscowienie nagród: tylko w stanach końcowych (terminalnych) / tylko w stanach pośrednich / w stanach końcowych oraz pośrednich • Ze względu na liczbę etapów procesu: nieskończone / epizodyczne (kończące się po pewnej liczbie kroków)

  7. Zadanie optymalizacji w procesach epizodycznych Cel maksymalizacji: 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 praktycznych spostrzeżeń: nagrody warto zdobywać jak najszybciej (zadania do-sukcesu), kary jak najdłużej odwlekać (zadania do-porażki)

  8. r2 r2 r1 r1 r2 r1 r1 r1 r1 r1 r1 r1 r1 r1 r1 r1 * Dobór współczynnika dyskontowania w zależności od wartości nagród Niech r2 oznacza wartość nagrody za dojście do stanu końcowego, r1 - wartość nagrody dla pozostałych stanów Zadania do-sukcesu: stąd:

  9. 1 0.5 Przykład GRID-6

  10. Przykład GRID-6 – przykładowe strategie 1 2 3 4

  11. 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:

  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. 1 2 3 4 5 * Przykład GRAF-5 S = {1,2,3,4,5}, A={0,1} Nagroda za akcję a w stanie s:

  14. 1 2 3 4 5 * Przykład GRAF-5 Optymalne wartości stanów dla  = 0.9

  15. - prawdopodobieństwo przejścia od stanu s do s’ przy wykonaniu akcji a - średnia nagroda przy przejściu od s do s’ dzięki a Funkcja wartości a strategia Strategia ’ jest lepsza od strategii jeśli dla każdego s: oraz istnieje takie s, że zachodzi: Każdej strategii odpowiada tablica wartości stanów – V lub akcji – Q, natomiast dla danej tablicy wartości można przypisać najlepszą znaną strategię metodą zachłannego wyboru akcji w każdym ze stanów. Zachłanny wybór strategii na podstawie przybliżonych wartości V lub Q:

  16. * Porównanie funkcji V oraz Q • 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

  17. - prawdopodobieństwo przejścia od stanu s do s’ przy wykonaniu akcji a - średnia nagroda przy przejściu od s do s’ dzięki a Strategia optymalna Strategia * jest optymalna jeśli dla każdej strategii oraz dla każdego stanu s: lub dla każdej akcji w każdym stanie: Zachłanna metoda wyboru akcji: Zachłanna metoda wyboru akcji względem optymalnej funkcji wartości lub funkcji wartości akcji jest realizacją strategii optymalnej

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

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

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

  21. * Programowanie dynamiczne Wyprowadzenie równania równowagi dla funkcji wartości stanu s:

  22. Programowanie dynamiczne Równania optymalności Bellmana dla reprezentacji [stan] oraz [stan,akcja]: - wartości odpowiadające strategii optymalnej

  23. Programowanie dynamiczne • Metody wyznaczania wartości V lub Q dla danej strategii: • Rozwiązanie układu równań o |S| (lub |SA| w przypadku reprezentacji [stan,akcja]) niewiadomych • Iteracyjne na podstawie równań równowagi Bellmana (o udowodnionej zbieżności) Metody wyznaczania optymalnej strategii: • Iteracja strategii - naprzemienne obliczanie przybliżonych wartości V(s) dla wszystkich stanów przy danej (początkowo losowej) strategii  oraz wyznaczanie lepszej strategii ’ dla V(s) do momentu, gdy w kolejnych dwóch iteracjach strategia  pozostanie niezmienna • Iteracja wartości - obliczanie V(s) stosując zachłanną metodę wyboru akcji do momentu, gdy wartości V(s) przestaną się zmieniać

  24. Iteracyjne obliczanie wartości stanów obliczanie wartości stanów dla strategii : mając dane: , P,R powtarzaj dla wszystkich s: aż nastąpi w kroku i

  25. Iteracja strategii dla reprezentacji [stan] naprzemienne wyznaczanie strategii (początkowo losowej) oraz wartości stanów dotąd aż strategie w 2 kolejnych cyklach iteracji przestaną się różnić: k-1= k obliczanie wartości stanów dla strategii : iteracyjne obliczanie wartości stanów dla strategii  lub metodą rozwiązywania układu równań wyznaczanie nowej strategii ’: dla wszystkich s:

  26. Iteracja wartości dla reprezentacji [stan] mając dane: P,R powtarzaj dla wszystkich s: aż nastąpi w kroku k

  27. Programowanie dynamiczne - wady i zalety • Wady: • 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 • mała złożoność obliczeniowa

  28. 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. gdzie L - liczba epizodów, ne – liczba kroków e-tego epizodu Wyznaczanie strategii optymalnej: np. metodą iteracji strategii lub metodą iteracji wartości

  29. -1 p = 0.9 V = -0.8 V = ? nowy stan p = 0.1 1 Metody Monte Carlo - wady i zalety • Wady: • Wymóg epizodyczności zadań • Wymagana duża eksploracja • Powolna zbieżność - obliczenie funkcji wartości nowego stanu bez uwzględnienia wartości stanów następujących po danym (bootstraping) • Zalety: • Pewna zbieżność do funkcji wartości V(s) dla ustalonej strategii przy odpowiedniej eksploracji • Nie jest wymagana znajomość modelu środowiska

  30. Uczenie ze wzmocnieniem – cechy charakterystyczne • Uczenie z krytykiem (bez informacji o właściwych decyzjach) • Nie są znane optymalna strategia, metoda dojścia do optymalnej strategii ani model środowiska • Uczenie się na zasadzie ,,prób i błędów’’ – potrzebna jest eksploracja, co może wiązać się z kosztami • Uczenie się oraz wykonywanie zadań (działanie systemu) odbywa się jednocześnie

  31. 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,at+1); untils jest stanem końcowym until spełniony warunek końca

  32. Metoda różnic czasowych – TD(0) Średni dochód przy wyjściu ze stanu sti przy strategii : Rzeczywisty: Aproksymowany: Częściowo aproksymowany:

  33. Częściowo aproksymowany dochód uzyskany po wyjściu ze stanu st: Aktualizacja wartości stanu - ogólna postać: Reprezentacja [stan,akcja]: Metoda różnic czasowych – TD(0)

  34. 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 aproksymowana + eksploracja (strategia losowa)) • Zalety metod TD: • nie jest wymagany model środowiska • możliwość uczenia w czasie rzeczywistym (online-learning) • zastosowanie w przypadku niestacjonarnego środowiska • duża uniwersalność zastosowań np. w środowiskach niestacjonarnych (gry planszowe) • dobra zbieżność

  35. 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): 1.) Z prawdop. 1-εwykonaj akcję a w stanie s o najwyższej wartości Q lub akcję losową z prawdop. ε przechodząc do stanu s' 2.) Zmodyfikuj wartość akcji a w stanie s: until s jest stanem końcowym until spełniony warunek końca

  36. Algorytm SARSA * Algorytm SARSA z aktualizacją wartości par [stan,akcja] zgodnie z aktualną strategią np. -zachłanną (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’)) untils jest stanem końcowym until spełniony warunek końca

  37. Typy strategii • poszukiwana strategia optymalizująca zyski (eksploatacja) • strategia uczenia (eksploatacja + eksploracja): • bieżące zyski nie mają znaczenia w trakcie uczenia lub mają (np. w problemie k-rękiego bandyty) • optymalizacja zysków przy nieznanej początkowo strategii optymalnej pozwala na ukierunkowanie poszukiwań • optymalizacja procesu uczenia dzięki sprawdzeniu wielu potencjalnie dobrych akcji w wielu potencjalnie dobrych stanach

  38. 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):

  39. Przybliżenie TD(0) * Wartość stanu w danym epizodzie jest modyfikowana tylko na podstawie wartości następnego stanu i nagrody: st+1 st r > 0

  40. Inne przybliżenia * Można wyznaczyć sumę ważoną przybliżeń przyjmując, że im przybliżenie dalsze, tym mniej istotne:

  41. Ślady aktywności TD() - wyprowadzenie * Sumując elementy w kolumnach i uwzględniając: otrzymujemy:

  42. Ślady aktywności TD() - wyprowadzenie * Przesuwamy ostatnią kolumnę w dół. Wstawiamy -V(st) do pierwszego wiersza gdzie

  43. Ś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 wszystkie odwiedzone stanysx: end for untils jest stanem końcowym until spełniony warunek końca

  44. Ś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 zalet metod Monte Carlo i TD(0) przez odpowiedni wybór współczynnika świeżości • Znaczne przyspieszenie uczenia w przypadku nagród znacznie oddalonych Wady: • Duża złożoność w przypadku tabelarycznej (wyliczeniowej) reprezentacji stanów lub akcji

  45. Aproksymacja funkcji wartości – przedstawienie funkcji wartości stanów lub par [stan,akcja] w postaci modelu parametrycznego funkcji (struktury) o odpowiednio dobranych (nauczonych) wartościach parametrów Aproksymacja i kodowanie Kodowanie stanów – transformacja stanów do nowej przestrzeni cech

  46. Wydobywanie cech - kodowanie Przekształcenie wektorów z pierwotnej przestrzeni stanów s= [s1, s2,..., sN] (np. układu figur na szachownicy) do przestrzeni cech istotnych dla określenia wartości stanu: z wykorzystaniem wiedzy o problemie • Cele: • Uzyskanie cech istotnych dla określenia wartości stanów • Zwiększenie uogólniania poprzez agregację stanów o podobnej wartości

  47. Aproksymatory funkcji • Przykłady: • Aproksymator liniowy • Sieci o podstawie radialnej (Radial Basis Functions – RBF) • Wielomiany stopnia > 1 • Sztuczne sieci neuronowe (SNN) • Systemy rozmyte Zalety: • Oszczędność miejsca przy dużych zbiorach stanów lub par [stan,akcja] • Możliwość uogólniania wiedzy dla stanów pośrednich • Brak dyskretyzacji w przypadku rzeczywistoliczbowej reprezentacji stanów lub akcji

  48. V(s) Q(s,a) ... ... ... ... ... ... s1 s2 s3 s3 sN a s1 s2 sN Aproksymator SSN • Wektorowi parametrów modelu odpowiada wektor wag sieci: • Poprawa wartości oceny odbywa się poprzez zmianę wektora wag w kierunku największego spadku funkcji błędu – gradientu. Gradient funkcji błędu względem wag oblicza się metodą propagacji wstecznej błędu.

  49. Aproksymatory funkcji - definicje Wartości stanów lub par [stan,akcja] reprezentowane są za pomocą funkcji zależnej od wektora parametrów : Wektor parametrów: Kryterium optymalizacji: V(s) – poszukiwana wartość stanu s dla strategii  Vt(s) – aktualna wartość stanu s

  50. Gradientowa metoda aproksymacji funkcji wartości stanów * parametry funkcji wartości modyfikowane są w kierunku maksymalnego spadku funkcji błędu MSE Przyjmując przybliżenie: Otrzymujemy algorytm aktualizacji wartości stanu: (następny slajd)

More Related