Megerősítéses tanulás ápr. 27. Copyrights: Szepesvári Csaba: Megerősítéses tanulás (2004) Szita István, Lőrincz András: Megerősítéses tanulás (2005) Richard S. Sutton and Andrew G. Barto: Reinforcement Learning: An Introduction (1998)
Megerősítéses tanulás (reinforcement learning) http://www.youtube.com/watch?v=mRpX9DFCdwI http://www.youtube.com/watch?v=VCdxqn0fcnE
Megerősítéses tanulás (reinforcement learning)
Megerősítéses tanulás (reinforcement learning)
Robot navigációs feladat Pavlov: Nomad 200 robot Nomad 200 simulator Sridhar Mahadevan UMass
Megerősítéses tanulás Kontroll/vezérlési problémák Cél: több lépéses akciósorozatok kialakítása Interakcióból tanul, a megerősítés (büntetés/jutalom) általában nem azonnali Célorientált! A jutalom egy függvényét maximalizáljuk. +50 -1 +3 r9 r5 r4 r1 … … s1 s2 s3 s4 s5 … s9 a1 a2 a3 a4 a5 … a9
Felügyelt vs Megerősítéses gépi tanulás Mindkettő gépi tanulási módszer Felügyelt Megerősítéses Azonnali visszajelzés Késleltetett indirekt visszajelzés Passzív tanulás (előre adott tanító adatbázis) Aktív tanulás (akciókat a rendszer választja amire visszajelzést kapunk)
Megerősítéses tanulás idő: állapot: akció: jutalom: eljárásmód (policy, stratégia): determinisztikus: szochasztikus: (s,a) annak a valószínűsége, hogy s-ben a-t lép (végtelen horizont)
interakció: környezet modellje: átmeneti valószínűségek és jutalmak cél: maximális várható jutalom:
A Markov-feltevés feltesszük, hogy a régmúlt nem számít: a környezet dinamikája leírható az átmenetivalószínűség-mátrixszal:
Markov Döntési Folyamatok Markov Decision Processes (MDPs) Állapotok, véletlentől függő átmenetekkel Átmenetvalószínűségek aktuális állapottól függnek a1 r = 0 1 1 2 r = 2 a2
A felderítés-kiaknázás dilemma (exploration – exploitation) A k-karú bandita probléma Átlagos kifizetés (jutalom) Akciók 10 0, 0, 5, 10, 35 5, 10, -15, -15, -10 -5 -20, 0, 50 Ágens 100 Ahhoz, hogy sok jutalmat kapjunk tudnunk kell milyen akciókkal szerezhetjük meg, azaz meg kell ismerni a környezetet (felderítés), majd a tudás alapján összegyűjteni a jutalmat (kiaknázás).
Célfüggvény folytonos (végtelen) feladat diszkontálás kényelmes gond: rt végtelen lehet! megoldás: diszkontálás. rt helyett t rt , <1 garantáltan véges diszkontálás kényelmes
Markov döntési folyamat megoldása környezet lépked P és R szerint: ágens lépked szerint: optimális eljárásmód: olyan , amelyre maximális.
Hosszútávú jutalom Ágens politikája rögzített: p Az Rt kifizetés a t pillanat utáni össz-jutalom p alapján +50 -1 +3 r9 r5 r4 r1
Állapot hasznossága (értéke) = Várható kifizetés Rt valószínűségi változó Vehetjük a várható értékét! Politikától függ Rt ! V()-t értékelőfüggvénynek hívjuk Feladat: találjuk meg azt a p* eljárásmódot amelyik a várható értéket maximalizálja, minden állapotban
Az eddigi sztori.. Több lépéses döntési feladatok Cél p*-ot megtalálni A minden állapotban optimális p biztosítja a legtöbb hosszútávú jutalmat at at+1 at+2 st st+1 st+2 st+3 rt+1 rt+2 rt+3
A Bellman egyenletek A Markov tulajdonság miatt a várható összjutalom egy rekurzív egyenlettel is kifejezhető: s 4 3 5 p(s)
Eljárásmódok összehasonlítása részbenrendezés * optimális, ha * ≥ minden eljárásmódra mindig létezik ilyen
Példa: egy nagyon egyszerű MDP -10 A D C B cél 1 2 +100 4 állapot, 2 akció 10% eséllyel rossz irányba megy
Példa A D C B cél 1 2 -10 +100 (A,1) = 1 (A,2) = 0 (B,1) = 1 (B,2) = 0 (C,1) = 1 (C,2) = 0 (D,1) = 1 (D,2) = 0
Példa
Példa megoldás: 2 stratégia: mindig 2-t lép
Példa: egy 3. eljárásmód 3(A,1) = 0,4 3(A,2) = 0,6 3(B,1) = 1 3(B,2) = 0 3(C,1) = 0 3(C,2) = 1 3(D,1) = 1 3(D,2) = 0 A D C B cél 1 2 -10 +100
Példa: egy 3. eljárásmód
Példa: egy 3. eljárásmód megoldás:
Példa: összehasonlítás 1 2 3 A 75.61 77.78 B 87.56 68.05 87.78 C D 100 1 ≤ 3 és 2 ≤ 3 3 optimális eljárásmód sok optimális eljárásmód van! az optimális értékelőfüggvény (V) egyértelmű
Az optimális értékelőfüggvény Bellman-egyenlete Mohó eljárásmód: mindig a Q* szerinti legjobb akciót választja: argmaxa Q*(s,a) Ez optimális eljárásmód!!!
Az optimális értékelőfüggvény Bellman-egyenlete nemlineáris! van egyértelmű megoldása megoldja a hosszútávú tervezés problémáját
MDP megoldása dinamikus programozással Tfh. P és R ismert Kerssük -t Eljárásmód iteráció Értékiteráció
Eljárásmód iteráció
Jack's Car Rental Problem: Jack manages two locations for a nationwide car rental company. Each day, some number of customers arrive at each location to rent cars. If Jack has a car available, he rents it out and is credited $10 by the national company. If he is out of cars at that location, then the business is lost. Cars become available for renting the day after they are returned. To help ensure that cars are available where they are needed, Jack can move them between the two locations overnight, at a cost of $2 per car moved. We assume that the number of cars requested and returned at each location are Poisson random variables with parameter λ. Suppose λ is 3 and 4 for rental requests at the first and second locations and 3 and 2 for returns. To simplify the problem slightly, we assume that there can be no more than 20 cars at each location (any additional cars are returned to the nationwide company, and thus disappear from the problem) and a maximum of five cars can be moved from one location to the other in one night. We take the discount rate to be 0.9 and formulate this as a continuing finite MDP, where the time steps are days, the state is the number of cars at each location at the end of the day, and the actions are the net numbers of cars moved between the two locations overnight.
Értékiteráció
Eljárásmóditeráció vs. értékiteráció melyik jobb? eljárásmóditerációnak kevesebb lépés elég de azok a lépések sokáig tartanak Értékiteráció polinom időben -optimális értékelőfüggvényhez konvergál Eljárásmóditeráció: konvergál, de nem ismert, hogy polinomiális-e gyakorlatban: problémafüggő
Általános eljárásmód iteráció
Eljárásmód kiértékelése modell (P és R) nélkül keressük V-t R(s): „nyereség” s-ből indulva, valószínűségi változó várható értéke: V(s)
V(s) becslése Monte Carlo módszer, MC R(s) modell nélkül számítható, szimulációval tapasztalati átlag: veszünk N darab s-ből induló utat (epizód), a nyereségek:
Monte Carlo értékelőbecslés
Az időbeli differenciák módszere (Temporal Differences, TD) becslésünk hibája: Előnye: nem kell megvárni az epizód végét (szemben az MC-vel) a becsléshez egy másik becslést használunk
Az időbeli differenciák módszere értékelőbecslésre
Összehasonlítás: DP, MC, TD 3 módszer V becslésére: DP: a környezet modellje (P és R) ismert A várható értéket pontosan számoljuk MC: közelítő megoldás, szimulálunk epizódokat frissítés csak az epizód végén TD: frissítés a szimuláció egyetlen lépése alapján a mintavétel zajos, ezért csak -nyi mértékben vesszük figyelembe
Egy explorációs stratégia (Sarsa) Mohó akció 1-e valószínűséggel Véletlen akció e valószínűséggel
Az explorációs stratégia javítása az -mohó stratégia nagyon rossz! a felfedező lépések véletlen bolyongások példa jobb módszerre: explorációs bónuszok jutalom, ha ritkán látogatott állapotba jut az ügynök jutalom pl. legutóbbi látogatás ideje, TD hiba nagysága, stb. egyszerű módszer a felderítés bátorítására: optimista kezdőértékek eleinte minden akciót végigpróbál, mert sok jutalmat remél
Regresszió alapú RL Ha az állapotok és akciók száma túl nagy kezelhetetlen lesz a probléma túl sok epizód kell a jó becsléshez Eddig csak diszkrét állapot és akcióterekről beszétünk (folytonos esetek?)
Egy különösen sikeres példa: TD-gammon TD(l) tanulás, 1 rejtett rétegű neuronháló, Backprop 1,500,000 játék (saját magával) A legjobb játékosokkal azonos képességek (világbajnok) Backgammon állapottere: ~1020 , DP nem megy!!