Ismétlés összefoglaló
2024-04-24
Klasszikus ML vs. RL
Klasszikus ML
sorok = egy minta
oszlopok = attribútumok
ML vs. RL “jutalom”
Local vs. Global
Agent, State, Action, Reward
Mi az a megerősítéses tanulás?
A megerősítő tanulás lényege hogy egy ágens(agent):
Példa: kistestvér -> még sohasem játszott
A megerősítéses tanulás keretrendszere
Pl. képzeljük el, hogy ez egy játék
A megerősítéses tanulás keretrendszere
Ez az RL ciklus az state, action, reward és a következő state szekvenciáját adja ki.
Cél, hogy maximalizáljuk a kumulált jutalmat (reward),az úgynevezett várható hozamot.
A jutalom hipotézis:
a megerősítéses tanulás központi gondolata
Miért a hozam maximalizálása a célja az ügynöknek?
Az RL a jutalomhipotézisen alapul. A cél, a várható hozam (várható kumulatív jutalom) maximalizálása.
Observation, State, Action space
Megfigyelések(Observations) / állapotok terek (States Space)
Action Space - Akció tér
Diszkrét tér: a lehetséges cselekvések száma véges.
Folyamatos tér: a lehetséges cselekvések száma végtelen.
Epizodikus és folyamatos feladatok
Epizodikus típus
Van egy kezdőpont és egy végpont (végállapot).
Ez létrehoz egy epizódot: állapotok(state), cselekvések(action), jutalmak(reward) és új állapotok(new state) listáját.
Pl. Super Mario Bros-ra:
Folyamatos típus
Jutalmak és a leértékelési tényező
Jutalmak és a leértékelési tényező
Jutalmak és a leértékelési tényező
Jutalmak és a leértékelési tényező
Jutalmak és a leértékelési tényező
A diszkontált várható kumulatív jutalmunk:
A feltárás és a kiaknázás közötti kompromisszum
A feltárás és a kiaknázás közötti kompromisszum
A feltárás és a kiaknázás közötti kompromisszum
A Policy π: az ügynök agya
A Policy π: az ügynök agya
Célunk hogy megtaláljuk az optimális Policy π* függvényt.
Policy π*, amely maximalizálja a várható hozamot, ha az ágens ennek megfelelően cselekszik.
Ezt a π*-ot tanítással találjuk meg.
A Policy π: az ügynök agya
Kétféle megközelítéssel taníthatjuk az ágenst, hogy megtalálja ezt az optimális π* Policy-t:
Közvetlenül, megtanítjuk az ágenst, hogy az aktuális állapotot figyelembe véve melyik akciót kell végrehajtania
Akció-érték függvény
Az akció érték függvény, egy állapot-akció pár értékét határozza meg.
A várható jutalom értéke s állapotból kiindulva, a akciót választva.
Értékalapú módszerek
Az érték függvények minden lehetséges állapotra meghatározott egy várható értéket.
Az érték függvényeknek köszönhetően a policy minden egyes lépésnél az érték függvény által meghatározott legnagyobb értékkel rendelkező állapotot fogja kiválasztani: -7, majd -6, majd -5 (és így tovább) a cél eléréséhez.
Állapot-érték függvény
Ugyanaz, röviden:
Érték vs policy alapú módszerek
Közvetlen tanítjuk a policy-t
Nincs érték függvény
Az érték függvényt tanítjuk
A policy-t nem tanítjuk, helyette egy előre meghatározott függvényt használunk, pl mohó módon választunk akciót az érték alapján
Policy-alapú módszer
Kétféle policy-nk van:
Determinisztikus: egy adott állapotra(state) mindig ugyanazt a műveletet(action) adja vissza.
Policy-alapú módszer
Kétféle policy-nk van:
Sztochasztikus: valószínűségi eloszlást ad ki a műveletekre.
[Left:0.1, Right: 0.7, Jump: 0.2]
Q tanulás
Q tanulás
Q tanulás
Te egy egér vagy ebben az apró labirintusban. Mindig ugyanabból a kiindulópontból indulsz.
A cél az, hogy megedd a jobb alsó sarokban lévő nagy halom sajtot, és elkerüld a mérget.
Az epizód véget ér, ha megesszük a mérget, megesszük a nagy halom sajtot, vagy ha öt lépésnél többet töltöttünk.
A tanulási arány 0.1
A gamma (diszkontráta) 0,99
A jutalmazási funkció a következőképpen működik:
+0: Olyan állapotba kerülsz, amelyben nincs sajt.
+1: Olyan állapotba jutás, amelyben van egy kis sajt.
+10: Ha abba az állapotba mész, ahol egy nagy halom sajt van.
-10: A méreggel teli állapotba jutás és így meghalsz.
+0 Ha öt lépésnél többet költünk.
Q tábla inicializálása
2. lépés
Egy akció választása az Epsilon-Mohó stratégiával
3. lépés
Akció At, reward Rt+1 és St+1 állapot
4. lépés
Q(St,At) frissitése
2. lépés
Egy akció választása az Epsilon-Mohó stratégiával
3. lépés
Akció At, reward Rt+1 és St+1 állapot -> Rt+1 = -10 halál
4. lépés
Q(St,At) frissitése
Q learning
https://www.youtube.com/watch?v=TiAXhVAZQl8&ab_channel=CodeEmporium
Deep Q learning
A Q-tanulástól a mély Q-tanulásig
A Q-tanulástól a mély Q-tanulásig
Mit tudunk fogunk csinálni, ha betanítunk egy ágenst arra, hogy megtanuljon játszani egy összetettebb Space Invaders játékkal, a képkockákat bemenetként használva?
Deep Q-hálózat
Több frame kezelése
Meg tudod mondani, merre megy a labda? Nem, mert egy képkocka nem elég a mozgás érzékeléséhez!
Több frame kezelése
Meg tudod mondani, merre megy a labda? Nem, mert egy képkocka nem elég a mozgás érzékeléséhez! De mi van, ha hozzáadok még három képkockát? Itt láthatod, hogy a labda jobbra megy.
Deep Q hálózat
Deep Q algoritmus
A mély Q-tanulásban létrehozunk egy veszteségfüggvényt, amely összehasonlítja a Q-érték-előrejelzésünket és a Q-célt, és gradiens ereszkedéssel frissíti a mély Q-hálózat súlyait, hogy jobban közelítse a Q-értékeket.
DeepQ
https://www.youtube.com/watch?v=x83WmvbRa2I&ab_channel=CodeEmporium
Off-On policy
Policy alapú megközelítés
Érték-, Policy- módszerek
A policy-alapú módszereknél közvetlenül megtanuljuk a π∗, anélkül, hogy értékfüggvényt kellene tanulnunk.
Az ötlet a policy paraméterezése.
Pl. DL segítségével πθ , amely valószínűségi eloszlást fog kiadni a cselekvésekre (sztochasztikus policy).
[Left:0.1, Right: 0.7, Jump: 0.2]
Érték-, Policy- módszerek
A célunk tehát az, hogy maximalizáljuk a paraméterezett policy teljesítményét a gradiens emelkedés segítségével.
Ehhez szabályozzuk θ-paramétert, amely az akciók eloszlását befolyásolja egy állapot felett.
A policy-gradiens módszerek előnyei és hátrányai
A policy-gradiens módszerek hatékonyabbak a nagydimenziós akcióterekben és a folytonos akcióterekben.
Miért?
A DQN az előrejelzés minden lehetséges akciójához, minden idő lépésnél, az aktuális állapotot figyelembe véve, egy pontszámot (maximális várható jövőbeli jutalom) rendelnek.
Viszont ez a szám közel végtelen lehet.
https://www.youtube.com/watch?v=MVXdncpCbYE&ab_channel=CodeEmporium
Actor critic model
https://www.youtube.com/watch?v=w_3mmm0P0j8&ab_channel=SirajRaval