Siete pronti?
Facciamo questo, iniziamo installando tutte le dipendenze di sistema per Vista, facciamo clic su questo
pulsante di riproduzione e ora installerà tutte le dipendenze, come puoi vedere, come Pelo o ZIPPI e anche alcune
altre dipendenze che saranno necessarie per eseguilo con successo.
Ma tutto il resto, come il PLI verso i moduli palestra, è già installato.
Quindi è davvero fantastico.
Questo è davvero il bello del buon kulam, ed è grazie al quale nessuno di voi avrà problemi nell'esecuzione
del codice e nella visualizzazione del risultato finale.
Tutto ok.
Quindi questo richiederà effettivamente uno o due minuti.
Quindi sto solo andando avanti veloce qui e ora.
A presto per il resto dell'esecuzione del codice.
Va bene, sembra che siamo alla fine dell'installazione delle dipendenze di
sistema, come puoi vedere le sta scaricando, installandole raccogliendole con tutti i giusti requisiti.
E in pochi secondi dovrebbe essere fatto.
Destra.
E vediamo, tre, due.
Ci siamo.
Installato tutto con successo.
Non preoccuparti di questi errori qui.
Non avranno alcun impatto sull'esecuzione del codice, ma tutto viene installato con successo proprio come vogliamo.
Tutto ok.
Quindi ora il prossimo passo, molto importante.
Guarda questa nota importante.
Dice che dopo aver installato tutti i Benz, fondamentalmente dopo aver eseguito questa prima cella qui, devi
riavviare il tuo runtime.
Altrimenti otterrai alcuni errori di esecuzione qui.
Quindi facciamolo velocemente.
È molto semplice.
Devi solo fare clic su runtime qui, quindi riavviare runtime e poi.
Sì.
Tutto ok.
Questo ripristinerà il tuo runtime e ora puoi semplicemente eseguire tutte queste celle semplicemente facendo clic sul pulsante di
riproduzione.
Quindi facciamolo, iniziando con questa prima preelaborazione dell'immagine del file.
Tutto ok.
Quindi, prima importiamo le librerie, quindi pre-elaboriamo le immagini con la classe dell'immagine di pre-elaborazione.
E ora siamo già passati all'implementazione della riproduzione dell'esperienza, ovvero questa.
Tutto ok.
Quindi facciamolo.
Prima importiamo le librerie, quindi definiamo un passaggio dell'ambiente.
Quindi facciamo la A. IO. avanzamento su diversi passaggi e con la classe di avanzamento del
passaggio finale esattamente uguale a quello che abbiamo nella cartella.
E poi implementiamo l'esperienza che giochiamo costruendo questa classe di memoria di replay.
Tutto ok.
Tutto bene.
E ora passiamo al terzo fallo.
Questo A. IO. presumo di aver applicato e quindi importiamo prima le librerie.
Tutto ok.
Quindi ci vuole un po 'di tempo qui perché importiamo tutti i moduli della torcia, poi importiamo i
pacchetti per l'apertura e lo facciamo con la palestra e la saggezza, Jim.
E l'involucro va bene.
E poi passiamo alla prima parte qui, Edificio II, dove creeremo il cervello, poi
il corpo e poi assembleremo tutto.
Quindi prima mettiamo a posto il cervello con la classe CNN, poi creiamo il corpo con la classe corpo
softmax e poi facciamo l'IA con una classe.
Tutto ok.
Quindi tutto bene.
E ora siamo pronti per passare alla seconda parte.
Formeremo l'IA con, ovviamente, un Q Learning convoluzionale profondo.
Tutto ok.
Così esecutivo, come quello che abbiamo qui.
Per prima cosa otteniamo l'ambiente doom con i nostri nuovi moduli con doom.
Non preoccuparti di questo.
Questo non è un errore.
Quindi costruiremo l'A. IO. integrando i diversi oggetti da portare in CNN, i corpi del
corpo di Max e l'intero A. IO. contenente il cervello e il corpo.
Tutto ok.
L'ho eseguito?
Sì.
Quindi impostiamo l'esperienza.
Giochiamo con Insteps e la memoria come memoria di replay oggettiva, quindi implementiamo la traccia di
ammissibilità.
Tutto ok.
Per migliorare le prestazioni.
Quindi facciamo la media mobile su cento passi con la classe M a.
E infine, amici miei, siete pronti?
Bene, questo è il momento per la parte molto eccitante in cui addestreremo l'A. IO. più di venti dollari.
Tutto ok.
Quindi vedrai che questo sarà già un po 'lungo.
Sai, ci vorranno tipo, uh, forse una o due ore perché aumento le dimensioni, sentiti libero di
ridurre le emissioni di nuovo a ottanta per ottanta se trovi questo troppo lungo.
Ma credimi, avrai video molto migliori con queste dimensioni.
OK, quindi sei pronto?
Facciamolo in tre a uno.
Tutto ok.
Quindi questo eseguirà il codice dell'addestramento e in pochi secondi dovremmo essere in grado di vedere la
prima epoca, che avrà, ovviamente, una ricompensa negativa.
Ma vedrai che, sai, nel corso delle epoche, la ricompensa aumenterà poco a poco fino
a raggiungere ricompense positive e poi fino a raggiungere centinaia di ricompense.
Bene, miriamo a quello, in realtà.
Speriamo che con ventotto dollari avremo qualche ricompensa finale a qualche centinaio, sai, come 100
o 200 o 300, perché con questi premi, li ho sperimentati effettivamente.
Sì.
In primo luogo, una ricompensa negativa meno novantotto.
Quindi stavo dicendo che con premi intorno a 100, 200, 300, avremo già ottimi risultati.
Sai, vedremo l'AA riuscire a uccidere alcuni mostri o evitarli o, sai,
spostarsi verso il giubbotto.
OK, quindi questo è il primo libro, uno meno novantotto.
E poi sai, vedremo al libro numero due con forse già una ricompensa migliore.
Ma, sai, all'inizio, ovviamente, l'EIA non è addestrato.
Sta esplorando l'ambiente.
Destra.
Ricordi questo compromesso tra apprendimento per rinforzo, esplorazione e sfruttamento?
Bene, all'inizio, l'idea è puramente esplorativa e poi si allenerà e
poi diventerà sempre più piccola, ed è allora che raggiungerà una grande ricompensa.
Quindi va benissimo avere ricompense negative all'inizio.
Forse lo capiremo.
Durante le prime tre epoche, ma poi vedrai che dopo un numero quattro o cinque o
sei, beh, inizieremo a raggiungere ricompense forse positive e poi, si spera, ricompense intorno a 100, 200 o 300.
OK, quindi ci vorrà un po 'di tempo, come ho detto.
Quindi non resteremo qui per due ore, altrimenti finirò le cose da dire.
Quindi quello che farò è metterò una musica divertente o interessante adesso e ci siamo, epoca numero due,
meno 62.
Quindi c'è già qualche miglioramento.
Quello è buono.
Ma vedrai che ci saranno miglioramenti ancora migliori.
Più andiamo avanti nelle epoche.
OK, quindi cosa stavo dicendo?
Sì, ora metterò della bella musica e riprodurrò l'allenamento in modalità accelerata.
E ovviamente ci vediamo alla fine dell'allenamento per vedere i risultati finali.
Tutto ok.
Quindi eccoci qui.
Tre a uno.
Va bene, ed eccoci qui alla fine della formazione, congratulazioni, hai addestrato un modello di apprendimento profondo e
convoluzionale su un'applicazione molto impegnativa, che è giocare al gioco del destino.
Quindi cosa dire?
Bene, come speravamo, abbiamo raggiunto una ricompensa media di oltre 100.
Quindi ciò che è importante dire è, ovviamente, che con più epoche, otterrai ricompense più elevate.
Quindi, se sei pronto, ad esempio, ad addestrare questo modello per di più, sembreranno 100 epoche o
anche di più per ottenere ricompense più circa 300, 400, 500 o persino 1000.
Bene, sentiti libero di farlo.
Ad esempio, puoi lasciarlo correre per la notte mentre dormi.
E quando ti svegli la mattina, ottieni i tuoi risultati migliori.
Nota che puoi anche usare nella GPU di runtime, giusto.
Se cambi il tipo di runtime, cosa che non dovrei fare, perché altrimenti riavvierà il notebook.
Ma nell'acceleratore hardware qui, puoi scegliere GPU o anche Tipu, ma è solo se vuoi,
sai, ottimizzare le prestazioni e fare un allenamento super duro.
Ma qui ho usato solo una cosa classica perché voglio solo mostrarti come eseguire tutto questo.
E ci siamo.
Ora eseguiremo il resto della cartella di lavoro con questo codice extra specifico solo per questo codice,
quel taccuino dove, ovviamente, visualizzeremo AA in azione.
Tutto ok.
Quindi facciamolo.
Per prima cosa importiamo le librerie.
Destra.
Tutto bene.
Quindi stamperemo la forma di input e una serie di possibili azioni.
Tutto ok.
Quindi qui vedremo davvero che abbiamo sette possibili azioni, sai, nell'ambiente del corridoio del
destino.
Quindi questi sono andare avanti, andare indietro, andare a sinistra, andare a destra, sparare e poi forse proteggersi
o altro.
Non so quale sia l'ultima azione, ma qualcosa del genere, queste sono le dimensioni del
frame di input.
Ciò corrisponde all'altezza del telaio.
Ha un'altezza di 240 pixel.
Questo corrisponde alla larghezza del telaio, giusto?
È grande trecentoventi.
E questo corrisponde, sai, al fatto che lavoriamo con immagini colorate e le tre qui corrispondono
ai tre elementi dei nostri canali.
Va bene, allora eseguiamo la cella successiva che mostra un frame dell'ambiente solo per vedere
com'è.
E infatti, ricorda, è utile per vedere l'ambiente con cui stai lavorando.
Destra.
Quindi qui vediamo che siamo nel Dume Corridor.
Ma se vuoi sperimentare altri ambienti qui, in realtà, sai, ricorda, sono
anche nella pagina principale qui.
Giusto qui.
Sì.
Hai tutti gli elenchi degli ambienti, sai, che consiglio di sperimentare.
Quindi, sai, se vuoi dare un'occhiata a un altro, beh, sai, posso mostrarti
in realtà prendiamo questo e poi tornerò in questo corridoio dello zoom.
Destra.
Quindi, se lo sostituisco con questo.
Giusto, e lo eseguo bene, questa volta otterremo tre azioni, ovviamente, è più semplice,
e se lo eseguiamo bene, vedremo questo ambiente, giusto.
Quindi è solo un modo per vedere rapidamente con cosa stai lavorando e per ottenere un'anteprima fondamentalmente di ciò
che l'ACA farà nell'ambiente.
Tutto ok.
Quindi torniamo all'angolo.
Eseguiamolo ora nel caso ne avessimo bisogno per le prossime vendite.
Va bene, destino perfetto, Cawdor.
Ora passiamo alle vendite finali.
Questa è una funzione di supporto che verrà utilizzata per le visualizzazioni.
Quindi eseguiamo la vendita e ora eseguiamo l'idea su un episodio.
E qui sarai in grado di capire il codice perché, sai, fondamentalmente è il processo di,
sai, che fa scorrere l'aria e un episodio completo in cui ad ogni passaggio è in uno stato specifico, giocherà
in azione all'interno lo stato.
Quindi riceverà la ricompensa e raggiungerà la data successiva.
Destra.
Quindi questo è il classico processo MGP, giusto.
Processo decisionale di mercato.
E così ci siamo.
Questo è fatto per un episodio.
Infine, avremo il video del gioco del nostro A. IO. , che è stato addestrato per venti dollari, è
stato in grado di raggiungere più di 100 ricompense, il che ci porterà dei risultati piuttosto buoni, ma forse non raggiungendo
il massimo.
Ma è ok.
Lo sperimenterai da solo.
E ora vorrei che facessi clic su questo per il pulsante qui, perché voglio mostrarti come viene
popolato il video.
Quindi queste sono alcune cartelle contenenti, sai, alcuni elementi come i frame, sai, i frame dei
risultati o alcuni file jasen.
Ma in realtà, ciò che interesserà è il video finale.
E per ottenerlo, dobbiamo solo fare clic sul pulsante di riproduzione qui e vedrai che verrà popolato nella
cartella principale qui.
Da non perdere.
E va bene.
Sai, sembra che la cella sia già stata eseguita, e questo è il caso.
Ma vedrai che tra pochi secondi vedremo un avatar, che è un file video che viene popolato qui.
Apparirà in tipo dieci secondi.
Posso persino fare un conto alla rovescia se vuoi.
Quindi facciamolo.
E dieci, nove, otto, sette, sei, cinque, quattro, tre, due, uno, via.
E ora dovrebbe davvero apparire in pochi secondi.
Sì, ci siamo.
Tutto ok.
Quindi il gameplay dell'agente, quell'idea, questo è il tuo video.
Quindi scarichiamolo e verrà scaricato sul tuo computer, che troverò proprio qui.
Destra.
Questo è il gameplay dell'agente video che Evia si assicura di aprirlo con un lettore video che abbia codec come
VLSI.
Destra.
Non funzionerà con Quick Time Player se utilizzi un Mac, ma funzionerà sicuramente con VLCC.
Quindi diamo un'occhiata.
Ed ecco il video.
Tutto ok.
Quindi fammi solo mettere in pausa qui.
Tutto ok.
Quindi ecco il video.
E come puoi vedere, quindi questa è la dimensione di 256 per 256 del frame.
Quindi, come puoi vedere, non è molto grande.
Destra.
Ecco perché volevo davvero lavorare con queste dimensioni invece di 80 per 80.
Quindi ora diamo un'occhiata al video.
Quindi questa è la A. IO. giocando a Doom in un episodio, e deve evitare che i mostri vengano uccisi.
Deve andare avanti per raggiungere il meglio.
Quindi vediamo come funziona tre a uno.
Va bene, quindi prima si chiude, va avanti, ok, e poi è stato ucciso dai mostri,
ma va comunque bene.
Sai, ha capito che doveva andare avanti verso l'Ovest perché la ricompensa più alta è
buona raggiungendo il giubbotto.
E, naturalmente, sai, se vuoi davvero vedere il video della tua aria che raggiunge il giubbotto
e vince a questa partita, in pratica dovrai allenare l'occhio per più epoche e magari fare qualche altro tipo di miglioramento, come
sintonizzando il tuo cervello della A. IO. o facendo un po 'di regolazione dei parametri, come la regolazione
della velocità di apprendimento.
Bene, hai molte opzioni se qualcuno di voi ottiene un video fantastico o, sai, il video di A. IO. aver raggiunto una
ricompensa di oltre 1000, per esempio.
Bene, sentiti libero di condividerlo nelle domande e risposte.
Sono sicuro che gli altri studenti saranno super felici di riceverlo.
Tutto ok.
Quindi spero che ti sia piaciuto implementare il modello di apprendimento profondo e convoluzionale.
Ora passeremo alla parte successiva, che riguarderà l'implementazione del modello H3C e un
modello ancora migliore e più potente che verrà implementato per giocare al gioco del breakout.
Quindi ci vediamo nella prossima parte.
E fino ad allora, goditi A. IO..