Course
vahvistava opettaminen
Sutton & Barto book
Modules (10)
-
Info
http://incompleteideas.net/sutton/book/the-book-2nd.html http://incompleteideas.net/sutton/book/bookdraft2017june19.pdf Skipatut kappaleet: 1.7 Early History of Reinforcement Learning
-
Chapterit
Chapter 1: The Reinforcement Learning Problem Ongelma selitetty, helppoja esimerkkejä. Osa 1: Chapter 2: Multi-armed Bandit Miten valita oikea valinta? Chapter 3: Finite Markov Decision Processes Markov prossesseissa ulostulon oletetaan olevan HiEMAN satunnainen Chapter 4: Dynamic Programming Perusteet iteraatioille yms. Chapter 5: Monte Carlo Methods Monte Carlo metodit käyttää useata random sämpläystä ja valitsee parhaan (neuroverkon satunnaiset painoarvot??) Chapter 6: Temporal-Difference Learning Ennustavaa osaamista Chapter 7: Multi-step Bootstrapping ???? Chapter 8: Planning and Learning with Tabular Methods Usean variablen funtion minimikohtien löytämiseen
-
Chapter 1: The Reinforcement Learning Problem
Reinforcement learning = luonnollista oppimista (ympäristöstä) tietokoneille MDP (Markov Decision Process) kaavan 3 tekijää: tunnetila, tekeminen ja päämäärä. Palkinnon maksimointi on eri asia kuin piilotetun rakenteen löytäminen. Näin koneoppiminen jakautuu kolmeen osa-alueeseen, ohjattu, ei-ohjattu ja vahvistettu. Exploit & Explore, opitun hyödyntäminen ja uuden kokeilu, sopivan balanssin löytäminen on vaikeaa. Yleensä koneoppiminen on down-up (pienestä kuviosta isompaan), RL on up-down eli aloitetaan koko kuvasta ja opitaan pienet kuviot matkan varrella. Agentin ja ympäristön lisäksi 4 aihealuetta voi erotella: 1. Ohjekirja, policy: määrää sopivan actionin sopivaan tilaan. 2. Palkintosignaali: palkintosignaalin generoija on RIIPPUMATON agentin tilasta, siis se on täysin ulkopuolinen tekijä. Näin agentti ei voi muuttaa ongelmaa toiseksi maksimoidakseen palkinnon. 3. Arvofunktio: mikä on hyväksi pitkällä aikavälillä. Arvio palkinnosta tulevaisuudessa tila-jonon funktiona. Esim. tilan palkinto voi olla huono, mutta siitä seuraavien tilojen palkinto on iso joten arvofunktio on hyvä. Esim. salitreenaus tuntuu perseeltä, mutta lopputulos hyvä. Arvofunktion arvioiminen on ehkä haastavin ja tärkein osa hyvän RL algoritmin käytössä. 4. Ympäristön malli. Miten ympäristö käyttäytyy ja millaisessa tilassa se on. Käytetään suunnitteluun ja arvofunktion arvioimiseen. Kaikki RL mallit eivät käytä ympäristöä apuna, jolloin ne perustuvat pelkkään trial-and-error harjoitteluun. Arvofunktioiden käyttö ei ole välttämätöntä. Geneettiset algoritmit yms. eivät käytä. Ne keskittyvät agentin koko elinikään ja perustavat tekonsa siihen. Nämä tosin vaativat pienen tila-avaruuden, sillä muuten ne olisivat liian vaikeita opettaa (vielä...). Tämän kirjan puitteissa RL metodit eivät sisällä evoluutio menetelmiä. Joitain tila-gradientti-metodeihin perustuvia malleja kirjassa tosin on ja ne eivät perustu arvofunktioihin. Tic tac toe esimerkki, exploratory oppiminen on tärkeää.
-
Part 1: Tabular Solution Methods
Helppoja metodeja joihin löytyy lopullinen ratkaisu.
-
Chapter 2: Multi-armed bandits
Evaluoiva oppiminen: Riippuvainen tehdystä työstä. instruktoiva oppiminen: Riippumaton tehdystä työstä. k-armed bandit: k-kappaletta satunnaisjakaumia jotka pitää oppia mahdollisimman tehokkaasti (nopeasti) niin, että ulostulos maksimoituu. Parhaimman arvofunktion valintaa sanotaan ahneeksi valinnaksi, koska silloin hyödynnetään aiempaa tietoa siitä mikä on paras. Jos taas valitaan joku toinen, käytetään aika tutkimiseen joka taas parantaa tietoa jakaumista. Oikean teon valinta perustuu: tunnettuun arvojakaumaan, epätietouden määrään ja jäljellä olevien yritysten määrään. Yleensä ahnetta, mutta satunnaisesti tutkivaa, metodia kutsutaan ε-ahneeksi, jolloin todennäköisyydellä ε tutkitaan muita vaihtoehtoja. Suurella varianssilla (yleisessä tapauksessa) ε-ahne on hyödyllinen, koska pelkällä alkutiedolla ei yleensä pitkälle pötkitä. Update Rule: NewEstimate ← OldEstimate + StepSize*[Target − OldEstimate], missä StepSize n:nelle rewardille actionilla a on 1/n. Päivityssääntö toimii, jos 'bandiitti' ei muutu. Sen muuttuessa tulee kuitenkin uusimpia tuloksia painottaa eniten. Tällöin stepsize kannattaa asettaa vakioksi ts. learning rate α (0, 1] jolloin NewEstimate on painotettu keskiarvo. Alkuperäinen update rule missä StepSize = 1/n convergeentyy kun kaikki ratkaisut on käyty ja on näin helppo ratkaisu helppoihin ongelmiin, mutta vaikeiisin ongelmiin joihin ei ole helppoa käydä kaikki ratkaisuja lävitse käytetään α-parametriä, jolloin arvio ei ikinä supistu nollaan vaan aina reagoi uusimpiin tapahtumiin. Initial valuen vaikutus koko oppimiseen tällä keinolla on suuri, ja sen valintaa voidaan pitää priori-tiedon hyödyntämisenä. Oikeaan suuntaan valittujen alkuarvojen valintaa kutsutaan optimistiseksi alkuarvojen valinnaksi ja sitä voi pitää yksinkertaisena temppuna nopeuttaa oppimista etenkin helpoissa stationaarisissa ongelmissa koska se aiheuttaa nopeaa, väliaikaista oppimista alussa. ε-ahne on hyvä alku tutkimiselle, mutta satunnaisuus ei ole paras vaihtoehto. Parhaan vaihtoehdon tutkiminen ensiksi vaikuttaa paremmalta idealta. Yksi esimerkki tähän on upper confidence bound joka etenkin alkuun painottaa optimistisimpia vaihtoehtoja. Se on usein parempi kuin ε-ahne, mutta sen käyttö on huomattavasti vaikeampaa laajemmissa ongelmissa. Gradientti bandiitti preferoi actionia verrattuna muihin actioneihin, eikä rewardiin softmaxin avulla. Käytännössä hyvin lähellä SGD:tä. Assosiatiivisessa haussa oikealle tilanteelle keksitään oikea actioni. Tilanne opitaan ja sille luodaan ohje. tl;dr. greedy, ε-greedy, UCB ja gradientti on kaikki vaihtoehtoja yksinkertaseen k-bandit ongelmaan mutta kaikissa on myös parametri jonka oikean arvon löytäminen on tärkeää, liian pieni/suuri on huono. UCB tuntuu parhaalta. Gittins Indices on keino jolla laskea optimi tapa oppia, jos tiedetään priori distribuutiot. Bayesian optimisaatiolla on mahdollista löytää täydellinen ratkaisu, mutta sen laskenta on liian vaativaa.
-
Chapter 3: Finite MDP's
Markov Decision Process on vahvistavan oppimisen THE ongelma. Oppijaa ja ratkaisuntekijää kutsutaan yleensä agentiksi ja se minkä kanssa se on tekemisissä ja käytännössä kaikki muu kuin se agentti on ympäristöä. Kaikki vahvistava oppiminen on näiden interaktiota. Joka ajanhetkellä t agentti saa tiedon ympäristön tilasta S_t ja valitsee sen perusteella toiminnon A_t. Yhden ajanjakson kuluttua agentti saa palkinnon R_t+1 ja on uudessa tilassa S_t+1 jne. jne. Agentin ohjekirja (policy) määrittää agentin todennäköisyyden jokaisen tilan jokaiselle actionille niin, että pitkän ajan rewardi maximoituu. Ajan hetket eivät ole välttämättä diskreettejä, eikä rakenne ole välttämättä näin yksinkertainen. Ajanhetket voivat esim. olla päätöksiä ja rakenne voi olla koko roomban toiminto. Tilat ovat yleensä sensoreiden ohjaamia, mutta ne voivat olla esim. kameralla löydettyjä objekteja huoneesta tms. RL frameworkia pystytään näin soveltamaan lähes mihin vain tilanteeseen jossa päämäärä, tekijä ja ympäristö ovat selviä. Palkintosignaalin tarkoitus EI OLE kertoa miten joku tehdään, vaan palkita sen tekemisestä. Lopullinen päämäärä on tärkeä, ja sivujuonten liika palkitseminen ei johda lopullisen päämäärän saavuttamiseen. Agentin ja ympäristön raja on kontrollin ja muuttumisen raja. Robotin tapauksessa raja ei siis ole raajat/ilma, vaan cpu/raajat. Jos rewardin pystyy jakamaan tasaisiin aikajaksoihin tai episodeihin ja jokainen episodi päättyy niin, ettei aiempien episodien tila vaikuta uusimpaan, päättyy jokainen episodi terminaaliseen tilaan. Tällöin tehtävää kutsutaan episodiseksi tehtäväksi. Jos tehtävässä on myös ei-terminaalisia episodeja, on terminaalinen episodi S + ja ei terminaalinen S. Alennustermi γ laskee myöhempien tekojen tärkeyttä jatkuvassa tehtävässä. (3.2). Tästä johdettuna kaavan 3.3 avulla selviää, että goalin laskeminen on helpompaa jos lähdetään lopusta. Episodinen ja jatkuva-aikainen tehtävä on kaksi eri asiaa. Tilasignaalin preprocessointia ei tässä kirjassa tarkastella. Tilasignaali on yksinkertaisimmillaan aistit. Ne voivat kuitenkin olla myös monimutkaisempia rakenteita, kuten ajan myötä rakentuneet jutut, esim. huoneesta näkyy kerrallaan vain osa, mutta silmiä liikuttamalla muodostuu kokonaisuus. Tilasignaali ei kuitenkaan voi sisältää mitään, mitään agentti ei voisi tietää, sillä se ei auttaisi oppimista. Optimi tilasignaali sisältää sopivasti tietoa menneestä niin, että tämänhetkiset sensaatiot otetaan myös huomioon. Tilasignaali joka säilyttää kaiken tärkeän tiedon on Markov, esimerkiksi tennispallon sijainti, suunta ja nopeus on markov, sillä se sisältää kaiken tiedon tulevaisuutta varten. Tilalla on Markov ominaisuus, jos t+1 on riippuvainen vain t:stä, kaava 3.7. Joskus tilasignaalia approksimoidaan Markovina, vaikka se ei sitä ole. Näin jokaista tilaa voidaan approksimoida Markov tilana ja tulevaisuutta voidaan ennustaa arvioimalla. Markov ominaisuudet ovat hyvin teoreettisiä oikeassa elämässä, sillä sensorien tarkkuus, lämpötila muutokset ja aineiden rakenteet vaikuttavat liikaa kaikkeen. Vahvistavan oppimisen tehtävä joka toteuttaa markov ominaisuuden on nimeltään Markov Decision Process (MDP). Jos tila- sekä teko-avaruudet on rajattuja, on se finite MDP ja ne käsittää suurimman osan vahvistavan oppimisen teoriasta. Transitio-graafilla pystyy hyvin kuvaamaan rajallisen MDP'n ominaisuuksia. Siinä on tila-nodeja ja tapahtuma-nodeja ja niiden välillä menee todennäköisyys käyriä (fig 3.3). Arvofunktion tehtävä on määrittää kuinka hyvä agentin on olla kyseisessä tilassa, tai kuinka hyvä sen on toteuttaa toimintoja kyseisessä tilassa. Arvofunktion voi esittää sääntökirjan (pii) odotusarvon avulla, jota sitten yritetään maksimoida. Tästä saa johdettua tila-arvo sekä tapahtuma-arvo funktiot...
-
Chapter 4: Dynamic Programming
Dynaaminen ohjelmointi viittaa algoritmeihin joita voidaan käyttää optimisäännön löytämiseen oletuksella, että ympäristöä voidaan käsitellä MDP:nä.
-
Kaavat
Tälle joku helpompi ratkasu.. policy(pii) määrittää todennäköisyyden aktionille a tilassa s. Update rule (2.4) ja incremental update rule (2.5), yksinkertaiset päivitykset arvoille uuden tuloksen mukaan, ts. yksinkertaisin versio oppimisesta. Upper-Confidence-Bound action selection (2.8) toiminnon valinta joka tutkii parasta sellaista vaihtoehtoa, joiden potentiaali olla optimi on korkea. 3.1 Goal = Reward(t+1) + Reward(t+2).. 3.2 Goal = Reward(t+1) + γ*Reward(t+2) + γ²*Reward(t+3)..., 0<γ<1 3.3 Goal = Reward(t+1) + γ*Goal(t+1) 3.8 ja siitä johdetut eteenpäin, rajattu markov ketjun yleiset versiot. 3.12 tila-arvo funktio säännölle pii. 3.13 tapahtuma-arvo funktio säännölle pii. 3.14 Bellmanin Kaava kaavalle 3.12.
-
Algos / Chapter
1. Ei mitään? 2. greedy, ε-greedy, UCB, gradient bandit 3. Goal = Reward (t+1) + y*Goal(t+1) Rajotetusta markov ketjusta johdetut kaavat rewardille, tila-muutoksen todennäkösyydelle ja odotetut rewardit.