Utvikle og sammenlign forsterkende læringsalgoritmer ved å bruke dette verktøysettet.

Hvis du ikke kan bygge en maskinlæringsmodell fra bunnen av eller mangler infrastrukturen, løser det å bare koble appen til en fungerende modell gapet.

Kunstig intelligens er her for alle å bruke på den ene eller andre måten. Når det gjelder OpenAI Gym, er det mange utforskbare treningsplasser for å mate dine forsterkende læringsagenter.

Hva er OpenAI Gym, hvordan fungerer det, og hva kan du bygge med det?

Hva er OpenAI Gym?

OpenAI Gym er et Pythonic API som gir simulerte treningsmiljøer for forsterkende læringsagenter til å handle basert på miljøobservasjoner; hver handling kommer med en positiv eller negativ belønning, som påløper ved hvert tidstrinn. Mens agenten har som mål å maksimere belønningene, blir den straffet for hver uventet avgjørelse.

Tidstrinnet er et diskret tidsmerke for miljøet til å gå over i en annen tilstand. Det legger seg etter hvert som agentens handlinger endrer miljøtilstanden.

Hvordan fungerer OpenAI Gym?

instagram viewer

OpenAI Gym-miljøene er basert på Markov Decision Process (MDP), en dynamisk beslutningsmodell som brukes i forsterkende læring. Dermed følger det at belønning bare kommer når miljøet endrer tilstand. Og hendelsene i den neste staten avhenger bare av den nåværende tilstanden, siden MDP ikke tar hensyn til tidligere hendelser.

Før vi går videre, la oss dykke ned i et eksempel for en rask forståelse av OpenAI Gyms applikasjon i forsterkende læring.

Forutsatt at du har tenkt å trene en bil i et racingspill, kan du spinne opp en racerbane i OpenAI Gym. I forsterkningslæring, hvis kjøretøyet svinger til høyre i stedet for til venstre, kan det få en negativ belønning på -1. Veddeløpsbanen endres for hvert trinn og kan bli mer komplisert i påfølgende tilstander.

Negative belønninger eller straffer er ikke dårlig for en agent i forsterkende læring. I noen tilfeller oppmuntrer det den til å nå målet raskere. Dermed lærer bilen om banen over tid og mestrer navigasjonen ved hjelp av belønningsstreker.

For eksempel startet vi FrozenLake-v1 miljø, der en agent blir straffet for å falle ned i ishull, men belønnes for å finne en gaveeske.

Vår første kjøring genererte færre straffer uten belønning:

En tredje iterasjon ga imidlertid et mer komplekst miljø. Men agenten fikk noen få belønninger:

Utfallet ovenfor betyr ikke at agenten vil forbedre seg i neste iterasjon. Selv om den kan unngå flere hull neste gang, kan den ikke få noen belønning. Men å endre noen få parametere kan forbedre læringshastigheten.

OpenAI Gym-komponenter

OpenAI Gym API dreier seg om følgende komponenter:

  • De miljøer hvor du lærer opp en agent. Du kan starte en ved å bruke gym.lage metode. OpenAI Gym støtter også multiagentmiljøer.
  • De innpakninger for å endre et eksisterende miljø. Selv om hvert basismiljø er forhåndsinnpakket som standard, kan du skalere det på nytt med parametere som max_actions, min_actions og max rewards.
  • An handling; definerer hva agenten gjør når den observerer endringer i omgivelsene. Hver handling i et miljø er et trinn som definerer en agents respons på observasjoner. En trinnfullføring returnerer en observasjon, en belønning, info og en avkortings- eller termineringsverdi.
  • De observasjon; definerer en agents opplevelse i et miljø. Når det er en observasjon, følger en handling med sin informasjon. Info-parameteren er en utførelseslogg som er nyttig for feilsøking. Når et trinn avsluttes, tilbakestilles miljøet n ganger, avhengig av antall spesifiserte iterasjoner.

Hva kan du lage med OpenAI Gym?

Siden OpenAI Gym lar deg spinne opp tilpassede læringsmiljøer, her er noen måter å bruke det på i et virkelighetsscenario.

1. Spill Simulering

Du kan utnytte OpenAI Gyms spillmiljøer for å belønne ønsket atferd, skape spillbelønninger og øke kompleksiteten per spillnivå.

2. Bildegjenkjenning

Der det er en begrenset mengde data, ressurser og tid, kan OpenAI Gym være nyttig for å utvikle et bildegjenkjenningssystem. På et dypere nivå kan du skalere det for å bygge et ansiktsgjenkjenningssystem, som belønner en agent for å identifisere ansikter riktig.

3. Robottrening

OpenAI Gym tilbyr også intuitive miljømodeller for 3D- og 2D-simuleringer, hvor du kan implementere ønsket atferd i roboter. Roboskole er et eksempel på skalert robotsimuleringsprogramvare bygget ved hjelp av OpenAI Gym.

4. Markedsføring

Du kan også bygge markedsføringsløsninger som annonseservere, aksjehandelsroboter, salgsprediksjonsroboter, produktanbefalingssystemer og mange flere ved å bruke OpenAI Gym. Du kan for eksempel bygge en tilpasset OpenAI Gym-modell som straffer annonser basert på visning og klikkfrekvens.

5. Naturlig språkbehandling

Noen måter å bruke OpenAI Gym på naturlig språkbehandling er flervalgsspørsmål som involverer setningsfullføring eller bygge en spamklassifiserer. Du kan for eksempel trene en agent til å lære setningsvariasjoner for å unngå skjevhet mens du markerer deltakere.

Hvordan komme i gang med OpenAI Gym

OpenAI Gym støtter Python 3.7 og nyere versjoner. For å sette opp et OpenAI Gym-miljø, må du installere gymnastikksal, den gaffelstøttede treningsversjonen:

pip installere gymsal

Deretter spinner du opp et miljø. Du kan imidlertid lage et tilpasset miljø. Men start med å leke med en eksisterende for å mestre OpenAI Gym-konseptet.

Koden nedenfor spinner opp FrozenLake-v1. De env.reset metoden registrerer den første observasjonen:

import gymnastikksal som treningsstudio
env = gym.make('FrozenLake-v1', render_mode="menneskelig")

observasjon, info = env.reset()

Noen miljøer krever ekstra biblioteker for å fungere. Hvis du trenger å installere et annet bibliotek, anbefaler Python det via unntaksmeldingen.

Du vil for eksempel installere et ekstra bibliotek (gymsal[leketøy-tekst]) for å kjøre FrozenLake-v1 miljø.

Bygg på kraften til OpenAI Gym

Et av tilbakeslagene for utvikling av AI og maskinlæring er mangelen på infrastruktur og opplæringsdatasett. Men når du ser etter å integrere maskinlæringsmodeller i appene eller enhetene dine, er alt enklere nå med ferdiglagde AI-modeller som flyr rundt på internett. Mens noen av disse verktøyene er rimelige, er andre, inkludert OpenAI Gym, gratis og åpen kildekode.