Reinforcement learning és RLHF · Lecke 04

Q-tanulás és a mély Q-hálók

A Q-tanulás (Q-learning) az egyik legismertebb megerősítéses tanulási módszer, amely cselekvésértékeket tanul próbálgatással. Ebben a leckében a Q-táblázattól indulunk, majd megnézzük, hogyan lép túl a korlátain a mély Q-háló (deep Q-network, DQN), amely Atari játékokat tanult meg pusztán a képernyő képpontjaiból.

Vissza a tananyaghoz


Az ötlet

A Q-tanulás célja, hogy minden állapot és cselekvés párhoz megtanuljon egy értéket, a Q-értéket. Ez azt becsüli, mennyi jövőbeli jutalom várható, ha az adott állapotban az adott cselekvést választjuk, majd tovább jól döntünk. Ha ezek az értékek pontosak, a jó politika egyszerűen adódik. Minden állapotban azt a cselekvést választjuk, amelynek a legmagasabb a Q-értéke. A tanulás lényege tehát ezeknek az értékeknek a fokozatos pontosítása a tapasztalatok alapján.


Q-táblázat, állapotok és cselekvések értékei Állapot fel le bal jobb s1 0,4 0,9 0,1 0,5 s2 0,7 0,2 0,6 0,3 s3 0,3 0,4 0,8 0,4 Minden sorban a legmagasabb érték jelöli ki a legjobb lépést.
Kis feladatoknál a Q-értékek egy táblázatba írhatók. Minden állapotban a legmagasabb Q-értékű cselekvés a mohó választás, például az s1 állapotban a le lépés.

Hogyan frissül egy Q-érték

A Q-tanulás úgynevezett időbeli különbség (temporal difference) elven frissít. Amikor az ágens egy cselekvés után jutalmat kap és új állapotba kerül, összeveti a korábbi becslését azzal, amit most tapasztalt. Az új becslés a most kapott jutalomból és a következő állapot legjobb, diszkontált Q-értékéből áll össze. A régi Q-értéket ennek irányába mozdítja el, kis lépésekben. Így az értékek fokozatosan a helyes szint felé közelítenek, anélkül, hogy előre ismernénk a környezet szabályait. A felfedezés itt is fontos, mert csak akkor tanuljuk meg egy cselekvés valódi értékét, ha eleget próbáljuk ki.


  1. Cselekvés választásaAz ágens az aktuális Q-értékek alapján, epszilon-mohó módon lép.
  2. Jutalom és új állapotA környezet visszaadja az azonnali jutalmat és a következő állapotot.
  3. Célérték számításaA jutalom és a következő állapot legjobb diszkontált Q-értéke adja az új becslést.
  4. A Q-érték elmozdításaA régi becslést kis lépéssel a célérték felé toljuk, és a kör folytatódik.

Ahol a táblázat elfogy

A Q-táblázat addig működik jól, amíg az állapotok és cselekvések száma kicsi. A valós feladatoknál azonban az állapottér hatalmas lehet. Ha a bemenet egy játék képernyője, akkor gyakorlatilag végtelen sok különböző képpont-kombináció fordulhat elő, ezeket lehetetlen táblázatba írni. Ilyenkor függvényközelítésre van szükség. A Q-értéket nem tároljuk, hanem egy modellel becsüljük meg. Itt lép be a mély tanulás, és megszületik a mély Q-háló.


Képpontok játékképernyő Neurális háló Q-érték közelítő Q(fel) Q(le) Q(bal) Q(jobb) A háló a képből minden lehetséges cselekvéshez egy Q-értéket ad, a legmagasabb a választott lépés.
A mély Q-háló a nyers képet dolgozza fel, és minden lehetséges cselekvéshez becsül egy Q-értéket. A táblázatot itt egy neurális háló váltja fel.

A DQN és az Atari

A mély Q-hálót a DeepMind kutatói mutatták be egy 2015-ös, a Nature folyóiratban megjelent tanulmányban, Human-level control through deep reinforcement learning címmel. A rendszer Atari 2600 játékokat tanult meg, kizárólag a képernyő képpontjaiból és a pontszámból, ugyanazzal a hálóarchitektúrával és beállításokkal minden játéknál. Két kulcsötlet tette stabillá a tanulást. Az egyik a tapasztalatvisszajátszás (experience replay), amely a korábbi tapasztalatokat egy tárolóban gyűjti, és véletlenszerűen mintavételez belőlük, így csökkentve az egymás utáni lépések erős összefüggését. A másik a célháló (target network), a Q-háló egy lassabban frissülő másolata, amely a tanulási célt kiszámítja, és megakadályozza, hogy a becslés önmagát kergesse.


43

Emberi szintű játék képpontokból. A DeepMind rendszere a korábbi módszereket a vizsgált játékok közül negyvenháromban felülmúlta, és a játékok több mint felében elérte a professzionális emberi játékos pontszámának legalább háromnegyedét. Mindezt előzetes játékspecifikus tudás nélkül tanulta meg. Forrás, Mnih és társai, Nature, 2015.


Mit érdemes megjegyezni

A Q-tanulás alapötlete a cselekvésértékek tanulása próbálgatással, az időbeli különbség elvén. A táblázatos változat kis feladatoknál elegáns, de nem skálázódik. A mély Q-háló ezt oldja fel azzal, hogy a Q-értéket neurális hálóval becsüli, és a tapasztalatvisszajátszás meg a célháló teszi stabillá a tanulást. A Q-tanulás értékalapú megközelítés, mert az értékekből vezeti le a politikát. A következő leckében egy másik családot nézünk meg, ahol az ágens közvetlenül a politikáját javítja.


← Előző lecke Következő lecke →

Workshop

AI Transformation Day

Egésznapos, vezetőknek szóló program. Feltérképezzük, hol tart a szervezet, mi az első reális lépés, és milyen belső feltételek szükségesek a sikerhez. A nap végén konkrét, prioritizált cselekvési lista.

Érdekel a program →