Dezvoltați și comparați algoritmi de învățare prin întărire folosind acest set de instrumente.
Dacă nu puteți construi un model de învățare automată de la zero sau nu aveți infrastructura, simpla conectare a aplicației la un model funcțional remediază decalajul.
Inteligența artificială este aici pentru ca toată lumea să o folosească într-un fel sau altul. În ceea ce privește OpenAI Gym, există multe terenuri de antrenament explorabile pentru a vă hrăni agenții de învățare de întărire.
Ce este OpenAI Gym, cum funcționează și ce poți construi folosindu-l?
Ce este OpenAI Gym?
OpenAI Gym este un API Pythonic care oferă medii de antrenament simulate pentru ca agenții de învățare de întărire să acționeze pe baza observațiilor de mediu; fiecare acțiune vine cu o recompensă pozitivă sau negativă, care se acumulează la fiecare pas de timp. În timp ce agentul urmărește să maximizeze recompensele, este penalizat pentru fiecare decizie neașteptată.
Pasul de timp este un timp discret pentru ca mediul să tranziteze într-o altă stare. Se adună pe măsură ce acțiunile agentului schimbă starea mediului.
Cum funcționează OpenAI Gym?
Mediile OpenAI Gym se bazează pe Procesul de decizie Markov (MDP), un model dinamic de luare a deciziilor utilizat în învățarea prin întărire. Astfel, rezultă că recompensele vin doar atunci când mediul își schimbă starea. Și evenimentele din următorul stat depind doar de starea prezentă, deoarece MDP nu ține cont de evenimentele trecute.
Înainte de a trece mai departe, haideți să ne aruncăm într-un exemplu pentru o înțelegere rapidă a aplicației OpenAI Gym în învățarea prin întărire.
Presupunând că intenționați să antrenați o mașină într-un joc de curse, puteți învârti o pistă de curse în OpenAI Gym. În învățarea prin întărire, dacă vehiculul virează la dreapta în loc de la stânga, ar putea primi o recompensă negativă de -1. Circuitul de curse se schimbă la fiecare pas de timp și s-ar putea să se complice în stările ulterioare.
Recompensele sau penalitățile negative nu sunt rele pentru un agent în învățarea prin întărire. În unele cazuri, îl încurajează să-și atingă obiectivul mai repede. Astfel, mașina învață despre pistă de-a lungul timpului și își stăpânește navigația folosind striuri de recompensă.
De exemplu, am inițiat FrozenLake-v1 mediu, în care un agent este penalizat pentru că a căzut în găuri de gheață, dar este recompensat pentru recuperarea unei cutii cadou.
Prima noastră rundă a generat mai puține penalizări fără recompense:
Cu toate acestea, o a treia iterație a produs un mediu mai complex. Dar agentul a primit câteva recompense:
Rezultatul de mai sus nu înseamnă că agentul se va îmbunătăți în următoarea iterație. Deși poate evita cu succes mai multe găuri data viitoare, este posibil să nu primească nicio recompensă. Dar modificarea câțiva parametri ar putea îmbunătăți viteza de învățare.
Componentele OpenAI Gym
API-ul OpenAI Gym se învârte în jurul următoarelor componente:
- The medii unde antrenezi un agent. Puteți iniția una folosind sală de sport.face metodă. OpenAI Gym acceptă, de asemenea, medii multi-agenți.
- The ambalaje pentru modificarea unui mediu existent. Deși fiecare mediu de bază este pre-împachetat în mod implicit, îl puteți redimensiona cu parametri precum max_actions, min_actions și recompense maxime.
- Un acțiune; definește ceea ce face agentul în timp ce observă schimbările din mediul său. Fiecare acțiune dintr-un mediu este un pas care definește răspunsul unui agent la observații. O finalizare a unui pas returnează o observație, o recompensă, informații și o valoare de trunchiere sau de terminare.
- The observare; definește experiența unui agent într-un mediu. Odată ce există o observație, urmează o acțiune cu informațiile sale. Parametrul info este un jurnal de execuție care este la îndemână pentru depanare. Odată ce un pas se termină, mediul se resetează de n ori, în funcție de numărul de iterații specificat.
Ce poți face cu OpenAI Gym?
Deoarece OpenAI Gym vă permite să creați medii de învățare personalizate, iată câteva modalități de a o utiliza într-un scenariu real.
1. Simulare de joc
Puteți folosi mediile de joc ale OpenAI Gym pentru a recompensa comportamentele dorite, pentru a crea recompense pentru jocuri și pentru a crește complexitatea pe nivel de joc.
2. Recunoașterea imaginilor
Acolo unde există o cantitate limitată de date, resurse și timp, OpenAI Gym poate fi util pentru dezvoltarea unui sistem de recunoaștere a imaginilor. La un nivel mai profund, îl puteți scala pentru a construi un sistem de recunoaștere a feței, care recompensează un agent pentru identificarea corectă a fețelor.
3. Antrenamentul robotilor
OpenAI Gym oferă, de asemenea, modele de mediu intuitive pentru simulări 3D și 2D, unde puteți implementa comportamentele dorite în roboți. Roboschool este un exemplu de software de simulare a roboților la scară construit folosind OpenAI Gym.
4. Marketing
De asemenea, puteți crea soluții de marketing cum ar fi servere de anunțuri, roboți de tranzacționare cu acțiuni, roboți de predicție a vânzărilor, sisteme de recomandare de produse și multe altele folosind OpenAI Gym. De exemplu, puteți crea un model personalizat OpenAI Gym care penalizează reclamele pe baza afișărilor și a ratei de clic.
5. Procesarea limbajului natural
Câteva moduri de a aplica OpenAI Gym în procesarea limbajului natural sunt întrebări cu răspunsuri multiple care implică completarea propoziției sau construirea unui clasificator de spam. De exemplu, puteți instrui un agent să învețe variațiile de propoziție pentru a evita părtinirea în timp ce marcați participanții.
Cum să începeți cu OpenAI Gym
OpenAI Gym acceptă Python 3.7 și versiunile ulterioare. Pentru a configura un mediu OpenAI Gym, veți instala gimnazial, versiunea de sală de gimnastică cu susținere continuă:
pip install gimnaziu
Apoi, rotiți un mediu. Totuși, puteți crea un mediu personalizat. Dar începeți prin a vă juca cu unul existent pentru a stăpâni conceptul OpenAI Gym.
Codul de mai jos învârte FrozenLake-v1. The env.resetare metoda înregistrează observația inițială:
import gimnazial la fel de Sală de gimnastică
env = gym.make(„FrozenLake-v1”, red_mode="uman")
observație, info = env.reset()
Unele medii necesită biblioteci suplimentare pentru a funcționa. Dacă trebuie să instalați o altă bibliotecă, Python o recomandă prin mesajul de excepție.
De exemplu, veți instala o bibliotecă suplimentară (gimnaziu[jucărie-text]) pentru a rula FrozenLake-v1 mediu inconjurator.
Construiți-vă pe puterea OpenAI Gym
Unul dintre dezavantajele dezvoltării AI și a învățării automate este lipsa infrastructurii și a seturilor de date de instruire. Dar, pe măsură ce căutați să integrați modele de învățare automată în aplicațiile sau dispozitivele dvs., totul este mai ușor acum cu modelele AI gata făcute care zboară pe internet. În timp ce unele dintre aceste instrumente sunt ieftine, altele, inclusiv OpenAI Gym, sunt gratuite și open-source.