Forsterkende læring

Fra Wikipedia, den frie encyklopedi

Forsterkende læring (engelsk: reinforcement learning) er en type maskinlæring, og dermed også en gren av kunstig intelligens. Forsterkende læring går ut på at maskiner eller programvare, agenter, prøver å finne løsningen til et problem ved å definere den ideelle løsningen innenfor en bestemt kontekst, og så gir belønninger eller straff for hvorvidt oppførselen fører agenten nærmere eller lengre fra løsningen. Forsterkningslæring er inspirert av psykologiens behaviorisme og appellerer til mange forskere på grunn av sin generalitet.

Dynamisk programmering[rediger | rediger kilde]

Forsterkende læring kombinerer to fagfelt for å kunne løse problemer som fagene ikke kan løse individuelt. Dynamisk programmering er et fagfelt innen matematikk og informatikk som normalt sett har vært brukt til å løse problemer tilknyttet optimalisering og kontroll. Imidlertidlig er tradisjonell dynamisk programmering begrenset i størrelse og kompleksitet til problemene den kan løse.

Veiledet læring[rediger | rediger kilde]

Veiledet læring (også kjent som styrt læring) er en generell metode for å trene en funksjon som tilordner inndata til ønsket utdata, basert på kategoriserte treningsdata. Veiledet læring krever parvise eksempler på inndata til og utdata fra funksjonen som skal læres. Med andre ord, veiledet læring krever et sett med spørsmål med de riktige svarene. For eksempel, vi kjenner ikke nødvendigvis den beste måten å programmere en datamaskin til å gjenkjenne et infrarødt bilde av en tanks, men dersom vi har en stor samling av infrarøde bilder, og vi vet hvorvidt hvert bilde inneholder en tanks eller ikke så vil veiledet læring kunne se på alle eksemplene med svar, og lære å gjenkjenne tanker generelt. Dette gjøres ved at algoritmen prøver seg frem og får positiv tilbakemelding dersom den gjør noe riktig.

Dessverre er det mange situasjoner der vi ikke kjenner de riktige svarene som veiledet læring krever, men gjennom teknikker som markovske beslutningsprosesser kan dette omgås. Enkel forsterkende læring kombinerer dog dynamisk programmering og veiledet læring.

Bruk[rediger | rediger kilde]

Forsterkende læring gir agenten bare et mål å oppnå. Agenten lærer da hvordan man skal oppnå dette målet ved prøving og feiling gjennom interaksjoner med omgivelsene. Logiske spill er også godt egnet til forsterkende læring, slik de tradisjonelt er definert som en sekvens av handlinger: spill som poker, backgammon, othello og sjakk er blitt håndtert på en mer eller mindre vellykket måte. Et problem innafor forsterkende læring er definert av tre grunnleggende deler: omgivelsene (eller miljøet), den forsterkende funksjonen og verdifunksjonen.

Omgivelsene[rediger | rediger kilde]

Hvert forsterkende læringssystem lærer en avbilding fra tilstander til handlinger ved prøving og feiling. Omgivelsene må som et minimum være delvis observerbare av læringssystemet.

Den forsterkende funksjonen[rediger | rediger kilde]

Avbildinga fra tilstand til handling er forbundet med belønning eller straff. Dersom agenten er i tilstand X, så kan den motta forskjellige belønninger ut ifra hvilken handling den velger. Spørsmålet er hvorvidt den skal utforske og få mer kunnskap om omgivelsene, eller være grådig, noe som i maskinlæring vil si å velge handlingen som gir størst belønning. Når agenten er ferdig utlært vil den alltid være grådig og utføre de handlinger som maksimerer summen av belønninger.

Verdifunksjon[rediger | rediger kilde]

Verdifunksjonen avgjør spørsmålet om hvordan agenten lærer å velge "gode" handlinger, eller hvordan vi kan måle nytten av en gitt handling. Først trenger vi en plan som bestemmer hvilke handlinger som skal utføres i hver tilstand. Verdien av en tilstand er definert som summen av belønningene som blir mottatt gjennom læringsprosessen. Dette blir omgjort til faste retningslinjer når læringen er ferdig. Den optimale planen vil derfor være at avbildinga fra tilstand til handling har den maksimale summen av belønninger når agenten begynner i en vilkårlig tilstand og utfører handlinger til den endelige tilstanden er nådd. En verdifunksjon kan for eksempel bli definert ved en enkel markovsk beslutningsprosess.

Markovsk beslutningsprosess[rediger | rediger kilde]

En markovsk beslutningsprosess (MBP) består av en mengde tilstander X, en mengde starttilstander S, som er en delmengde av X, en mengde handlinger A, en forsterkende funksjon R, der R(X, A) er en forventet umiddelbar belønning for å utføre en handling som gir tilstand x, og en handlingsmodell P der P (x '| x, a) er sannsynligheten for at utførende handling i tilstand x vil føre til tilstand x'. Det er videre et krav at valg av handling skal være avhengig utelukkende av den nåværende observasjonen av x. Dersom kunnskap om tidligere handlinger eller tilstander påvirker dagens handlingsvalg, da er det ikke en MBP.

Q-læring[rediger | rediger kilde]

En mye brukt algoritme innenfor forsterkende læring er Q-læring.

Litteratur[rediger | rediger kilde]

  • S. Russel & P. Norvig (2003): Artificial Intelligence – a modern approach, ISBN 0-13-080302-2, Pearson Education
  • I. Millington & J. Funge (2009). Artificial intelligence for games (2nd ed. utgave). Burlington, MA: Morgan Kaufmann/Elsevier. ISBN 978-0-12-374731-0.
  • M. Harmon (1996) Reinforcement learning: a tutorial