Bună ziua și bun venit la acest tutorial.
Felicitări din nou că ați făcut-o cu ea.
Vezi că am făcut-o că am făcut creierul și i-am antrenat.
Dar acum trebuie să facem un agent de testare care nu va avea o întâlnire mâine deloc, dar va folosi
doar modelul de partajare pentru a-și face propriile explorări.
Și, bineînțeles, în acest cod vom înregistra câteva videoclipuri și aceștia vor fi agenții de testare
a videoclipurilor cu un anumit punctaj.
Să trecem prin acest cod.
Cea mai importantă este făcută așa cum v-am spus că nu vom codifica linia de linie, dar cred
că este important să înțelegeți ce se întâmplă aici.
Deci, mergem cu acest cod în prima secțiune așa cum ați observat.
Importem bibliotecile și apoi am găsit această funcție de testare, care va face ca acest agent de testare să
facă propriile explorări și să joace jocul breakout.
Deci avem această funcție de testare durează trei argumente, primul este clasament care este încă de a face sincronizarea
agentului de testare ca și noi pentru agenții de formare.
Atunci avem parametrii, desigur, pentru că aveți nevoie de ceva.
Și, desigur, avem modelul partajat, deoarece acest agent de testare va folosi un model comun pentru a-și face
propria explorare.
În regulă atunci mergem în interiorul funcției și această linie de cod pe care o sincronizăm cu agentul de testare.
Exact așa cum am făcut înainte, atunci importăm mediul înconjurător.
Aș reamintesc că în codul principal care va fi în următorul tutorial.
Păi și numele aici va fi înlocuit de pauză de zero, astfel încât să putem intra în mediul de pauză
zero și să jucăm jocul și Crucea Roșie Trumani care va primi clipurile video ale serii noastre.
Deci, practic, această linie de cod în total înseamnă că rulați un mediu cu video.
Apoi, la următoarea linie de cod, sincronizăm acest mediu cu același principiu ca și funcția Trend.
Atunci vom obține modelul nostru și pentru a face acest lucru vom crea un obiect al clasei de activitate și vom pune
forma de intrare cu spațiul nostru de observare a mediului înconjurător, iar zerurile de formă sunt exact ca și funcția
de tren și ieșirile noastre care sunt acțiunile cu un spațiu de acțiune.
Asa ca si inainte ceva nou aici de cand am terminat cu antrenamentul.
Nu vrem să punem modelul în modul de tren, pentru că pur și simplu nu vrem să
ne pregătim să-l dezvoltăm.
Și asta facem aici cu un model care a evoluat.
Deci, este doar pentru a pune agentul de testare într-un mod care va testa în esență testat
performanța evaluată.
Apoi aici primim stările de intrare care sunt imaginile de intrare din joc care în acest moment sunt o
cursă întreagă.
Apoi îi transformăm în dansatori de torte.
Aici inițiază câteva dintre cuvintele de aici.
Inițializăm până la adevărat.
Deci, tocmai ca și ultima oară, atunci ceva nou nou introducem această a treia viabilă cu o funcție de timp pentru
a măsura timpul de calcul.
Și asta pentru că doriți să obțineți punctul de plecare.
Apoi aici acțiunile pe care le folosim un tip foarte practic de tac, care permite adăugarea unui element la tac de la
dreapta sau din stânga.
Deci, este foarte practic și vă voi da referința pe care o cred în versiunea decrementată a codului.
Deci, veți avea o privire asupra a ceea ce este dequeue este și asta este ceea ce permite să facă acest lucru.
Apoi inițializăm lungimea unui episod cu zero, desigur, și apoi vom mări dimensiunea în această
bucla de bine.
Deci folosim același șmecherie aici.
În timp ce este adevărat și în buclă, incrementează lungimea episodului cu unul.
Când jocul se termină la terminarea jocului, reîncărcați ultimul set al modelului partajat, modelul de partajare dat
de celelalte modele.
Rețineți că aici modelul partajat nu mai este datat atunci.
Totuși, dacă jocul se termină dacă jocul este terminat, Reinette noi re-inițializăm stările celulare vezi X și
apoi statele H x și altfel, dacă jocul nu se termină bine, păstrăm aceleași state de celule și în state.
Dar pentru a vă asigura că sunt predate variabile astfel încât acestea să poată fi atașate la un gradient.
OK, deci e ceva ce deja am murit în funcția de tendință și apoi în buclă în timp și după ce avem
date care afirmă în stările ascunse calea cea dreaptă, în funcție de cele două cazuri aici.
Ei bine ce facem noi primim previziunile de mâine.
Exact asta facem aici cu această linie de cod.
Deci, obținem valoarea care este rezultatul criticului, valoarea reală care este rezultatul actorului.
Și atunci este vorba de toate stările ascunse H x și de statele de celule X, atunci vom genera o
distribuție a probabilităților acțiunilor care se află la valoarea valorilor acțiunii Q aici.
Și facem asta cu următoarea funcție.
Și, bineînțeles, nu trebuie să luăm probele de noroc aici, pentru că asta este doar pentru pregătirea
pentru agentul de testare.
Acesta va juca doar acțiunile pe care le vom folosi doar tu stii ca doom o anumită activitate să-l joace, dar nu
facem nici o formare aici.
Deci, avem doar o propunere și de aici jucăm acțiunea luând direct la RMX aceste probabilități, ceea ce înseamnă că
ia acțiunea care are cea mai mare probabilitate.
Și motivul este că agentul de testare nu face nici o explorare.
Amintiți-vă că vrem să avem o șansă să luăm câteva acțiuni care au probabilități scăzute atunci când
doriți să explorați aceste alte acțiuni și nu știți să luați de fiecare dată acțiunea
care are cea mai mare probabilitate, dar aici agentul de testare poate face orice explorare și prin urmare,
de aceea luam direct acțiunea care are probabilitatea maximă din nou, atunci când vom juca acțiunea ajungem la următoarea
stare și vom obține următorul cuvânt.
Și este o zi datată dacă jocul sa încheiat sau nu.
Așa că am obținut toate acestea cu această linie de cod, jucând acțiunea după ce am selectat-o ​​cu Max-ul
nostru aici.
Deci, jucăm acțiunea aici și ajungem la statul în care primim recompensa și o facem din nou și apoi din moment ce noi avem
o nouă recompensă Vom actualiza o parte din recompensă adăugând pur și simplu acest nou cuvânt.
Și în cele din urmă de fiecare dată când jocul este terminat.
Deci, dacă acest lucru înseamnă că atunci când jocul este terminat când termin jocul bine, vom
tipări rezultatele cu timpul opus.
Am vrut ca lungimea episodului să dureze mult timp.
Se joacă excelent și acesta este modul în care imprimam toate aceste variabile folosind aceste trucuri mici.
Asta pentru timpul pe care îl dorim unii este doar o variabilă.
Unele dintre cuvintele și ideile în timp sunt lungimea actualului OK.
Și apoi, odată ce am tipărit toate rezultatele bine de la terminarea jocului și dorim să începem un
nou joc, vom reinițializa totul.
Aceasta este suma a două cuvinte zero, lungimea unui episod la zero.
Vom reînființa toate acțiunile utilizând această funcție de resetare a imaginilor de intrare pe
care le cunoașteți prin repetarea tuturor pauzelor.
Și în cele din urmă vom folosi de această dată că dormi 60 de secunde pentru a face o pauză de un minut pentru a permite altor
agenți practica.
Și dacă jocul sa terminat.
O.K.
Și în final avem această ultimă linie de cod care ne va aduce noul stat și apoi putem merge mai departe.
Putem continua în acest nou joc.
Așa că mergem.
Aceasta este funcția de testare.
Lucruri la care veți vedea videoclipurile în unul sau două tutoriale.
Sper că veți fi cu totul ca ultima dată să urmăriți rezultatele care sunt cu dvs.
Curial și cu mine, care va fi distractiv.
Și îți spun eu.
Asteptati-va sa vedeti rezultate bune.
Dar tineti minte ca acest joc de breakout a fost foarte provocator.
Am crezut că a fost un simplu joc pentru a juca primul, dar nu deloc.
De fapt, sa dovedit a fi mult mai dificilă decât o doom.
De aceea am pus-o în ultimul modul.
Dar, oricum, hai să facem această funcție principală în următorul tutorial.
Același lucru nu este cel mai important aici.
Acum, că A-380 este dement, nu vom codifica linia după linie, vom extinde codul și foarte repede
vom obține rezultatele.
Până atunci, bucurați-vă de AI.