Uczenie ze wzmocnieniem

57
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.

description

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. - PowerPoint PPT Presentation

Transcript of Uczenie ze wzmocnieniem

Page 1: Uczenie ze wzmocnieniem

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.

Page 2: Uczenie ze wzmocnieniem

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ń

Page 3: Uczenie ze wzmocnieniem

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

Page 4: Uczenie ze wzmocnieniem

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

• 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)

st st+1 st+2 st+k...at, rt+1

at+1, rt+2 at+k-1, rt+k

Page 5: Uczenie ze wzmocnieniem

5

Ogólny schemat uczenia się w interakcji ze środowiskiem

UCZEŃ

ŚRODOWISKO

akcja at

st

rt+1

rt

st+1

Page 6: Uczenie ze wzmocnieniem

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)

Page 7: Uczenie ze wzmocnieniem

7

Zadanie optymalizacji w procesach epizodycznych

]...[ 132

210

1

ntn

ttt

n

kkt

k rrrrErE

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)

Page 8: Uczenie ze wzmocnieniem

8

Dobór współczynnika dyskontowania w zależności od wartości nagród

,21

1

011

02

11

1

021

rrr

rrrr

nn

t

nt

n

t

ntn

t

nt

Niech r2 oznacza wartość nagrody za dojście do stanu końcowego, r1 - wartość nagrody dla pozostałych stanów

Zadania do-sukcesu: 12 rr

2

11r

r

stąd:

r1

r1

r1

r1

r1

r2

r2

r1r1

r1

r1

r1

r1

r1

r1r2

*

Page 9: Uczenie ze wzmocnieniem

9

Przykład GRID-6

0.5

1

hpozostalyc dla 0

)5,5(' dla 5.0

)5,0(' dla 1

eniedostepn pole wprowadzi nie akcjagdy 1

)}5,5(),...,1,0(),0,0{(

},,,,{

s

s

R

P

S

A

ij

Page 10: Uczenie ze wzmocnieniem

10

Przykład GRID-6 – przykładowe strategie

1

3 4

2

Page 11: Uczenie ze wzmocnieniem

11

Funkcje wartości

n

ktkt

k ssrEsV0

1 |)(

Funkcja wartości stanu st przy strategii :

n

kttkt

k aassrEasQ0

1 ,|),(

Funkcja wartości pary [stan,akcja]: (st , at) przy strategii :

))(,()( ssQsV

Przy danej strategii dla każdego stanu s zachodzi równanie:

Page 12: Uczenie ze wzmocnieniem

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)

*

Page 13: Uczenie ze wzmocnieniem

13

Przykład GRAF-5

S = {1,2,3,4,5}, A={0,1}

5 lub 1 dla 0

1,51 dla 1.0

0,51 dla 4.0

)(

5 dla 1

1,1 dla 2.0

0,1 dla 8.0

1,51 dla 1.0

0,51 dla 4.0

)(

5 dla 0

1,5 dla 8.0

0,5 dla 2.0

)(

1,

,

1,

ss

as

as

aP

s

as

as

as

as

aP

s

as

as

aP

ss

ss

ss

hpozostalyc dla 0

1,4 dla 8.0

0,4 dla 2.0

),( as

as

asR

1 2 3 4 5

Nagroda za akcję a w stanie s:

*

Page 14: Uczenie ze wzmocnieniem

14

Przykład GRAF-5

Optymalne wartości stanów dla = 0.9

1 2 3 4 5

V(1) V(2) V(3) V(4) V(5)0.299 0.527 0.768 0.945 0

*

Page 15: Uczenie ze wzmocnieniem

15

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:

)()(' sVsV

)()(' sVsV

),(maxarg)(

))'((maxarg)('

''

asQs

sVRPs

a

s

ass

ass

a

assP ' - 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

assR '

Page 16: Uczenie ze wzmocnieniem

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

*

Page 17: Uczenie ze wzmocnieniem

17

Strategia optymalnaStrategia * 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

)()(* sVsV

),(maxarg)(*

))'((maxarg)(*

*

'

*''

asQs

sVRPs

a

s

ass

ass

a

assP ' - 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

assR '

))(,())(*,( ssQssQ

Page 18: Uczenie ze wzmocnieniem

18

Metody szukania optymalnej strategii

• Programowanie dynamiczne

• Metoda Monte Carlo

• Metoda różnic czasowych (TD)

Page 19: Uczenie ze wzmocnieniem

19

Prawdopodobieństwo przejścia ze stanu s do s’ po wykonaniu akcji a, oraz średnia wartość nagrody związanej z tym zdarzeniem:

}',,|{

},|'Pr{

11'

1'

ssaassrER

aassssP

ttttass

ttta

ss

)]'([)( )('

'

)(' sVRPsV s

sss

sss

Równania równowagi Bellmana dla reprezentacji [stan] oraz [stan,akcja] i strategii , ( (s) - akcja w stanie s zgodna ze strategią ):

))]'(,'([),( ''

' ssQRPasQ ass

s

ass

Programowanie dynamiczne

Model środowiska

Page 20: Uczenie ze wzmocnieniem

20

Przykładowy graf przejść ze stanu s=s1 do s’ {s1 , s2 , s3 }, po wykonaniu akcji a:

)]'([)( )('

'

)(' sVRPsV s

sss

sss

Programowanie dynamiczne

s2

s1

s3

1,2.0 RP

1,7.0 RP

5.0,1.0 RP

))(5.0(1.0))(1(7.0))(1(2.0)( 1321 sVsVsVsV

1.01

)(7.0)(2.095.0)( 32

1

sVsV

sV

stąd:

Page 21: Uczenie ze wzmocnieniem

21

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

Programowanie dynamiczne

)]'([

]'|[

|

|)(

)('

'

)('

012

)('

'

)('

021

01

sVRP

ssrERP

ssrrE

ssrEsV

sss

s

sss

ktkt

ksss

s

sss

ktkt

kt

ktkt

k

*

Page 22: Uczenie ze wzmocnieniem

22

)]'([max)( *'

''

* sVRPsV ass

s

ass

a

Równania optymalności Bellmana dla reprezentacji [stan] oraz [stan,akcja]:

)]','(max[),( *

''

''

* asQRPasQa

ass

s

ass

Programowanie dynamiczne

),(),( ** asQsV - wartości odpowiadające strategii optymalnej

Page 23: Uczenie ze wzmocnieniem

23

Metody wyznaczania wartości V lub Q dla danej strategii:• Rozwiązanie układu równań o |S| (lub |SA| 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ć

Programowanie dynamiczne

Page 24: Uczenie ze wzmocnieniem

24

Iteracyjne obliczanie wartości stanów

)]'(~

[)(~ )(

''

)('1 sVRPsV i

sss

s

sssi

powtarzaj dla wszystkich s:

mając dane: , P, R

aż nastąpi w kroku i )(

~)(

~max 1 sVsV ii

Ss

obliczanie wartości stanów dla strategii :

Page 25: Uczenie ze wzmocnieniem

25

Iteracja strategii dla reprezentacji [stan]

'

'' ))'(~

(maxarg)('s

ass

ass

asVRPs

iteracyjne obliczanie wartości stanów dla strategii lub

metodą rozwiązywania układu równań

dla wszystkich s:

wyznaczanie nowej strategii ’:

*21

~~~21 VVV k

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 :

Page 26: Uczenie ze wzmocnieniem

26

Iteracja wartości dla reprezentacji [stan]

)]'(~

[max)(~

''

'1 sVRPsV kass

s

ass

ak

powtarzaj dla wszystkich s:

mając dane: P, R

aż nastąpi w kroku k )(

~)(

~max 1 sVsV kk

Ss

Page 27: Uczenie ze wzmocnieniem

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

Page 28: Uczenie ze wzmocnieniem

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.

,)(~ 1 0

1,

L

rsV

L

e

n

iite

ie

gdzie L - liczba epizodów, ne – liczba kroków e-tego epizodu

Wyznaczanie strategii optymalnej: np. metodą iteracji strategii

lub metodą iteracji wartości

*21

~~~21 VVV k

Page 29: Uczenie ze wzmocnieniem

29

Metody Monte Carlo - wady i zalety

V = ? V = -0.8

-1

1

p = 0.9

p = 0.1nowy stan

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

Page 30: Uczenie ze wzmocnieniem

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

Page 31: Uczenie ze wzmocnieniem

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); until s jest stanem końcowymuntil spełniony warunek końca

Page 32: Uczenie ze wzmocnieniem

32

Średni dochód przy wyjściu ze stanu st i przy strategii :

Rzeczywisty:

Aproksymowany:

Częściowo aproksymowany:

Metoda różnic czasowych – TD(0)

)( 1,1, tkktkt sVrI

]...[ 132

210

1

ntn

ttt

n

iit

i rrrrErE

)( tk sV

Page 33: Uczenie ze wzmocnieniem

33

Metoda różnic czasowych – TD(0)

)]()([)()( 11 ttttt sVsVrsVsV

Aktualizacja wartości stanu - ogólna postać:

)]([)()( tttt sVIsVsV

)( 11 ttt sVrI

Częściowo aproksymowany dochód uzyskany po wyjściu ze stanu st:

)],(),([),(),( 111 ttttttttt asQasQrasQasQ

Reprezentacja [stan,akcja]:

),( 111 tttt asQrI

Page 34: Uczenie ze wzmocnieniem

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ść

Page 35: Uczenie ze wzmocnieniem

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ńcowymuntil spełniony warunek końca

]),()','(max[),(),('

asQasQrasQasQa

Page 36: Uczenie ze wzmocnieniem

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’))

until s jest stanem końcowymuntil spełniony warunek końca

]),()','([),(),( asQasQrasQasQ ;';' aass

*

Page 37: Uczenie ze wzmocnieniem

37

• 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

Typy strategii

Page 38: Uczenie ze wzmocnieniem

38

Przykłady strategii wyboru akcji w trakcie uczenia:

• maksimum

• losowa

• -zachłanna

• softmax

Eksploatacja i eksploracja

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

),(maxarg asQaa

)(

),(exp

),(exp

)(

sAb TbsQ

TasQ

aP

Page 39: Uczenie ze wzmocnieniem

39

Przybliżenie TD(0)

)]()([)()( 11 ttttt sVsVrsVsV

)( 11 ttt sVrI

Wartość stanu w danym epizodzie jest modyfikowana tylko na podstawie wartości następnego stanu i nagrody:

st

st+1

r > 0

*

Page 40: Uczenie ze wzmocnieniem

40

Inne przybliżenia

)(

)(

)(

21)(

22

21)2(

11)1(

ntn

ttn

t

tttt

ttt

sVrrI

sVrrI

sVrI

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

)(

1

1)1( it

n

i

it II

*

Page 41: Uczenie ze wzmocnieniem

41

Ślady aktywności TD() - wyprowadzenie

)]([)1(

)]([)1(

)]([)1()()(

)],([)()(

11

32

21

22

211

110

ntn

tttn

ttt

ttttt

tttt

sVrrr

sVrr

sVrsVsVI

sVIsVsV

)]()([)(

)]()([)(

)]()([)()()(

111

2221

1110

ntntntn

ttt

tttttt

sVsVr

sVsVr

sVsVrsVsVI

Sumując elementy w kolumnach i uwzględniając:otrzymujemy:

,1)1(1

1

n

n

i

i

*

Page 42: Uczenie ze wzmocnieniem

42

Ślady aktywności TD() - wyprowadzenie

1

11

11

1221

110

111

2221

1110

)(

)()()]()([)(

)]()([)(

)]()([)(

)]()([)(

)]()([)(

)]()([)()()(

T

tkk

tk

ntn

ntntntn

ttt

ttt

ntntntn

ttt

tttttt

sVsVsVr

sVsVr

sVsVr

sVsVr

sVsVr

sVsVrsVsVI

)()( 11 tttt sVsVr gdzie

Przesuwamy ostatnią kolumnę w dół. Wstawiamy -V(st) do pierwszego wiersza

*

Page 43: Uczenie ze wzmocnieniem

44

Ś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 stany sx:

end for

until s jest stanem końcowymuntil spełniony warunek końca

)()'( sVsVr 1)()( sese

'ss

)()(

)()()(

xx

xxx

sese

sesVsV

*

Page 44: Uczenie ze wzmocnieniem

45

Ś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

*

Page 45: Uczenie ze wzmocnieniem

46

Aproksymacja i kodowanie

Kodowanie stanów – transformacja stanów do nowej przestrzeni cech

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

))(),...,2(),1(( ntttt

ss

Page 46: Uczenie ze wzmocnieniem

47

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

)](),...,2(),1([)( Ms ssss

Cele:

• Uzyskanie cech istotnych dla określenia wartości stanów• Zwiększenie uogólniania poprzez agregację stanów o podobnej

wartości

Page 47: Uczenie ze wzmocnieniem

48

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

n

iss

T iisV1

)()()(

Page 48: Uczenie ze wzmocnieniem

49

• 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.

Aproksymator SSN

...

...

Q(s,a)

s1 s2 s3 sN a

...

...

...

s1 s2 s3 sN

V(s)

...

Page 49: Uczenie ze wzmocnieniem

50

Aproksymatory funkcji - definicje

))(),...,2(),1(( ntttt

Wektor parametrów:

Kryterium optymalizacji:

,)()()(2

Ss

tt sVsVMSE

V(s) – poszukiwana wartość stanu s dla strategii Vt(s) – aktualna wartość stanu s

),(),( asFasQ

)()( sFsV

Wartości stanów lub par [stan,akcja] reprezentowane są za pomocą funkcji zależnej od wektora parametrów :

Page 50: Uczenie ze wzmocnieniem

51

Gradientowa metoda aproksymacji funkcji wartości stanów

)()()(

)()(2

1 2

1

tttttt

ttttt

sVsVsV

sVsV

t

t

Przyjmując przybliżenie:

)()( 11 tttt sVrsV

Otrzymujemy algorytm aktualizacji wartości stanu:(następny slajd)

)(

)(,,

)2(

)(,

)1(

)()(gradient gdzie

n

ffff

t

t

t

t

t

tt

t

parametry funkcji wartości modyfikowane są w kierunku maksymalnego spadku funkcji błędu MSE

*

Page 51: Uczenie ze wzmocnieniem

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 ze strategią określoną przez

until s jest stanem końcowymuntil spełniony warunek końca

)()'( sVsVr )(sVee

'sse

]0,...,0,0[e

)(),()( sFsFsV

)()( sFsV

Page 52: Uczenie ze wzmocnieniem

53

Metody wyznaczania kierunku modyfikacji wektora parametrów funkcji wartości

• Metoda spadku gradientu funkcji błędu (propagacja wsteczna w SSN)

• Metoda gradientów sprzężonych

• Metoda Newtona

• Metody quasi-Newtonowskie

• Metoda Levenberga-Marquardta

))(()(

2

1)()()()( tt

Ttt

Ttt EEE H

,)()()()(2

Ss

ttt sVsVMSEE

)()(/:)( 2 jiEHhesjan ttijt H

)()( 1tt E

H - poprawka wektora wag

*

Page 53: Uczenie ze wzmocnieniem

54

Metody kodowania stanów o parametrach ciągłych

Metody kodowania (obliczania cech):• Kodowanie metodą pokryć (CMAC, tile coding)• Kodowanie przybliżone (coarse coding)• Kodowanie przybliżone rozproszone - np. metodą Kanervy

Page 54: Uczenie ze wzmocnieniem

55

Kodowanie metodą pokryć

n

iss

T iisV1

)()()(

s

- wektor cech stanu

gradient funkcji wartości: )](),...,2(),1([)( nsV ssss

aproksymacja liniowa funkcji wartości stanu:

Page 55: Uczenie ze wzmocnieniem

56

Kodowanie metodą pokryć

Adaptacyjne zagęszczanie stanów:

Kryteria zagęszczania stanów:• duża częstość odwiedzin• niestabilność wartości stanu podczas uczenia

Realizacja:• drzewa czwórkowe w przypadku 2 parametrów stanu

Page 56: Uczenie ze wzmocnieniem

57

Kodowanie przybliżone

Przykładowe zastosowanie: aproksymator liniowy z wykorzystaniem zbioru cech:

n

iss

T iisV1

)()()(

s

- wektor cech stanu

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:

]0,0,0,0,0,0,0,1,0,0,0,1,0[s

gradient funkcji wartości: )](),...,2(),1([)( nsV ssss

Page 57: Uczenie ze wzmocnieniem

58

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

x

yLicząc po kolejnych wierszach od lewej do prawej, nowy wektor cech:

]0,0,0,0,0,1,0,1,0,0,0,1,0,0[s

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