Lyhyt esittely vahvistamisen oppimisesta

Vahvistusoppiminen on koneoppimisen osa, jossa agentti oppii käyttäytymään ympäristössä suorittamalla tiettyjä toimintoja ja tarkkailemalla noista toiminnoista saamiaan hyötyjä / tuloksia.

Robotics Arm Manipulationin, Google Deep Mindin ja ammattimaisen Alpha Go Player -pelaajan sekä viime aikoina OpenAI-tiimin ammattimaisen DOTA-pelaajan edistyessä vahvistuksen oppimisen kenttä on räjähtänyt viime vuosina.

Tässä artikkelissa keskustelemme:

  • Mikä on oppimisen vahvistaminen ja sen hienoinen, kuten palkinnot, tehtävät jne
  • 3 luokittelua vahvistusoppimisesta

Mikä on vahvistusoppiminen?

Aloitetaan selitys esimerkillä - sanotaan, että on pieni vauva, joka alkaa oppia kävelemään.

Jaetaan tämä esimerkki kahteen osaan:

1. Vauva alkaa kävellä ja saavuttaa onnistuneesti sohvan

Koska sohva on lopullinen tavoite, vauva ja vanhemmat ovat onnellisia.

Joten vauva on onnellinen ja saa arvostusta vanhemmiltaan. Se on positiivinen - vauva tuntuu hyvältä (Positiivinen palkkio + n).

2. Vauva alkaa kävellä ja putoaa jonkin esteen takia ja mustelmia.

Ai! Vauva sattuu ja on kivussa. Se on negatiivinen - vauva itkee (Negative Reward -n).

Sillä tavalla me ihmiset oppimme - jäljen ja erehdyksen avulla. Vahvistusoppiminen on käsitteellisesti sama, mutta se on laskennallinen lähestymistapa oppimiseen tekojen avulla.

Vahvistusoppiminen

Oletetaan, että vahvistuksen oppimisagenttimme oppii soittamaan Marioa esimerkkinä. Vahvistusoppimisprosessi voidaan mallintaa iteratiiviseksi silmukaksi, joka toimii seuraavasti:

  • RL-agentti saa tilan Sympäristöstä eli Mario
  • Perustuen että valtion S⁰, RL agentti vie toiminto A ⁰, sano - meidän RL agentti siirtyy oikealle. Aluksi tämä on satunnaista.
  • Ympäristö on nyt uudessa tilassa (Marion tai pelimoottorin uusi kehys)
  • Ympäristö antaa jonkin verran palkintoa R1 RL-agentille. Se antaa todennäköisesti +1, koska agentti ei ole vielä kuollut.

Tämä RL-silmukka jatkuu, kunnes olemme kuolleita tai saavumme määränpäähän, ja se tuottaa jatkuvasti sarjan tilaa, toimintaa ja palkkiota.

RL-agenttimme perustavoite on maksimoida palkkio.

Palkinnon maksimointi

RL-agentti toimii periaatteessa palkkion maksimoinnin hypoteesilla. Siksi vahvistusoppimisella tulisi olla parhaat mahdolliset toimet palkkion maksimoimiseksi.

Kumulatiiviset palkkiot kullakin ajanjaksolla vastaavalla toiminnolla kirjoitetaan seuraavasti:

Asiat eivät kuitenkaan toimi tällä tavalla, kun kaikki edut lasketaan yhteen.

Ymmärretään tämä yksityiskohtaisesti:

Sanotaan, että RL-agenttimme (robottihiiri) on sokkelossa, joka sisältää juustoa, sähköiskuja ja kissoja . Tavoitteena on syödä enimmäismäärä juustoa ennen kissan syömistä tai sähköiskun saamista.

Vaikuttaa ilmeiseltä syödä juustoa lähellä meitä sen sijaan, että juusto olisi lähellä kissaa tai sähköiskua, koska mitä lähempänä sähköiskua tai kissaa olemme, kuolleisuuden vaara kasvaa. Tämän seurauksena kissan lähellä oleva palkkio tai sähköisku, vaikka se olisi isompi (enemmän juustoa), alennetaan. Tämä tapahtuu epävarmuustekijän takia.

Se on järkevää, eikö?

Palkintojen alennus toimii näin:

Määritämme diskonttauskorkon nimeltä gamma . Sen tulisi olla välillä 0–1. Mitä suurempi gamma, sitä pienempi alennus ja päinvastoin.

Joten odotettavissa olevat (diskontatut) kumulatiiviset palkkiomme ovat:

Tehtävät ja niiden tyypit vahvistusoppimisessa

Tehtävänä on yksittäinen instanssi vahvistusoppiminen ongelma. Meillä on periaatteessa kahdenlaisia ​​tehtäviä: jatkuva ja jaksollinen.

Jatkuvat tehtävät

Tällaisia ​​tehtäviä jatketaan ikuisesti. Esimerkiksi RL-agentti, joka tekee automatisoitua Forex- / osakekauppaa.

Agentin on tällöin opittava valitsemaan parhaat toimet ja samanaikaisesti vuorovaikutuksessa ympäristön kanssa. Lähtö- ja lopputilaa ei ole.

RL-agentin on jatkettava toimintaa, kunnes päätämme pysäyttää sen manuaalisesti.

Jaksollinen tehtävä

Tässä tapauksessa meillä on lähtö- ja loppupiste, jota kutsutaan päätelaitteeksi. Tämä luo jakson : luettelo valtioista (S), Toiminnot (A), Palkinnot (R).

SilläEsimerkiksi , pelaa counter strike , jossa ampua vastustajia tai saamme tappoivat them.We ampua ne kaikki ja täydellinen episodi tai me tapetaan. Joten jaksojen loppuun saattamiseksi on vain kaksi tapausta.

Tutkimus- ja hyödyntämiskauppa

Vahvistusoppimisessa on tärkeä käsitys etsinnän ja hyödyntämisen kaupasta. Etsinnän tarkoituksena on löytää enemmän tietoa ympäristöstä, kun taas hyödyntäminen hyödyntää jo tunnettua tietoa hyödyn maksimoimiseksi.

Todellinen elämä -esimerkki: Oletetaan, että käyt joka päivä samassa ravintolassa. Periaatteessa hyödynnät. Mutta toisaalta, jos etsit uutta ravintolaa joka kerta ennen kuin menet mihinkään niistä, se on etsintä . Tutkimus on erittäin tärkeää etsittäessä tulevia palkkioita, jotka saattavat olla suurempia kuin lähellä olevat palkkiot.

Yllä olevassa pelissä robottihiirellämme voi olla hyvä määrä pientä juustoa (kumpikin +0,5). Mutta sokkelon yläosassa on suuri määrä juustoa (+100). Joten jos keskitymme vain lähimpään palkkioon, robottihiiremme ei koskaan saavuta suurta juuston määrää - se vain hyödyntää.

Mutta jos robottihiiri tekee vähän etsintää, se voi löytää suuren palkkion eli suuren juuston.

Tämä on etsintä- ja hyödyntämisvaihdon peruskäsite .

Lähestymistavat vahvistamiseen

Ymmärretään nyt lähestymistavat vahvistusoppimisongelmien ratkaisemiseen. Periaatteessa on 3 lähestymistapaa, mutta tässä artikkelissa käytämme vain kahta suurta lähestymistapaa:

1. Politiikkaan perustuva lähestymistapa

Politiikkaperusteisessa vahvistusoppimisessa meillä on käytäntö, joka meidän on optimoitava. Politiikassa määritellään periaatteessa agentin käyttäytyminen:

Opimme politiikkatoiminnon, joka auttaa meitä kartoittamaan jokaisen valtion parhaisiin toimiin.

Syventymällä politiikkoihin jaamme käytännöt edelleen kahteen tyyppiin:

  • Deterministinen : politiikka tietyssä tilassa (tiloissa) palauttaa aina saman toiminnon (a). Se tarkoittaa, että se on ennalta kartoitettu muodossa S = (s) ➡ A = (a).
  • Stokastinen : Se antaa todennäköisyyden jakauman eri toiminnoille . eli stokastinen politiikka ➡ p (A = a | S = s)

2. Arvopohjainen

Arvopohjaisessa RL: ssä agentin tavoitteena on optimoida arvofunktio V (s), joka määritellään seuraavastitoiminto, joka kertoo meille odotettavissa olevan enimmäispalkkion, jonka agentti saa jokaisessa osavaltiossa.

Kunkin valtion arvo on palkkion kokonaismäärä, jonka RL-agentti voi odottaa keräävänsä tulevaisuudessa tietystä osavaltiosta.

Agentti käyttää yllä olevaa arvofunktiota valitaksesi tilan, joka valitaan kussakin vaiheessa. Agentti ottaa aina valtion, jolla on suurin arvo.

Alla olevassa esimerkissä näemme, että jokaisessa vaiheessa otamme suurimman arvon tavoitteen saavuttamiseksi: 1 3 4 ➡ 6 jne.

Pong-peli - intuitiivinen tapaustutkimus

Otetaanpa tosielämän esimerkki pongin pelaamisesta. Tämä tapaustutkimus vain esittelee sinulle intuition kuinka vahvistusoppiminen toimii . Emme pääse yksityiskohtiin tässä esimerkissä, mutta seuraavassa artikkelissa me varmasti kaivamme syvemmälle.

Oletetaan, että opetamme RL-agenttimme pelaamaan Pong-peliä.

Pohjimmiltaan syötämme pelikehyksissä (uudet tilat) RL-algoritmiin ja annamme algoritmin päättää, mihin mennä ylös tai alas. Tämän verkon sanotaan olevan politiikkaverkosto, josta keskustelemme seuraavassa artikkelissamme.

Tämän algoritmin kouluttamiseen käytettyä menetelmää kutsutaan käytännön gradientiksi . Syötämme satunnaisia ​​kehyksiä pelimoottorista, ja algoritmi tuottaa satunnaisen lähdön, joka antaa palkkion, ja tämä syötetään takaisin algoritmiin / verkkoon. Tämä on iteratiivinen prosessi.

Keskustelemme politiikan kaltevuudesta seuraavassa artikkelissa tarkemmin.

Pelin yhteydessä tulostaulu toimii palkkiona tai palautteena agentille. Aina kun agentti pyrkii saamaan +1, se ymmärtää, että sen tekemä toiminta oli tarpeeksi hyvä tuossa tilassa.

Nyt koulutamme agentin pelaamaan pongia. Ensinnäkin syötämme joukon pelikehyksiä (tiloja) verkkoon / algoritmiin ja annamme algoritmin päättää toiminnasta. Agentin alkutoiminnot ovat ilmeisesti huonoja, mutta agenttimme voi joskus olla onni panemaan kohta ja tämä voi olla satunnainen tapahtuma. Mutta tämän onnekkaan satunnaisen tapahtuman vuoksi se saa palkkion, mikä auttaa agenttia ymmärtämään, että toimintosarja oli tarpeeksi hyvä palkinnon saamiseksi.

Joten tulevaisuudessa agentti todennäköisesti toteuttaa toimet, jotka saavat palkkion toiminnasta, joka ei. Intuitiivisesti RL-agentti nojaa pelaamaan peliä.

Rajoitukset

Agentin harjoittelun aikana, kun agentti menettää jakson, algoritmi hylkää tai pienentää todennäköisyyttä tehdä kaikki tässä jaksossa esiintyneet toimintosarjat.

Mutta jos agentti toimi hyvin jakson alusta alkaen, mutta pelkästään kahden viimeisen toiminnan takia agentti hävisi pelin, ei ole järkevää hylätä kaikkia toimintoja. Pikemminkin on järkevää, jos poistamme vain kaksi viimeistä menetystä johtanutta toimintoa.

Tätä kutsutaan luotto-ongelmaksi. Tämä ongelma johtuu harvasta palkkioasetuksesta. Toisin sanoen sen sijaan, että saisimme palkkion jokaisessa vaiheessa, saamme palkkion jakson lopussa. Agentin on siis opittava, mitkä toimet olivat oikein ja mitkä todelliset toimet johtivat pelin häviämiseen.

Joten tämän harvinaisen palkitsemisasetuksen vuoksi RL: ssä algoritmi on erittäin otantatehoton. Tämä tarkoittaa, että on syötettävä valtavia koulutusesimerkkejä agentin kouluttamiseksi. Mutta tosiasia on, että harvat palkkioasetukset epäonnistuvat monissa olosuhteissa ympäristön monimutkaisuuden vuoksi.

Joten on jotain, jota kutsutaan palkintojen muotoiluksi, jota käytetään tämän ratkaisemiseksi. Mutta palkkojen muokkaaminen kärsii jälleen rajoituksista, koska jokaiselle pelille on suunniteltava mukautettu palkkio-toiminto.

Loppuhuomautus

Nykyään vahvistusoppiminen on jännittävä opiskeluala. Alalla on tapahtunut merkittävää kehitystä, joista yksi on syvällinen vahvistava oppiminen.

Tulemme käsittelemään syvällistä vahvistamista oppimista tulevissa artikkeleissamme. Tämä artikkeli kattaa paljon käsitteitä. Käytä omaa aikaa ymmärtääksesi vahvistamisen oppimisen peruskäsitteet.

Mutta haluaisin mainita, että vahvistaminen ei ole salainen musta laatikko. Riippumatta edistymisistä, joita näemme tänään vahvistavan oppimisen alalla, ovat seurausta kirkkaasta mielestä, joka työskentelee päivällä ja yöllä tietyissä sovelluksissa.

Seuraavan kerran työskentelemme Q-oppimisagentin kanssa ja käsittelemme myös joitain perusasioita vahvistusoppimisessa.

Kunnes sitten nauttia tekoälystä?

Tärkeää : Tämä artikkeli on Deep Reinforcement Learning -sarjan ensimmäinen osa. The Complete -sarja on saatavana sekä Median tekstilukuisilla että YouTube-kanavani videon selittävällä lomakkeella.

Vahvistusoppimisen syvällisempää ja intuitiivisempaa ymmärtämistä varten suosittelen, että katsot alla olevan videon:

Tilaa YouTube-kanavani Lisää AI-videoita: ADL .

Jos pidit artikkelistani, napsauta ? a s Minulla on edelleen motivaatio kirjoittaa tavaraa ja seuraa minua Medium &

Jos sinulla on kysyttävää, ilmoita siitä minulle alla olevassa kommentissa tai Twitterissä . Tilaa YouTube-kanavani, niin saat lisää teknisiä videoita: ADL .