Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
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
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
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
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 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)
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
Metody szukania optymalnej strategii
Programowanie dynamiczne Metoda Monte Carlo Metoda różnic czasowych (TD)
8
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 praktycznych spostrzeżeń: nagrody warto zdobywać jak najszybciej (zadania do-sukcesu), kary jak najdłużej odwlekać (zadania do-porażki)
9
Dobór współczynnika dyskontowania w zależności od wartości nagród
Niech r2 oznacza wartość nagrody w stanie końcowym, r1 - wartość nagrody w pozostałych stanach Zadania do-sukcesu: stąd:
10
Przykład GRID-6 0.5 1
11
Przykład GRID-6 – przykładowe strategie
1 2 3 4
12
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:
13
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
14
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 metoda wyboru akcji: Zachłanna metoda wyboru akcji względem optymalnej funkcji wartości lub funkcji wartości akcji jest realizacją strategii optymalnej - 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
15
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)
16
Przykład GRAF-5 S = {1,2,3,4,5}, A={0,1}
Nagroda za akcję a w stanie s:
17
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
18
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); until s jest stanem końcowym until spełniony warunek końca
19
Programowanie dynamiczne
Prawdopodobieństwo przejścia ze stanu s do s’ po wykonaniu akcji a, oraz średnia wartość nagrody związanej 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ą ):
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 optymalnej strategii: Rozwiązanie układu równań o |S| (lub |SA| w przypadku reprezentacji [stan,akcja]) niewiadomych 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
Iteracja strategii dla reprezentacji [stan]
obliczanie funkcji wartości stanu dla strategii : mając dane: , P, R powtarzaj dla wszystkich s: aż nastąpi w kroku k wyznaczanie nowej strategii ’: dla wszystkich s:
25
Iteracja wartości dla reprezentacji [stan]
mając dane: P, R powtarzaj dla wszystkich s: aż nastąpi w kroku k
26
Programowanie dynamiczne - wady i zalety
konieczność znajomości modelu środowiska (prawdopodobieństw przejść pomiędzy stanami dla wszystkich możliwych akcji i oczekiwanych wartości nagród) duża złożoność obliczeniowa (brak ukierunkowania przy obliczeniach - nakład obliczeń nie zależy od wartości stanu) Zalety: pewność znalezienia rozwiązania w przypadku metody dokładnej oraz zbieżność metod iteracyjnych
27
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 Wyznaczanie strategii optymalnej: np. metodą iteracji strategii lub metodą iteracji wartości
28
Metody Monte Carlo - wady i zalety
Powolna zbieżność - obliczenie funkcji wartości nowego stanu bez uwzględnienia wartości stanów następujących po danym (bootstraping) -1 p = 0.9 V = ? V = -0.8 nowy stan p = 0.1 1 Zalety: Pewna zbieżność do funkcji wartości V(s) dla ustalonej strategii przy odpowiedniej eksploracji Nie jest wymagana znajomość modelu środowiska
29
Metoda różnic czasowych – TD(0)
Całkowity dochód uzyskany po wyjściu ze stanu st: Aktualizacja wartości stanu - ogólna postać: Reprezentacja [stan,akcja]:
30
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 metod TD: nie jest wymagany model środowiska możliwość uczenia w czasie rzeczywistym (online-learning) zastosowanie w przypadku niestacjonarnego środowiska duża uniwersalność zastosowań dobra zbieżność
31
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
32
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’)) until s jest stanem końcowym until spełniony warunek końca
33
Typy strategii 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
34
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):
35
Q-learning - zbieżność
Warunki zbieżności: tablicowa reprezentacja funkcji Q stosowanie ciągu zmiennych współczynników α dostateczna eksploracja
36
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 (od S do K): za każdy krok odbierany jest 1 pkt, za wejście w przepaść odbieranych jest 1000 pkt. Pytanie: Która droga zostanie wybrana w przypadku -zachłannej strategii uczenia przez system uczony algorytmem SARSA?
37
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
38
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
39
Metoda Actor-Critic - zaleta
W stosunku do standardowego algorytmu z reprezentacją stanów (V(s)) wymaga małego nakładu obliczeniowego przy wyborze akcji
40
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
41
Inne przybliżenia Można wyznaczyć sumę ważoną przybliżeń przyjmując, że im przybliżenie dalsze, tym mniej istotne:
42
Ślady aktywności TD() - wyprowadzenie
Sumując elementy w kolumnach i uwzględniając: otrzymujemy:
43
Ślady aktywności TD() - wyprowadzenie
Przesuwamy ostatnią kolumnę w dół. Wstawiamy -V(st) do pierwszego wiersza gdzie
44
Ślady aktywności TD()
W każdym kroku modyfikowane są wartości wszystkich stanów lub par [stan,akcja]:
45
Ś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 states sx: end for until s jest stanem końcowym until spełniony warunek końca
46
Ś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
47
Agregacja, kodowanie, aproksymacja
Agregacja stanów – 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 Kodowanie stanów – transformacja stanów do nowej przestrzeni cech, lecz bez wykorzystania wiedzy o problemie 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
48
Aproksymatory funkcji
Przykłady: Aproksymator liniowy Wielomiany stopnia > 1 Sztuczne sieci neuronowe (SNN) Sieci o podstawie radialnej (Radial Basis Functions – RBF) 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
49
Aproksymator SSN ... V(s) ... Q(s,a) s1 s2 s3 sN a ... ... s1 s2 s3 sN
zamiast pełnej informacji o stanie w postaci wektora s, można wykorzystać stan uogólniony w postaci wektora cech Wektorowi parametrów modelu odpowiada wektor wag sieci Gradient funkcji wartości oblicza się metodą propagacji wstecznej błędu
50
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: V(s) – poszukiwana wartość stanu s dla strategii V(s) – aktualna wartość stanu s
51
Gradientowa metoda aproksymacji funkcji wartości stanów
parametry funkcji wartości modyfikowane są w kierunku maksymalnego spadku funkcji błędu Przyjmując przybliżenie: Otrzymujemy algorytm aktualizacji wartości stanu: (następny slajd)
52
Gradientowa metoda aproksymacji funkcji wartości stanów - TD()
Zainicjuj Repeat (dla kolejnych epizodów): Zainicjuj s, 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
53
Metody wyznaczania kierunku modyfikacji wektora parametrów funkcji wartości
Metoda spadku gradientu funkcji błędu Metoda Newtona Metody quasi-Newtonowskie Metoda gradientów sprzężonych Metoda Levenberga-Marquardta
54
Metody kodowania stanów w aproksymacji funkcji wartości
Metody kodowania (obliczania cech): Kodowanie metodą pokryć (CMAC, tile coding) Kodowanie przybliżone (coarse coding) Kodowanie przybliżone rozproszone - np. metodą Kanervy
55
Kodowanie przybliżone
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: x y Licząc po kolejnych wierszach od lewej do prawej wektor cech: Przykładowe zastosowanie: aproksymator liniowy z wykorzystaniem zbioru cech: - wektor cech stanu gradient funkcji wartości:
56
Kodowanie przybliżone, rozproszone (kodowanie Kanervy)
Kodowanie przybliżone dla przykładowej 2-wymiarowej przestrzeni stanów - każdy prototyp stanu jest związany z jedną cechą binarną, równą 1 jeśli spełnione jest kryterium odległości (w przypadku kodowania Kanervy jest to odległość Hamminga): Licząc po kolejnych wierszach od lewej do prawej nowy wektor cech: y x Prototypowe stany lub pary [stan, akcja] są początkowo wybierane losowo. Dodatkowo, w bardziej zaawansowanych metodach mogą być przemieszczane w celu większego ich skupienia w ważniejszych obszarach przestrzeni stanów
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.