Off-Policy Monte Carlo -ohjaus
Siinä missä on-policy-menetelmät oppivat seuraamalla ja parantamalla samaa politiikkaa, off-policy-menetelmät tuovat mukanaan uuden näkökulman: ne oppivat yhdestä politiikasta (kohdepolitiikka) samalla kun ne seuraavat toista (käyttäytymispolitiikka). Tämä erottelu on tehokas — se mahdollistaa kohdepolitiikan arvioinnin tai parantamisen ilman, että sitä tarvitsee noudattaa tiedonkeruun aikana.
Vertauskuva
Palataanpa jäätelökauppaan edellisestä luvusta. Sinä ja ystäväsi astutte sisään, ja jälleen tarjolla ovat kolme tuttua makua: suklaa, vanilja ja mansikka. Suklaa on oma suosikkisi, ja ensimmäinen ajatuksesi on tilata sitä. Mutta tämä kauppa on sinulle uusi, etkä ole aivan varma, onko suklaan valinta oikea. Onneksi ystäväsi on tunnettu jäätelönystävä, joka on käynyt lähes kaikissa kaupungin jäätelöbaareissa. Kysyt hänen mielipidettään. "Suklaa täällä on ihan ok," hän sanoo, "mutta usko pois — mansikka on poikkeuksellisen hyvää." Joten hänen kokemuksensa perusteella päätät jättää tavanomaisen valintasi väliin ja valita mansikan.
Tämä päätös — luottaa jonkun toisen kokemukseen oman valinnan ohjaamiseksi — on off-policy-menetelmien ydin. Pyrit parantamaan päätöksentekoasi käyttämällä dataa, joka on kerätty jonkun toisen käyttäytymisen perusteella. Kyseessä on edelleen tutkiminen, mutta sitä ohjaa ulkoinen kokemus oman sijaan.
Tärkeyspainotus
Koska agentti seuraa käyttäytymispolitiikkaa jaksojen muodostamisen aikana, meidän täytyy huomioida ero, joka syntyy siitä, mitä käyttäytymispolitiikka tuottaa ja mitä kohdepolitiikka tuottaisi. Tässä kohtaa tärkeyspainotus astuu kuvaan.
Tärkeyden painottaminen (importance sampling) tarjoaa tavan säätää käyttäytymispolitiikan (behavior policy) alla havaittuja tuottoja niin, että ne ovat kelvollisia arvioita kohdepolitiikalle (target policy).
Tarkastellaan polkua, joka alkaa tietyssä tilassa St ja seuraa tiettyä politiikkaa π, kunnes episodi päättyy ajanhetkellä T. Erityisesti havaitsemme:
At,St+1,At+1,...,STMikä on tämän polun todennäköisyys politiikan π alla? Se riippuu sekä politiikan toimintatodennäköisyyksistä että ympäristön siirtymädynamiikasta:
p(trajectory∣π)=k=t∏T−1π(Ak∣Sk)p(Sk+1∣Sk,Ak)Oletetaan nyt, että polku onkin itse asiassa tuotettu eri politiikalla — käyttäytymispolitiikalla b. Jotta voimme käyttää tätä polkua odotusten arvioimiseen kohdepolitiikan π alla, meidän täytyy huomioida, kuinka paljon todennäköisempi tai epätodennäköisempi tämä toimintojen sarja olisi ollut π:n alla verrattuna b:hen.
Tässä kohtaa tärkeyden painotussuhde (importance sampling ratio) astuu kuvaan. Se määritellään polun suhteellisena todennäköisyytenä kahden politiikan alla:
ρ=p(trajectory∣b)p(trajectory∣π)=k=t∏T−1b(Ak∣Sk)p(Sk+1∣Sk,Ak)π(Ak∣Sk)p(Sk+1∣Sk,Ak)=k=t∏T−1b(Ak∣Sk)π(Ak∣Sk)Lopulta siirtymätodennäköisyydet kumoutuivat, koska molemmat politiikat toimivat samassa ympäristössä, ja ρ:n arvo riippuu vain politiikoista, ei ympäristöstä.
Miksi tämä on tärkeää
Suhde ρ kertoo, miten käyttäytymispolitiikan alla havaittu tuotto Gt painotetaan uudelleen, jotta siitä saadaan harhaton arvio siitä, millainen tuotto olisi ollut kohdepolitiikan alla:
Eπ[Gt]=Eb[ρ⋅Gt]Toisin sanoen, vaikka data kerättiin käyttäen b:tä, voimme silti arvioida odotetut tuotot π:n alla — edellyttäen, että b antaa nollasta poikkeavan todennäköisyyden jokaiselle toiminnolle, jonka π saattaa valita (peittävyysoletus, assumption of coverage).
Käytännön näkökohdat
Tärkeyspainotuksen varianssi
Tärkeyspainotuksen (importance sampling) sisällyttäminen on käsitteellisesti suoraviivaista. Arvioitua toimintojen arvofunktiota q(s,a) säädetään painottamalla jokaista havaittua tuottoa vastaavalla tärkeyspainotuksen kertoimella. Yksinkertaisin muotoilu näyttää tältä:
q(s,a)=N(s,a)∑i=0N(s,a)ρi(s,a)⋅Returnsi(s,a)missä:
- ρi(s,a) on tärkeyspainotuksen kerroin i:nnessä trajektoriassa alkaen tilasta (s,a);
- Returnsi(s,a) on kyseisen trajektorian tuotto;
- N(s,a) on niiden kertojen määrä, jolloin (s,a) on vierailtu.
Tätä kutsutaan tavalliseksi tärkeyspainotukseksi (ordinary importance sampling). Se antaa harhattoman arvion q(s,a):sta, mutta voi kärsiä hyvin suuresta varianssista, erityisesti silloin kun käyttäytymis- ja kohdepolitiikat eroavat merkittävästi toisistaan.
Varianssiongelman lieventämiseksi voidaan käyttää vakaampaa vaihtoehtoa: painotettu tärkeyspainotus (weighted importance sampling). Tässä menetelmässä tärkeyspainot normalisoidaan, mikä vähentää suurten kertoimien vaikutusta ja johtaa vakaampaan oppimiseen:
q(s,a)=∑i=0N(s,a)ρi(s,a)∑i=0N(s,a)ρi(s,a)⋅Returnsi(s,a)Tässä versiossa osoittaja on sama painotettu tuottojen summa, mutta nimittäjä on nyt tärkeyspainojen summa yksinkertaisen laskennan sijaan.
Tämä tekee arviosta harhaisen, mutta harha pienenee otoskoon kasvaessa. Käytännössä painotettu tärkeyspainotus on suositeltavaa huomattavasti pienemmän varianssin ja paremman numeerisen vakauden vuoksi.
Politiikat
Kuten on-policy-tapauksessa, käytetään ε-ahneita politiikkoja sekä kohdepolitiikalle π(a∣s) että käyttäytymispolitiikalle b(a∣s).
Aluksi saattaa vaikuttaa luonnolliselta tehdä kohdepolitiikasta täysin ahne — lopullinen tavoitteemme onhan ahne politiikka. Käytännössä tämä kuitenkin aiheuttaa merkittävän ongelman: jos jossain vaiheessa π(a∣s)=0 sille toiminnolle, jonka käyttäytymispolitiikka todella valitsi, tärkeyden painotussuhde ρ muuttuu nollaksi ja jakson loppuosa jätetään käytännössä huomiotta.
Käyttämällä pientä ε-arvoa (esim. ε=0,01) kohdepolitiikassa varmistetaan, että π(a∣s)>0 kaikille toiminnoille, joten ρ ei koskaan romahda nollaan kesken jakson. Kun koulutus on valmis, opittu ε-ahne politiikka voidaan helposti muuntaa täysin ahneeksi. Kuten on-policy-oppimisessa, käyttäytymispolitiikassa tulisi käyttää laskevaa ε-arvoa, mutta tällä kertaa pääasiassa numeerisen vakauden vuoksi, sillä ρ voi silti pudota nollaan kesken jakson, johtuen siitä, miten luvut esitetään tietokoneissa.
Pseudokoodi
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 2.7
Off-Policy Monte Carlo -ohjaus
Pyyhkäise näyttääksesi valikon
Siinä missä on-policy-menetelmät oppivat seuraamalla ja parantamalla samaa politiikkaa, off-policy-menetelmät tuovat mukanaan uuden näkökulman: ne oppivat yhdestä politiikasta (kohdepolitiikka) samalla kun ne seuraavat toista (käyttäytymispolitiikka). Tämä erottelu on tehokas — se mahdollistaa kohdepolitiikan arvioinnin tai parantamisen ilman, että sitä tarvitsee noudattaa tiedonkeruun aikana.
Vertauskuva
Palataanpa jäätelökauppaan edellisestä luvusta. Sinä ja ystäväsi astutte sisään, ja jälleen tarjolla ovat kolme tuttua makua: suklaa, vanilja ja mansikka. Suklaa on oma suosikkisi, ja ensimmäinen ajatuksesi on tilata sitä. Mutta tämä kauppa on sinulle uusi, etkä ole aivan varma, onko suklaan valinta oikea. Onneksi ystäväsi on tunnettu jäätelönystävä, joka on käynyt lähes kaikissa kaupungin jäätelöbaareissa. Kysyt hänen mielipidettään. "Suklaa täällä on ihan ok," hän sanoo, "mutta usko pois — mansikka on poikkeuksellisen hyvää." Joten hänen kokemuksensa perusteella päätät jättää tavanomaisen valintasi väliin ja valita mansikan.
Tämä päätös — luottaa jonkun toisen kokemukseen oman valinnan ohjaamiseksi — on off-policy-menetelmien ydin. Pyrit parantamaan päätöksentekoasi käyttämällä dataa, joka on kerätty jonkun toisen käyttäytymisen perusteella. Kyseessä on edelleen tutkiminen, mutta sitä ohjaa ulkoinen kokemus oman sijaan.
Tärkeyspainotus
Koska agentti seuraa käyttäytymispolitiikkaa jaksojen muodostamisen aikana, meidän täytyy huomioida ero, joka syntyy siitä, mitä käyttäytymispolitiikka tuottaa ja mitä kohdepolitiikka tuottaisi. Tässä kohtaa tärkeyspainotus astuu kuvaan.
Tärkeyden painottaminen (importance sampling) tarjoaa tavan säätää käyttäytymispolitiikan (behavior policy) alla havaittuja tuottoja niin, että ne ovat kelvollisia arvioita kohdepolitiikalle (target policy).
Tarkastellaan polkua, joka alkaa tietyssä tilassa St ja seuraa tiettyä politiikkaa π, kunnes episodi päättyy ajanhetkellä T. Erityisesti havaitsemme:
At,St+1,At+1,...,STMikä on tämän polun todennäköisyys politiikan π alla? Se riippuu sekä politiikan toimintatodennäköisyyksistä että ympäristön siirtymädynamiikasta:
p(trajectory∣π)=k=t∏T−1π(Ak∣Sk)p(Sk+1∣Sk,Ak)Oletetaan nyt, että polku onkin itse asiassa tuotettu eri politiikalla — käyttäytymispolitiikalla b. Jotta voimme käyttää tätä polkua odotusten arvioimiseen kohdepolitiikan π alla, meidän täytyy huomioida, kuinka paljon todennäköisempi tai epätodennäköisempi tämä toimintojen sarja olisi ollut π:n alla verrattuna b:hen.
Tässä kohtaa tärkeyden painotussuhde (importance sampling ratio) astuu kuvaan. Se määritellään polun suhteellisena todennäköisyytenä kahden politiikan alla:
ρ=p(trajectory∣b)p(trajectory∣π)=k=t∏T−1b(Ak∣Sk)p(Sk+1∣Sk,Ak)π(Ak∣Sk)p(Sk+1∣Sk,Ak)=k=t∏T−1b(Ak∣Sk)π(Ak∣Sk)Lopulta siirtymätodennäköisyydet kumoutuivat, koska molemmat politiikat toimivat samassa ympäristössä, ja ρ:n arvo riippuu vain politiikoista, ei ympäristöstä.
Miksi tämä on tärkeää
Suhde ρ kertoo, miten käyttäytymispolitiikan alla havaittu tuotto Gt painotetaan uudelleen, jotta siitä saadaan harhaton arvio siitä, millainen tuotto olisi ollut kohdepolitiikan alla:
Eπ[Gt]=Eb[ρ⋅Gt]Toisin sanoen, vaikka data kerättiin käyttäen b:tä, voimme silti arvioida odotetut tuotot π:n alla — edellyttäen, että b antaa nollasta poikkeavan todennäköisyyden jokaiselle toiminnolle, jonka π saattaa valita (peittävyysoletus, assumption of coverage).
Käytännön näkökohdat
Tärkeyspainotuksen varianssi
Tärkeyspainotuksen (importance sampling) sisällyttäminen on käsitteellisesti suoraviivaista. Arvioitua toimintojen arvofunktiota q(s,a) säädetään painottamalla jokaista havaittua tuottoa vastaavalla tärkeyspainotuksen kertoimella. Yksinkertaisin muotoilu näyttää tältä:
q(s,a)=N(s,a)∑i=0N(s,a)ρi(s,a)⋅Returnsi(s,a)missä:
- ρi(s,a) on tärkeyspainotuksen kerroin i:nnessä trajektoriassa alkaen tilasta (s,a);
- Returnsi(s,a) on kyseisen trajektorian tuotto;
- N(s,a) on niiden kertojen määrä, jolloin (s,a) on vierailtu.
Tätä kutsutaan tavalliseksi tärkeyspainotukseksi (ordinary importance sampling). Se antaa harhattoman arvion q(s,a):sta, mutta voi kärsiä hyvin suuresta varianssista, erityisesti silloin kun käyttäytymis- ja kohdepolitiikat eroavat merkittävästi toisistaan.
Varianssiongelman lieventämiseksi voidaan käyttää vakaampaa vaihtoehtoa: painotettu tärkeyspainotus (weighted importance sampling). Tässä menetelmässä tärkeyspainot normalisoidaan, mikä vähentää suurten kertoimien vaikutusta ja johtaa vakaampaan oppimiseen:
q(s,a)=∑i=0N(s,a)ρi(s,a)∑i=0N(s,a)ρi(s,a)⋅Returnsi(s,a)Tässä versiossa osoittaja on sama painotettu tuottojen summa, mutta nimittäjä on nyt tärkeyspainojen summa yksinkertaisen laskennan sijaan.
Tämä tekee arviosta harhaisen, mutta harha pienenee otoskoon kasvaessa. Käytännössä painotettu tärkeyspainotus on suositeltavaa huomattavasti pienemmän varianssin ja paremman numeerisen vakauden vuoksi.
Politiikat
Kuten on-policy-tapauksessa, käytetään ε-ahneita politiikkoja sekä kohdepolitiikalle π(a∣s) että käyttäytymispolitiikalle b(a∣s).
Aluksi saattaa vaikuttaa luonnolliselta tehdä kohdepolitiikasta täysin ahne — lopullinen tavoitteemme onhan ahne politiikka. Käytännössä tämä kuitenkin aiheuttaa merkittävän ongelman: jos jossain vaiheessa π(a∣s)=0 sille toiminnolle, jonka käyttäytymispolitiikka todella valitsi, tärkeyden painotussuhde ρ muuttuu nollaksi ja jakson loppuosa jätetään käytännössä huomiotta.
Käyttämällä pientä ε-arvoa (esim. ε=0,01) kohdepolitiikassa varmistetaan, että π(a∣s)>0 kaikille toiminnoille, joten ρ ei koskaan romahda nollaan kesken jakson. Kun koulutus on valmis, opittu ε-ahne politiikka voidaan helposti muuntaa täysin ahneeksi. Kuten on-policy-oppimisessa, käyttäytymispolitiikassa tulisi käyttää laskevaa ε-arvoa, mutta tällä kertaa pääasiassa numeerisen vakauden vuoksi, sillä ρ voi silti pudota nollaan kesken jakson, johtuen siitä, miten luvut esitetään tietokoneissa.
Pseudokoodi
Kiitos palautteestasi!