1 of 67

Ismétlés összefoglaló

2024-04-24

2 of 67

Klasszikus ML vs. RL

3 of 67

Klasszikus ML

sorok = egy minta

oszlopok = attribútumok

4 of 67

  • Interaktív interakció pl. a környezettel
  • Nincs tanító halmaz.
  • Jutalom/ büntetés. (Majom + autó)
  • Kiinduló pont -> egyre jobb és jobb megoldás

5 of 67

ML vs. RL “jutalom”

Local vs. Global

6 of 67

Agent, State, Action, Reward

7 of 67

Mi az a megerősítéses tanulás?

A megerősítő tanulás lényege hogy egy ágens(agent):

  • tanul a környezetéből(state)
  • kölcsönhatásba lép vele (próbálgatás és hiba útján) (action)
  • jutalmakat(reward) kap (negatív vagy pozitív) a cselekvések elvégzéséért.

Példa: kistestvér -> még sohasem játszott

8 of 67

A megerősítéses tanulás keretrendszere

Pl. képzeljük el, hogy ez egy játék

9 of 67

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.

10 of 67

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.

11 of 67

Observation, State, Action space

12 of 67

Megfigyelések(Observations) / állapotok terek (States Space)

  • A megfigyelés(Observation) és az állapot(State) között azonban van különbség.

13 of 67

Action Space - Akció tér

  • Az akció tér a környezetben lehetséges összes cselekvés halmaza.
  • Az akciók lehetnek:

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.

14 of 67

Epizodikus és folyamatos feladatok

15 of 67

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:

  • egy epizód egy új Mario-szint indításakor kezdődik,
  • végetér amikor megölnek vagy elérted a szint végét

16 of 67

Folyamatos típus

  • Örökké tartanak (nincs végállapot).

  • Az ágensnek meg kell tanulnia, hogyan válassza ki a legjobb cselekvéseket és egyidejűleg hogyan lépjen kapcsolatba a környezettel.

  • Például az RL automatizált tőzsdei kereskedést végez. Nincs kezdőpont és végállapot. Az ágens addig fut, amíg úgy nem döntünk, hogy leállítjuk.

17 of 67

Jutalmak és a leértékelési tényező

18 of 67

Jutalmak és a leértékelési tényező

  • A jutalom az egyetlen visszajelzés az ágens számára.
  • A kumulatív jutalom minden egyes t idő lépésben a következőképpen írható fel:

19 of 67

Jutalmak és a leértékelési tényező

  • A valóságban azonban nem tudjuk csak így összeadni a jutalmakat.
  • Hiszen játék elején érkező jutalmak nagyobb valószínűséggel történnek meg, mint a hosszú távú jövőbeni jutalom.

20 of 67

Jutalmak és a leértékelési tényező

  • Valószínűbb, hogy a hozzánk közeli sajtot esszük meg, mint a macskához közeli sajtot (minél közelebb vagyunk a macskához, annál veszélyesebb).

  • Következésképpen a macskához közeli jutalom, még ha nagyobb is (több sajt), nagyobb leértékelési tényező (discount) kap, mivel nem igazán biztos, hogy meg tudjuk majd enni.

21 of 67

Jutalmak és a leértékelési tényező

A diszkontált várható kumulatív jutalmunk:

22 of 67

A feltárás és a kiaknázás közötti kompromisszum

23 of 67

A feltárás és a kiaknázás közötti kompromisszum

  • Ha ez még mindig zavaros, gondoljon egy valódi problémára: az étterem kiválasztása.

  • Kihasználás: minden nap -> jól bevált étterem
  • Felfedezés: még soha nem járt, kockázat, valószínű fantasztikus élmény.

24 of 67

A feltárás és a kiaknázás közötti kompromisszum

  • Felfedezés vs. kiaknázás

25 of 67

A Policy π: az ügynök agya

26 of 67

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.

27 of 67

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

28 of 67

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.

29 of 67

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

30 of 67

Állapot-érték függvény

Ugyanaz, röviden:

31 of 67

É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

32 of 67

Policy-alapú módszer

Kétféle policy-nk van:

Determinisztikus: egy adott állapotra(state) mindig ugyanazt a műveletet(action) adja vissza.

33 of 67

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]

34 of 67

Q tanulás

35 of 67

Q tanulás

36 of 67

Q tanulás

37 of 67

38 of 67

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

39 of 67

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.

40 of 67

  1. lépés

Q tábla inicializálása

41 of 67

2. lépés

Egy akció választása az Epsilon-Mohó stratégiával

42 of 67

3. lépés

Akció At, reward Rt+1 és St+1 állapot

43 of 67

4. lépés

Q(St,At) frissitése

44 of 67

2. lépés

Egy akció választása az Epsilon-Mohó stratégiával

45 of 67

3. lépés

Akció At, reward Rt+1 és St+1 állapot -> Rt+1 = -10 halál

46 of 67

4. lépés

Q(St,At) frissitése

47 of 67

Q learning

https://www.youtube.com/watch?v=TiAXhVAZQl8&ab_channel=CodeEmporium

48 of 67

Deep Q learning

49 of 67

A Q-tanulástól a mély Q-tanulásig

50 of 67

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?

51 of 67

Deep Q-hálózat

52 of 67

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!

53 of 67

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.

54 of 67

Deep Q hálózat

55 of 67

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.

56 of 67

57 of 67

58 of 67

DeepQ

https://www.youtube.com/watch?v=x83WmvbRa2I&ab_channel=CodeEmporium

59 of 67

Off-On policy

60 of 67

61 of 67

Policy alapú megközelítés

62 of 67

É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]

63 of 67

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

64 of 67

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.

65 of 67

https://www.youtube.com/watch?v=MVXdncpCbYE&ab_channel=CodeEmporium

66 of 67

Actor critic model

67 of 67

https://www.youtube.com/watch?v=w_3mmm0P0j8&ab_channel=SirajRaval