Udvikl og sammenlign forstærkningslæringsalgoritmer ved hjælp af dette værktøjssæt.

Hvis du ikke kan opbygge en maskinlæringsmodel fra bunden eller mangler infrastrukturen, løser det kun hullet at forbinde din app til en fungerende model.

Kunstig intelligens er her for alle at bruge på den ene eller den anden måde. Med hensyn til OpenAI Gym er der mange udforskelige træningsbaner til at fodre dine forstærkningslæringsagenter.

Hvad er OpenAI Gym, hvordan fungerer det, og hvad kan du bygge med det?

Hvad er OpenAI Gym?

OpenAI Gym er en Pythonic API, der giver simulerede træningsmiljøer for forstærkende læringsagenter til at handle baseret på miljøobservationer; hver handling kommer med en positiv eller negativ belønning, som tilfalder ved hvert tidstrin. Mens agenten sigter efter at maksimere belønninger, bliver den straffet for hver uventet beslutning.

Tidstrinnet er et diskret-tidspunkt for miljøet til at transitere til en anden tilstand. Det lægger op, efterhånden som agentens handlinger ændrer miljøtilstanden.

instagram viewer

Hvordan fungerer OpenAI Gym?

OpenAI Gym-miljøerne er baseret på Markov Decision Process (MDP), en dynamisk beslutningsmodel, der bruges i forstærkningslæring. Det følger således, at belønninger kun kommer, når omgivelserne ændrer tilstand. Og begivenhederne i den næste tilstand afhænger kun af den nuværende tilstand, da MDP ikke tager højde for tidligere begivenheder.

Inden vi går videre, lad os dykke ned i et eksempel for en hurtig forståelse af OpenAI Gyms anvendelse i forstærkningslæring.

Forudsat at du har til hensigt at træne en bil i et racerspil, kan du spinne en racerbane op i OpenAI Gym. I forstærkningsindlæring, hvis køretøjet drejer til højre i stedet for til venstre, kan det få en negativ belønning på -1. Væddeløbsbanen ændres ved hvert tidstrin og kan blive mere kompliceret i efterfølgende tilstande.

Negative belønninger eller sanktioner er ikke dårlige for en agent i forstærkningslæring. I nogle tilfælde tilskynder det det til at nå sit mål hurtigere. Således lærer bilen om banen over tid og mestrer sin navigation ved hjælp af belønningsstriber.

For eksempel startede vi FrozenLake-v1 miljø, hvor en agent bliver straffet for at falde i ishuller, men belønnes for at skaffe en gaveæske.

Vores første løb genererede færre straffe uden belønninger:

Imidlertid producerede en tredje iteration et mere komplekst miljø. Men agenten fik et par belønninger:

Resultatet ovenfor betyder ikke, at agenten vil forbedre sig i den næste iteration. Selvom det med held kan undgå flere huller næste gang, får det muligvis ingen belønning. Men ændring af nogle få parametre kan forbedre indlæringshastigheden.

OpenAI Gym Components

OpenAI Gym API kredser om følgende komponenter:

  • Det miljøer hvor du uddanner en agent. Du kan starte en ved at bruge gym.make metode. OpenAI Gym understøtter også multi-agent miljøer.
  • Det indpakninger til at ændre et eksisterende miljø. Selvom hvert basismiljø er præ-indpakket som standard, kan du omskalere det med parametre som max_actions, min_actions og max rewards.
  • An handling; definerer, hvad agenten gør, når den observerer ændringer i sit miljø. Hver handling i et miljø er et trin, der definerer en agents reaktion på observationer. En fuldførelse af trin returnerer en observation, en belønning, info og en afkortnings- eller termineringsværdi.
  • Det observation; definerer en agents oplevelse i et miljø. Når der er en observation, følger en handling med dens info. Info-parameteren er en eksekveringslog, der er praktisk til fejlretning. Når et trin slutter, nulstilles miljøet n gange, afhængigt af antallet af specificerede iterationer.

Hvad kan du lave med OpenAI Gym?

Da OpenAI Gym giver dig mulighed for at oprette tilpassede læringsmiljøer, er her nogle måder at bruge det på i et virkeligt scenarie.

1. Spilsimulering

Du kan udnytte OpenAI Gyms spilmiljøer til at belønne ønsket adfærd, skabe spillebelønninger og øge kompleksiteten pr. spilniveau.

2. Billedgenkendelse

Hvor der er en begrænset mængde data, ressourcer og tid, kan OpenAI Gym være praktisk til at udvikle et billedgenkendelsessystem. På et dybere plan kan du skalere det for at bygge et ansigtsgenkendelsessystem, som belønner en agent for at identificere ansigter korrekt.

3. Robot træning

OpenAI Gym tilbyder også intuitive miljømodeller til 3D- og 2D-simuleringer, hvor du kan implementere ønsket adfærd i robotter. Roboskole er et eksempel på skaleret robotsimuleringssoftware bygget ved hjælp af OpenAI Gym.

4. Markedsføring

Du kan også bygge marketingløsninger som annonceservere, aktiehandelsbots, salgsforudsigelsesbots, produktanbefalingssystemer og mange flere ved at bruge OpenAI Gym. For eksempel kan du bygge en tilpasset OpenAI Gym-model, der straffer annoncer baseret på visning og klikrate.

5. Naturlig sprogbehandling

Nogle måder at anvende OpenAI Gym på naturlig sprogbehandling er multiple-choice spørgsmål, der involverer sætningsfuldførelse eller opbygning af en spamklassificering. For eksempel kan du træne en agent til at lære sætningsvariationer for at undgå bias, mens du markerer deltagere.

Sådan kommer du i gang med OpenAI Gym

OpenAI Gym understøtter Python 3.7 og nyere versioner. For at konfigurere et OpenAI Gym-miljø skal du installere gymnasium, den forked kontinuerligt understøttede gym version:

pip installere gymnastiksal

Drej derefter et miljø op. Du kan dog oprette et brugerdefineret miljø. Men start med at lege med en eksisterende for at mestre OpenAI Gym-konceptet.

Koden nedenfor spinder op FrozenLake-v1. Det env.nulstil metoden registrerer den første observation:

importere gymnasium som fitnesscenter
env = gym.make('FrozenLake-v1', render_mode="human")

observation, info = env.reset()

Nogle miljøer kræver ekstra biblioteker for at fungere. Hvis du skal installere et andet bibliotek, anbefaler Python det via undtagelsesmeddelelsen.

For eksempel skal du installere et ekstra bibliotek (gymnastiksal[legetøjstekst]) for at køre FrozenLake-v1 miljø.

Byg på kraften i OpenAI Gym

Et af tilbageslagene til udvikling af kunstig intelligens og maskinlæring er manglen på infrastruktur og træningsdatasæt. Men mens du søger at integrere maskinlæringsmodeller i dine apps eller enheder, er det hele nemmere nu med færdiglavede AI-modeller, der flyver rundt på internettet. Mens nogle af disse værktøjer er billige, er andre, inklusive OpenAI Gym, gratis og open source.