Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Inkrementaaliset Toteutukset | Monte Carlo -menetelmät
Vahvistusoppimisen Perusteet

bookInkrementaaliset Toteutukset

Jokaisen tuoton tallentaminen jokaista tila-toiminto-paria kohden voi nopeasti kuluttaa muistin loppuun ja merkittävästi lisätä laskenta-aikaa — erityisesti suurissa ympäristöissä. Tämä rajoitus koskee sekä on-policy- että off-policy-Monte Carlo -ohjausalgoritmeja. Tämän ratkaisemiseksi käytetään inkrementaalisia laskentamenetelmiä, jotka ovat samankaltaisia kuin monikätisten bandiittialgoritmien menetelmät. Näiden menetelmien avulla arviot voidaan päivittää välittömästi, ilman että koko tuottohistoriaa tarvitsee säilyttää.

On-policy-Monte Carlo -ohjaus

On-policy-menetelmässä päivitysstrategia muistuttaa MAB-algoritmien strategiaa:

Q(s,a)Q(s,a)+α(GQ(s,a))Q(s, a) \gets Q(s, a) + \alpha (G - Q(s, a))

missä α=1N(s,a)\displaystyle \alpha = \frac{1}{N(s, a)} keskiarvon estimaattia varten. Ainoat tallennettavat arvot ovat nykyiset toimintoarvioiden estimaatit Q(s,a)Q(s, a) sekä tila-toiminto-parin (s,a)(s, a) käyntikertojen määrä N(s,a)N(s, a).

Pseudokoodi

Off-policy Monte Carlo -ohjaus

Off-policy -menetelmässä tavallisella tärkeyspainotuksella kaikki on samanlaista kuin on-policy -menetelmässä.

Mielenkiintoisempi tilanne syntyy painotetulla tärkeyspainotuksella. Yhtälö näyttää samalta:

Q(s,a)Q(s,a)+α(GQ(s,a))Q(s, a) \gets Q(s, a) + \alpha (G - Q(s, a))

mutta α=1N(s,a)\displaystyle \alpha = \frac{1}{N(s, a)} ei voi käyttää, koska:

  1. Jokainen tuotto painotetaan ρ\rho:lla;
  2. Lopullinen summa jaetaan ei N(s,a)N(s, a):lla, vaan ρ(s,a)\sum \rho(s, a):lla.

Tässä tapauksessa käytettävä α\alpha on yhtä kuin WC(s,a)\displaystyle \frac{W}{C(s,a)}, missä:

  • WW on nykyisen trajektorian ρ\rho;
  • C(s,a)C(s, a) on yhtä kuin ρ(s,a)\sum \rho(s, a).

Ja joka kerta kun tila-toimintapari (s,a)(s, a) esiintyy, nykyisen trajektorian ρ\rho lisätään C(s,a)C(s, a):aan:

C(s,a)C(s,a)+WC(s, a) \gets C(s, a) + W

Pseudokoodi

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 7

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

Awesome!

Completion rate improved to 2.7

bookInkrementaaliset Toteutukset

Pyyhkäise näyttääksesi valikon

Jokaisen tuoton tallentaminen jokaista tila-toiminto-paria kohden voi nopeasti kuluttaa muistin loppuun ja merkittävästi lisätä laskenta-aikaa — erityisesti suurissa ympäristöissä. Tämä rajoitus koskee sekä on-policy- että off-policy-Monte Carlo -ohjausalgoritmeja. Tämän ratkaisemiseksi käytetään inkrementaalisia laskentamenetelmiä, jotka ovat samankaltaisia kuin monikätisten bandiittialgoritmien menetelmät. Näiden menetelmien avulla arviot voidaan päivittää välittömästi, ilman että koko tuottohistoriaa tarvitsee säilyttää.

On-policy-Monte Carlo -ohjaus

On-policy-menetelmässä päivitysstrategia muistuttaa MAB-algoritmien strategiaa:

Q(s,a)Q(s,a)+α(GQ(s,a))Q(s, a) \gets Q(s, a) + \alpha (G - Q(s, a))

missä α=1N(s,a)\displaystyle \alpha = \frac{1}{N(s, a)} keskiarvon estimaattia varten. Ainoat tallennettavat arvot ovat nykyiset toimintoarvioiden estimaatit Q(s,a)Q(s, a) sekä tila-toiminto-parin (s,a)(s, a) käyntikertojen määrä N(s,a)N(s, a).

Pseudokoodi

Off-policy Monte Carlo -ohjaus

Off-policy -menetelmässä tavallisella tärkeyspainotuksella kaikki on samanlaista kuin on-policy -menetelmässä.

Mielenkiintoisempi tilanne syntyy painotetulla tärkeyspainotuksella. Yhtälö näyttää samalta:

Q(s,a)Q(s,a)+α(GQ(s,a))Q(s, a) \gets Q(s, a) + \alpha (G - Q(s, a))

mutta α=1N(s,a)\displaystyle \alpha = \frac{1}{N(s, a)} ei voi käyttää, koska:

  1. Jokainen tuotto painotetaan ρ\rho:lla;
  2. Lopullinen summa jaetaan ei N(s,a)N(s, a):lla, vaan ρ(s,a)\sum \rho(s, a):lla.

Tässä tapauksessa käytettävä α\alpha on yhtä kuin WC(s,a)\displaystyle \frac{W}{C(s,a)}, missä:

  • WW on nykyisen trajektorian ρ\rho;
  • C(s,a)C(s, a) on yhtä kuin ρ(s,a)\sum \rho(s, a).

Ja joka kerta kun tila-toimintapari (s,a)(s, a) esiintyy, nykyisen trajektorian ρ\rho lisätään C(s,a)C(s, a):aan:

C(s,a)C(s,a)+WC(s, a) \gets C(s, a) + W

Pseudokoodi

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 7
some-alt