Sukurkite ir palyginkite sustiprinimo mokymosi algoritmus naudodami šį įrankių rinkinį.

Jei negalite sukurti mašininio mokymosi modelio nuo nulio arba neturite infrastruktūros, tiesiog prijungę programą prie veikiančio modelio spragą pašalinsite.

Dirbtinis intelektas yra čia, kad visi galėtų vienaip ar kitaip naudotis. Kalbant apie „OpenAI Gym“, yra daug tyrinėjamų treniruočių aikštelių, kuriose galite pamaitinti savo pastiprinimo mokymosi agentus.

Kas yra „OpenAI Gym“, kaip ji veikia ir ką galima sukurti naudojant ją?

Kas yra OpenAI Gym?

OpenAI Gym yra Pythonic API, kuri suteikia imituojamą mokymo aplinką, skirtą sustiprinti mokymosi agentams, kad jie galėtų veikti remiantis aplinkos stebėjimais; kiekvienas veiksmas gauna teigiamą arba neigiamą atlygį, kuris kaupiasi kiekviename laiko žingsnyje. Nors agentas siekia maksimaliai padidinti atlygį, jis yra baudžiamas už kiekvieną netikėtą sprendimą.

Laiko žingsnis yra diskretiškas laikas, per kurį aplinka pereis į kitą būseną. Jis didėja, kai agento veiksmai keičia aplinkos būseną.

instagram viewer

Kaip veikia „OpenAI Gym“?

„OpenAI Gym“ aplinkos yra pagrįstos Markovo sprendimų procesu (MDP), dinamišku sprendimų priėmimo modeliu, naudojamu mokymuisi. Taigi, atlygis ateina tik tada, kai keičiasi aplinkos būsena. O įvykiai kitoje būsenoje priklauso tik nuo dabartinės būsenos, nes MDP neatsižvelgia į praeities įvykius.

Prieš tęsdami, pasinerkime į pavyzdį, kad greitai suprastume „OpenAI Gym“ taikymą stiprinimo mokymuisi.

Darant prielaidą, kad ketinate treniruoti automobilį lenktynių žaidime, galite pasukti lenktynių trasą OpenAI Gym. Pastiprinimo mokymosi metu, jei transporto priemonė sukasi į dešinę, o ne į kairę, ji gali gauti neigiamą atlygį -1. Lenktynių trasa keičiasi kiekvienu laiko žingsniu ir vėlesnėse būsenose gali būti sudėtingesnė.

Neigiamas atlygis ar nuobaudos nėra blogai stiprinimo mokymosi agentui. Kai kuriais atvejais tai skatina greičiau pasiekti savo tikslą. Taigi automobilis laikui bėgant sužino apie trasą ir įvaldo navigaciją naudodamas atlygio eilutes.

Pavyzdžiui, mes inicijavome FrozenLake-v1 aplinka, kurioje agentas yra nubaustas už įkritimą į ledo duobes, bet apdovanotas už dovanų dėžutės atgavimą.

Mūsų pirmasis važiavimas sukūrė mažiau nuobaudų be atlygio:

Tačiau trečioji iteracija sukūrė sudėtingesnę aplinką. Tačiau agentas gavo keletą apdovanojimų:

Aukščiau pateiktas rezultatas nereiškia, kad agentas patobulins kitą iteraciją. Nors kitą kartą ji gali sėkmingai išvengti daugiau skylių, ji gali negauti jokio atlygio. Tačiau pakeitus kelis parametrus gali padidėti mokymosi greitis.

„OpenAI“ sporto salės komponentai

OpenAI Gym API sukasi aplink šiuos komponentus:

  • The aplinkos kur moki agentą. Galite pradėti jį naudodami sporto salė.padaryti metodas. „OpenAI Gym“ taip pat palaiko kelių agentų aplinkas.
  • The įvyniojimai esamos aplinkos modifikavimui. Nors pagal numatytuosius nustatymus kiekviena pagrindinė aplinka yra iš anksto supakuota, galite pakeisti jos mastelį naudodami tokius parametrus kaip max_actions, min_actions ir max rewards.
  • An veiksmas; apibrėžia, ką agentas daro stebėdamas savo aplinkos pokyčius. Kiekvienas veiksmas aplinkoje yra veiksmas, apibrėžiantis agento reakciją į stebėjimus. Užbaigus veiksmą pateikiamas stebėjimas, atlygis, informacija ir sutrumpinta arba baigiama reikšmė.
  • The stebėjimas; apibrėžia agento patirtį aplinkoje. Pastebėjus, įvyksta veiksmas su informacija. Informacijos parametras yra vykdymo žurnalas, kuris yra patogus derinant. Kai veiksmas baigiasi, aplinka nustatoma iš naujo n kartų, atsižvelgiant į nurodytų iteracijų skaičių.

Ką galite padaryti naudodami „OpenAI Gym“?

Kadangi „OpenAI Gym“ leidžia sukurti pritaikytas mokymosi aplinkas, pateikiame keletą būdų, kaip ją panaudoti realiame gyvenime.

1. Žaidimo modeliavimas

Galite pasinaudoti „OpenAI Gym“ žaidimų aplinka, kad atlygintumėte už norimą elgesį, sukurtumėte atlygį už žaidimus ir padidintumėte žaidimo sudėtingumo lygį.

2. Vaizdo atpažinimas

Jei yra ribotas duomenų, išteklių ir laiko kiekis, OpenAI Gym gali būti naudinga kuriant vaizdo atpažinimo sistemą. Gilesniu lygmeniu galite ją išplėsti, kad sukurtumėte veido atpažinimo sistemą, kuri apdovanoja agentą už teisingą veidų atpažinimą.

3. Robotų mokymas

„OpenAI Gym“ taip pat siūlo intuityvius aplinkos modelius, skirtus 3D ir 2D modeliavimui, kur galite pritaikyti norimus veiksmus robotams. Roboschool yra robotų modeliavimo programinės įrangos, sukurtos naudojant OpenAI Gym, pavyzdys.

4. Rinkodara

Naudodami „OpenAI Gym“ taip pat galite kurti rinkodaros sprendimus, pvz., skelbimų serverius, akcijų prekybos robotus, pardavimo prognozavimo robotus, produktų rekomendacijų sistemas ir daugelį kitų. Pavyzdžiui, galite sukurti tinkintą „OpenAI Gym“ modelį, kuris baudžia už skelbimus pagal parodymų ir paspaudimų rodiklį.

5. Natūralios kalbos apdorojimas

Kai kurie OpenAI Gym pritaikymo būdai natūralios kalbos apdorojimas yra klausimai su atsakymų variantais, susiję su sakinio užbaigimu arba pašto šiukšlių klasifikatoriaus kūrimas. Pavyzdžiui, galite išmokyti agentą išmokti sakinių variantų, kad išvengtumėte šališkumo žymėdami dalyvius.

Kaip pradėti naudotis „OpenAI Gym“.

OpenAI Gym palaiko Python 3.7 ir naujesnes versijas. Norėdami nustatyti OpenAI Gym aplinką, turite įdiegti gimnazija, su šakėmis nuolat palaikoma sporto salės versija:

pip instaliuoti gimnaziją

Tada sukurkite aplinką. Tačiau galite sukurti tinkintą aplinką. Tačiau pradėkite žaisdami su esamu, kad įsisavintumėte OpenAI Gym koncepciją.

Žemiau esantis kodas sukasi aukštyn FrozenLake-v1. The env.reset metodas registruoja pradinį stebėjimą:

importuoti gimnazija kaip sporto salė
env = gym.make(„FrozenLake-v1“, render_mode="žmogus")

stebėjimas, informacija = env.reset()

Kad veiktų kai kuriose aplinkose, reikia papildomų bibliotekų. Jei reikia įdiegti kitą biblioteką, „Python“ rekomenduoja ją per išimties pranešimą.

Pavyzdžiui, įdiegsite papildomą biblioteką (gimnazija [žaislas-tekstas]), kad paleistumėte FrozenLake-v1 aplinką.

Pasinaudokite OpenAI Gym galia

Viena iš AI ir mašininio mokymosi plėtros kliūčių yra infrastruktūros ir mokymo duomenų rinkinių trūkumas. Tačiau kai norite integruoti mašininio mokymosi modelius į savo programas ar įrenginius, dabar viskas lengviau, nes internete skraido paruošti dirbtinio intelekto modeliai. Nors kai kurie iš šių įrankių yra nebrangūs, kiti, įskaitant „OpenAI Gym“, yra nemokami ir atvirojo kodo.