Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele TD(0): Arvotoiminnon Estimointi | Aikaisen Eron Oppiminen
Vahvistusoppimisen Perusteet Pythonilla

TD(0): Arvotoiminnon Estimointi

Pyyhkäise näyttääksesi valikon

TD-oppimisen yksinkertaisin versio on nimeltään TD(0). Se päivittää tilan arvon välittömän palkkion ja seuraavan tilan arvioidun arvon perusteella. Kyseessä on yhden askeleen TD-menetelmä.

Päivityssääntö

Kun tila on StS_t, palkkio Rt+1R_{t+1} ja seuraava tila St+1S_{t+1}, päivityssääntö on seuraava:

V(St)V(St)+α(Rt+1+γV(St+1)V(St))V(S_t) \gets V(S_t) + \alpha\Bigl(R_{t+1}+\gamma V(S_{t+1}) - V(S_t)\Bigr)

missä

  • α\alpha on oppimisnopeus eli askelkoko;
  • δt=Rt+1+γV(St+1)V(St)\delta_t = R_{t+1}+\gamma V(S_{t+1}) - V(S_t) on TD-virhe.

Intuitio

Tilaarvofunktio vπv_\pi voidaan määritellä ja laajentaa seuraavasti:

vπ(s)=Eπ[GtSt=s]=Eπ[Rt+γGt+1St=s]=Eπ[Rt+γvπ(St+1)St=s]\def\E{\operatorname{\mathbb{E}}} \begin{aligned} v_\pi(s) &= \E_\pi[G_t | S_t = s] \\ &= \E_\pi[R_t + \gamma G_{t+1} | S_t = s] \\ &= \E_\pi[R_t + \gamma v_\pi(S_{t+1}) | S_t = s] \end{aligned}

Tämä antaa δt\delta_t:n ensimmäisen osan — koetun tuoton Rt+1+γV(St+1)R_{t+1} + \gamma V(S_{t+1}). Ja δt\delta_t:n toinen osa on odotettu tuotto V(St)V(S_t). TD-virhe δt\delta_t on siis havaittavissa oleva ero sen välillä, mitä todella tapahtui ja mitä aiemmin uskottiin tapahtuvan. Päivityssääntö säätää aiempaa arviota hieman jokaisella askeleella, tuoden sen lähemmäs totuutta.

TD(0) vs Monte Carlo -estimaatio

Sekä TD(0) että Monte Carlo -estimaatio käyttävät otantakokemusta tilan arvofunktion vπ(s)v_\pi(s) arvioimiseen politiikalle π\pi. Tavanomaisissa konvergenssiehdoissa molemmat lähestyvät todellista vπ(s)v_\pi(s), kun jokaisen tilan käyntikertojen määrä lähestyy ääretöntä. Käytännössä kuitenkin käytettävissä on vain rajallinen määrä dataa, ja nämä kaksi menetelmää eroavat merkittävästi siinä, miten ne hyödyntävät tätä dataa ja kuinka nopeasti ne oppivat.

Harha-vaihtelu -tasapaino

Harha–vaihtelu-yhdistelmät

Harha–vaihtelu-kauppasuhden näkökulmasta:

Monte Carlo -estimaatio odottaa jakson päättymistä ja käyttää sitten koko tuottoa arvojen päivittämiseen. Tämä tuottaa harhattomia estimaatteja — tuotot heijastavat todellista jakaumaa — mutta ne voivat vaihdella voimakkaasti, erityisesti pitkissä tai hyvin stokastisissa tehtävissä. Korkea vaihtelu tarkoittaa, että tarvitaan useita jaksoja kohinan tasaamiseksi ja vakaiden arvoestimaattien saamiseksi.

TD(0) käyttää bootstrap-menetelmää yhdistämällä jokaisen yhden askeleen palkinnon seuraavan tilan nykyiseen arvoestimaattiin. Tämä tuo mukanaan harhaa — varhaiset päivitykset perustuvat epätäydellisiin arvioihin — mutta pitää vaihtelun pienenä, koska jokainen päivitys perustuu pieneen, inkrementaaliseen virheeseen. Pienempi vaihtelu mahdollistaa TD(0):n levittää palkkiotietoa tilatilassa nopeammin, vaikka alkuperäinen harha voi hidastaa konvergenssia.

Datan oppiminen vs mallin oppiminen

Eri lähestymistavat arvon estimointiin

Toinen tapa tarkastella näitä kahta menetelmää on analysoida, mitä kumpikin niistä todella oppii:

Monte Carlo -estimaatio oppii suoraan havaituista tuotoista, sovittaen arvionsa niihin tiettyihin episodeihin, jotka se on nähnyt. Tämä tarkoittaa, että se minimoi virheen näillä harjoittelupoluilla, mutta koska se ei koskaan rakenna eksplisiittistä käsitystä siitä, miten tilat johtavat toisiinsa, se voi olla heikompi yleistämään uusiin tai hieman erilaisiin tilanteisiin.

TD(0) puolestaan hyödyntää jokaisen yhden askeleen siirtymän, yhdistäen välittömän palkkion seuraavan tilan arvion kanssa. Näin se käytännössä tallentaa tilojen väliset suhteet — implisiittinen malli ympäristön dynamiikasta. Tällainen mallimainen ymmärrys mahdollistaa TD(0):lle paremman yleistämisen näkemättömiin siirtymiin, mikä usein johtaa tarkempiin arvoestimaatteihin uudella datalla.

Pseudokoodi

TD(0) tilan arvon estimoinnin pseudokoodi
question mark

Miten kuvailisit TD(0):aa harhan ja varianssin näkökulmasta?

Valitse kaikki oikeat vastaukset

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 5. Luku 2

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 5. Luku 2
some-alt