Grundlæggende AI

Hvad er Reinforcement Learning?

mm
Føj Unite.AI til dine foretrukne kilder på Google

Hvad er Reinforcement Learning?

Reinforcement learning er en maskinlæringsmetode, der indebærer træning af en kunstig intelligens-agent gennem gentagelse af handlinger og tilhørende belønninger. En reinforcement learning-agent eksperimenterer i en omgang, tager handlinger og bliver belønnet, når de korrekte handlinger udføres. Over tid lærer agenten at udføre handlinger, der maksimerer dens belønning. Dette er en kort definition af reinforcement learning, men at tage en nærmere kig på begreberne bag reinforcement learning vil hjælpe dig med at få en bedre, mere intuitiv forståelse af det.

Begrebet “reinforcement learning” er tilpasset fra begrebet “reinforcement” i psykologien. Reinforcement i psykologien refererer til noget, der øger sandsynligheden for, at en bestemt respons eller handling vil ske. Dette begreb er en central idé i teorien om operant betingelse, som oprindeligt blev foreslået af psykologen B.F. Skinner. I denne kontekst er reinforcement noget, der får en given adfærd til at øge i frekvens. Hvis vi tænker over mulig reinforcement for mennesker, kan disse være ting som ros, en lønforhøjelse på arbejdet, slik og sjove aktiviteter.

Der er to typer af reinforcement i den traditionelle, psykologiske forstand. Der er positiv reinforcement og negativ reinforcement. Positiv reinforcement er tilføjelsen af noget for at øge en adfærd, som at give din hund en behandling, når den er velopført. Negativ reinforcement indebærer fjernelse af en stimulus for at fremkalde en adfærd, som at slukke for høj musik for at lokke en sky cat ud.

Positiv og Negativ Reinforcement

Positiv reinforcement øger frekvensen af en adfærd, mens negativ reinforcement reducerer frekvensen. Generelt er positiv reinforcement den mest almindelige type af reinforcement, der bruges i reinforcement learning, da det hjælper modeller med at maksimere præstationen på en given opgave. Positiv reinforcement fører også modellen til at foretage mere bæredygtige ændringer, ændringer, der kan blive til faste mønstre og bestå i lange perioder.

I modsætning hertil bruges negativ reinforcement til at fastholde en minimumsstandard for præstation, snarere end at nå modellens maksimale præstation. Negativ reinforcement i reinforcement learning kan hjælpe med at sikre, at en model holdes væk fra uønskede handlinger, men det kan ikke rigtig få en model til at udforske ønskede handlinger.

Træning af en Reinforcement Agent

Når en reinforcement learning-agent trænes, bruges der fire forskellige ingredienser eller stater i træningen: initialstater (State 0), ny stat (State 1), handlinger og belønninger.

<p Forestil dig, at vi træner en reinforcement-agent til at spille et platformspil, hvor AI'ens mål er at nå til slutningen af niveauet ved at bevæge sig til højre over skærmen. Spillets initialstat er hentet fra omgangen, hvilket betyder, at spillets første frame analyseres og gives til modellen. På baggrund af denne information skal modellen beslutte en handling.

I de første faser af træningen er disse handlinger tilfældige, men efterhånden som modellen bliver forstærket, vil visse handlinger blive mere almindelige. Efter at handlingen er udført, opdateres spillets omgang, og en ny stat eller frame oprettes. Hvis handlingen, der er udført af agenten, resulterede i et ønsket resultat, for eksempel at agenten stadig er i live og ikke er ramt af en fjende, gives der en belønning til agenten, og det bliver mere sandsynligt, at den gør det samme i fremtiden.

Dette grundlæggende system køres konstant i en løkke, igen og igen, og hver gang prøver agenten at lære lidt mere og maksimere sin belønning.

Episodiske vs Kontinuerte Opgaver

Reinforcement learning-opgaver kan typisk inddeles i to forskellige kategorier: episodiske opgaver og kontinuerte opgaver.

Episodiske opgaver udfører træningsløkken og forbedrer deres præstation, indtil en vis afslutningskriterie er opfyldt, og træningen afsluttes. I et spil kan dette være at nå slutningen af niveauet eller falde i en fælde som spidser. I modsætning hertil har kontinuerte opgaver ingen afslutningskriterie og fortsætter med at træne, indtil ingeniøren vælger at afslutte træningen.

Monte Carlo vs Temporal Difference

Der er to primære måder at lære eller træne en reinforcement learning-agent på. I Monte Carlo-metoden gives belønninger til agenten (dens score opdateres) kun ved slutningen af træningsepisoden. Med andre ord, kun når afslutningsbetingelsen er opfyldt, lærer modellen, hvor godt den har præsteret. Den kan derefter bruge denne information til at opdatere, og når den næste træningsrunde starter, vil den reagere i overensstemmelse med den nye information.

Temporal-difference-metoden adskiller sig fra Monte Carlo-metoden, idet værdi-estimationen eller score-estimationen opdateres under træningsepisodens forløb. Når modellen rykker til næste tidssteg, opdateres værdierne.

Udforskning vs Udnyttelse

Træning af en reinforcement learning-agent er en balanceakt, der indebærer balancen mellem to forskellige mål: udforskning og udnyttelse.

Udforskning er handlingen at samle mere information om den omgivende omgang, mens udnyttelse er at bruge den allerede kendte information om omgangen til at tjene belønning. Hvis en agent kun udforsker og aldrig udnytter omgangen, vil de ønskede handlinger aldrig udføres. På den anden side, hvis agenten kun udnytter og aldrig udforsker, vil agenten kun lære at udføre én handling og ikke opdage andre mulige strategier for at tjene belønninger. Derfor er det kritisk at balancere udforskning og udnyttelse, når man skaber en reinforcement learning-agent.

Brugsområder for Reinforcement Learning

Reinforcement learning kan bruges i en bred vifte af roller og er bedst egnet til ansøgninger, hvor opgaver kræver automatisering.

Automatisering af opgaver, der skal udføres af industrirobotter, er et område, hvor reinforcement learning viser sig at være nyttig. Reinforcement learning kan også bruges til problemer som tekstmining, hvor man kan oprette modeller, der kan sammenfatte lange tekstkorpusser. Forskere eksperimenterer også med at bruge reinforcement learning i sundhedssektoren, hvor reinforcement-agenter håndterer opgaver som optimering af behandlingspolitikker. Reinforcement learning kan også bruges til at tilpasse undervisningsmateriale til studerende.

Resumé af Reinforcement Learning

Reinforcement learning er en kraftfuld metode til at konstruere AI-agenter, der kan føre til imponerende og undertiden overraskende resultater. Træning af en agent gennem reinforcement learning kan være kompleks og svær, da det kræver mange træningsiterationer og en delikat balance af udforskning/udnyttelses-dikotomien. Dog, hvis det er succesfuldt, kan en agent skabt med reinforcement learning udføre komplekse opgaver under en bred vifte af forskellige omgange.

Blogger og programmør med specialer i Machine Learning og Deep Learning emner. Daniel håber at hjælpe andre med at bruge AI's kraft til sociale formål.