Ciao e benvenuto nella parte super emozionante della nostra creazione, la parte in cui la rendiamo intelligente.
Questo è esattamente quello che succede quando si allena il giorno in cui addestrerò la sua intelligenza
per raggiungere l'obiettivo che volevamo ottenere, raggiungendo il giubbotto senza essere ucciso.
E per fare questo, fondamentalmente addestreremo la rete neurale per produrre le giuste previsioni e quindi
tutto è già pronto perché questi segnali di uscita dal cervello hanno già la
giusta trasmissione al corpo per svolgere le azioni finali.
Quindi, in pratica, ora quello che stiamo per fare è qualcosa che abbiamo già fatto prima.
per categorizzarlo nel senso che il pesi in base a quanto hanno contribuito a quest'ultimo errore.
Prendiamo alcuni lotti casuali dalla memoria per ottenere i nostri input dagli esempi ottenere che le
uscite ottengano che il target calcolhi le previsioni sull'ultima area tra le previsioni e il
target e quindi esegua la propagazione all'indietro
Quindi facciamo tutto questo.
Vedrai come sarà così facile perché abbiamo già tutti gli strumenti per implementare
questo non solo abbiamo gli strumenti di torcia come l'ottimizzatore e le ultime funzioni, ma abbiamo anche tutte le
classi che abbiamo creato prima come il nostro cervello ovviamente che useremo per ottenere le previsioni.
combinati alle parti che gli strumenti renderanno l'allenamento super-performante e quindi alla fine otterremo un'IA superpotente.
Quindi la nostra esperienza riproduce la traccia di eleggibilità dell'implementazione e tutti questi
strumenti
Quindi facciamo in modo che ciò accada.
Facciamo la nostra smart e la prima cosa che faremo ora è ottenere l'ultima funzione a cui
siamo abituati nella formazione quando calcoliamo l'errore e un ottimizzatore.
Questa è la prima cosa che faremo.
Quindi creiamo una variabile per l'ultima funzione.
Chiameremo la perdita e questo sarà uguale alla funzione di perdita MSEE dal modulo finale.
E che MSEE siamo l'ultima funzione che useremo perché fondamentalmente le nostre previsioni sono valori chiave che sai
che stiamo prevedendo i valori fondamentali delle diverse azioni.
E quindi dal momento che questi sono numeri reali, stiamo facendo un po 'di lavoro sulla rete neurale per la
regressione e quindi l'ultima funzione è l'errore CT di media.
Questa è l'ultima funzione che usiamo.
In generale per la regressione.
Va bene ora che abbiamo la nostra ultima funzione. Prendiamo il nostro ottimizzatore.
Così ottimizzato qui che è il Voivode creiamo l'ottimizzatore di Freda.
E prenderemo come al solito.
Per quanto riguarda l'auto a guida autonoma, l'atomizzatore atomico.
Questo è un ottimizzatore molto potente che farà miracoli per l'allenamento.
Quindi prendiamo questo in Adam.
E ricorda che è esattamente ciò che l'auto a guida autonoma dobbiamo inserire due argomenti essenziali.
Il primo è quello che farà la connessione tra l'ottimizzatore e i parametri della nostra
rete neurale.
Questo è il peso dei neuroni del nostro cervello.
E per fare questo prendiamo il nostro cervello che abbiamo chiamato CNN.
Questo è l'oggetto che abbiamo creato per il nostro cervello.
E così la CNN che ricorda i parametri che andiamo e alcune parentesi in modo tale da rendere la connessione tra
l'ottimizzatore e il peso dei neuroni nel cervello della nostra IA.
E poi il secondo argomento è un tasso di apprendimento e questo è dato dal nostro.
E quindi qui dobbiamo fare un aumento minore perché non vogliamo convergere troppo velocemente e vogliamo avere un po
'di accelerazione e quindi buoni modi di apprendimento che possiamo prendere.
Ecco un piccolo che è puntato o uno che è aperto all'1%.
Penso che sia lo stesso che usiamo per l'auto che guida.
Bene, ora abbiamo un atomizzatore di ultima funzione, quindi siamo quasi pronti per iniziare la caduta.
In realtà, inizieremo proprio ora, ma prima di farlo decideremo la dimensione
del numero di epoche che addestreremo.
E quindi nel creare qui una nuova variabile che risponderà a questo numero di abox e diciamo che
è uguale a 100.
Sarà abbastanza per addestrare l'intelligenza artificiale.
E anche questo è il modo in cui riuscirò a raggiungere il miglior modo prima dei 100.
Come 20 o 30.
Vediamo.
Ma per ora prendiamo 100.
E se ne abbiamo bisogno lo aumenteremo.
Ma non penso che sarà necessario.
OK, ora che abbiamo il nostro numero di airbag possiamo iniziare a fare il follow up.
Conoscete questo principale per il ciclo dell'addestramento quando ci alleniamo su Xbox.
Quindi per allora è davvero fattibile sarà un libro.
Questo è ciò che scegliamo per il suo ritorno.
Ora ovviamente useremo la funzione range per dire che vogliamo passare dal primo al numero di
libri più uno perché
ricordare che il limite superiore di un intervallo non lo è.
Quindi vogliamo salire a 100.
Bene, dobbiamo specificare ed essere il più positivo per salire a 100.
Va bene così CULLEN E ora entriamo nel circuito.
Va bene quindi la prima cosa che faremo è di fare 200 passi di 10 passi.
Quindi ogni epoca sarà di 200 punti uno dopo l'altro di 10 passi e per fare ciò abbiamo questa funzione un passo della
nostra classe di replay dell'esperienza e quindi di usare questa funzione che è in realtà
un metodo perché la otterremo dal nostro oggetto di memoria che è un oggetto della classe di memoria di replay
per generare queste duecento corse di 10 passi.
Bene, dobbiamo dire che il nostro oggetto di memoria che ricordo di aver creato proprio qui la memoria è un oggetto per
riprodurre la classe di memoria con passaggi di 10 passi e una capacità di 10000.
Abbiamo creato questo oggetto e da questo oggetto che prendiamo.
Bene, questa funzione passo passo esegue passi e specifichiamo duecento serie consecutive di 10 passi.
Quindi aggiungerò solo ogni epoca.
Praticamente cento passi.
Ora che abbiamo questi 200 passi in esecuzione ad ogni epoca.
Bene, è tempo di campionare alcuni lotti da queste esecuzioni e di campionare questi lotti.
Abbiamo un'altra funzione dalla nostra memoria che è un campione di batch e che genererà esattamente alcuni lotti
da queste duecento corse.
Ma ricorda che questi lotti sono questa volta in serie di serie di transizioni.
rispetto a prima, dove questa volta i lotti erano solo alcuni lotti di transizioni singole.
C'è una serie di 10 passi
Ci saranno lotti di dieci passaggi 10 passaggi e quindi ora è il momento di uscire
dalla nostra memoria.
Questi lotti casuali.
E per ottenerli abbiamo usato la semplice funzione batch a cui dobbiamo applicare la dimensione del
batch per la dimensione del batch, dove possiamo prendere 32 o anche 64 o addirittura 128.
Ricorda che questo dice che è una pratica comune usare 32.
Questo è quello che vedrai in generale nelle architetture delle reti neurali quando fai qualche apprendimento Bachche.
Ma questa volta è abbastanza diverso.
Stavamo solo inviando alcuni lotti di dieci passaggi.
Quindi è meglio prendere panchine con dimensioni più grandi.
Ecco perché possiamo prendere 64 o 128.
Quindi ne prenderemo 128 e in realtà questo sarà all'interno di un Fulop perché vogliamo prendere diversi batch e
li stiamo portando in ciò che viene restituito dalla funzione batch di esempio.
Quindi questo Fulop per quello in memoria sample 128 significa che ogni 128 passi Bene la nostra memoria ci
darà una dimensione batch 128 che conterrà in realtà gli ultimi 128 passi che sono stati appena eseguiti.
Stiamo solo ottenendo alcuni lotti di dimensioni 128 e l'apprendimento sta per accadere su questi lotti.
E oltre a questi lotti, avremo i vassoi di idoneità che sai imparare per
imparare ogni dieci passi.
Va bene così ora dentro questo ciclo che sta ancora accadendo in un'epoca.
Ma ora questa volta siamo in un gruppo specifico e quindi ora la prima cosa che faremo è
ottenere i nostri input e i nostri obiettivi separatamente.
E quello che ti ho detto è che puoi farlo con uno degli strumenti che abbiamo implementato, che è trucchi di eligibility come
puoi vedere qui.
Questa funzione di traccia illeggibile accetta un batch come input.
Ora dobbiamo eseguire il batch e restituire come output gli input e gli obiettivi.
Quindi adesso quello che possiamo semplicemente fare è creare due nuove variabili che
saranno gli input e gli obiettivi e questi input non possono dirci esattamente ciò che restituisce questa funzione di traccia LGBTI applicata al batch
per applicare questa funzione al batch del nostro ciclo continuo.
E quindi quello che faremo è solo la traccia di eleggibilità applicata al lotto dei nostri.
Tutto ok.
modo che ci ottenga l'input e le toilette ma nella torcia PI c'è sempre qualcosa in più che dobbiamo fare.
In
E naturalmente questo è per convertire gli input della rete neurale e anche l'obiettivo in alcune variabili.
Ma né c'è nulla di nuovo.
Noi sappiamo come farlo.
Possiamo farlo in questo modo prendiamo i nostri input quindi i nostri obiettivi.
E mentre saranno uguali agli input variabili che è per gli input e gli obiettivi variabili ed è lì
che gli obiettivi.
del cervello vengono convertiti in alcune variabili torche e gli obiettivi vengono anche convertiti in alcune variabili.
Va bene così gli ingressi
Quindi ora possiamo ottenere gli input nella rete neurale.
E perché abbiamo bisogno di farlo.
Questo perché il prossimo passo è ottenere le previsioni che abbiamo in target.
Ora ovviamente abbiamo bisogno delle nostre previsioni perché poi ciò che accade è che calcoleremo la
perdita tra le previsioni e gli obiettivi.
Prendiamo queste previsioni per ottenere allora.
il nostro cervello che è la nostra rete di notizie costituzionale della CNN e applicarlo ai nostri input.
Bene, di nuovo questo è così semplice ora abbiamo solo bisogno di prendere
Eccoci.
Gli ingressi entrano nella rete neurale e la rete neurale emetterà le previsioni.
Perfezionare.
Quindi ora abbiamo le protezioni che dobbiamo indirizzare in modo da poter ottenere le leggi e questo è il prossimo passo.
Introdurremo una nuova variabile perché al momento avremo l'ultimo errore diverso
dall'ultima funzione, perché usiamo la funzione Leggi per ottenere l'ultimo errore.
otterremo con l'ultima funzione applicata alle nostre previsioni e gli obiettivi che andremo a vedere come tutto sia regolare.
Quindi l'ultimo errore qui e che lo
Ora tutto è logico.
Riceviamo prima gli obiettivi, poi grazie agli input otteniamo le previsioni e poi grazie alle
previsioni e ai servizi igienici otteniamo l'ultimo errore.
Quindi molto logico e scorrevole.
E ora qual è il prossimo passo.
che abbiamo l'ultimo possiamo tornare a propagare quest'ultimo errore nella rete neurale per fare pesi e lo facciamo con
la griglia a gas nel centro e per ottenere dei gradi nel senso in cui abbiamo bisogno del nostro ottimizzatore.
Bene, lo stesso percorso logico ora
Ma lo abbiamo già qui.
Il nostro atomizzatore Adam.
Ma ora a questo punto ricorda cosa dovevamo fare.
Abbiamo dovuto inizializzarlo e inizializzarlo.
Ricorda che prendiamo il nostro oggetto optimizer.
E poi applichiamo il metodo zero grette.
Andiamo, non dimentichiamo la parentesi che lo ha inizializzato.
E ora il prossimo passo è tornare a propagare l'ultimo errore nella
nuova rete e, per fare questo, prendiamo l'ultimo errore e applichiamo il metodo all'indietro.
Quindi è esattamente per propagare la propagazione all'indietro.
E poi finalmente ora che l'ultimo errore è tornato propagato in quello nuovo che funziona bene possiamo aggiornare
i pesi.
Stiamo ancora diventando grandiosi nel senso e per fare questo ricordiamo che prendiamo il nostro ottimizzatore e poi
applichiamo il metodo step.
Eccoci.
I pesi ora sono datati.
Come ti ho detto, non solo l'abbiamo già fatto, ma ora sembra così semplice e naturale.
Quindi ora faremo qualcosa di divertente.
Stamperemo la media in cui lavoriamo ogni epoca.
Quindi sai che possiamo tenere traccia di come l'IA sta andando come sta andando l'allenamento.
e in primo luogo c'è questa fase di sfruttamento, quindi la media non aumenterebbe all'inizio
ma poi, una volta raggiunta la fase di sfruttamento, vedremo la ricompensa media decisamente aumentare e
aumenterà fino ad un certo livello che è quando raggiunge il giubbetto il più velocemente possibile.
Vogliamo vedere la ricompensa media aumentare durante le fasi delle epoche
Quindi iniziamo con la premessa.
Sai che stiamo facendo questo in un modo, ma dobbiamo tornare al ciclo qui stampato e poi
andremo a stampare.
Bene, prima, ma poi la percentuale s perché convertiremo tutto in una stringa che è meglio.
E poi aggiungeremo la media che eravamo e quindi aggiungiamo anche la percentuale S, quindi
chiuderemo la quotazione e aggiungiamo una percentuale.
che possiamo mettere le variabili che saranno questa prima persona, visto che quella è l'epoca qui.
E dall'altra parte sai
E la seconda variabile corrisponde alla parola media che verrà calcolata in questo momento.
Quindi la parola media praticabile non esiste ancora.
Lo creeremo proprio ora.
Quindi useremo Esti nostra epoca anche se il numero da convertire nel suo treno migliorerà
e aggiungeremo s t r che sarà la ricompensa media.
E quindi creeremo una variabile che chiameremo ricompensa Viji.
E ora stiamo andando a creare questa variabile e calcolarla.
OK, quindi facciamolo.
Questa è l'unica cosa che abbiamo dovuto lasciare all'EPOC che abbiamo già.
Ora calcoliamo la parola media e abbiamo bisogno di calcolarla proprio qui.
Siamo ancora al corrente, ma siamo scapoli perché ora abbiamo i nostri campioni di patch e abbiamo un allenamento in
corso nel gruppo.
Ma ora quello per la propagazione Più la propagazione all'indietro viene eseguita nel batch.
che possiamo fare con i nostri passi oggetto perché il nostro oggetto di livello contiene questa funzione
noi quali passi che ci permettono di ottenere i premi cumulativi che avvengono nei passaggi che conosci e passi corrono.
Quindi stiamo tornando nel ciclo epoche e ora possiamo calcolare le parole cumulative
Quindi lo useremo in questo momento per aggiornare i nuovi premi dei passaggi e quindi aggiorneremo l'oggetto
medio mobile aggiungendo le parole cumulative allo spostamento di ogni oggetto.
E poi calcoliamo la media ed è così che otterremo la media di ciò che pensiamo sia
la prima cosa di cui abbiamo bisogno è la parola Stribild.
Quindi chiamiamoli come passi delle parole e poi, come abbiamo detto, prendiamo i nostri oggetti di fine passo che sono stati richiamati qui e
oggetto della classe di avanzamento del passo dalla nostra ripetizione dell'esperienza per gli oggetti di istanza.
Quindi aggiungiamo passi alle parole e poi alcune parentesi.
Tutto ok.
Questo ci porterà i nuovi premi cumulativi dei passaggi.
Va bene, ma poi abbiamo bisogno di aggiungere questi nuovi premi cumulativi nel nostro oggetto mobile medio e per
fare questo abbiamo un metodo questa volta nella classe media mobile che è questo metodo che è
molto semplice prendiamo il nostro oggetto mobile medio che abbiamo creato qui con 100 passi quindi useremo il nostro
metodo di aggiunta.
E poi in Admetus mettiamo i nostri passi di parole e questo aggiungerà i premi dei passaggi
nella media mobile.
Va bene e finalmente possiamo calcolare la parola media e questo è bene, sai che è la
variabile qui.
Questo è ciò che sarà uguale alla parola media e per ottenerlo abbiamo solo bisogno di usare il metodo
medio questa volta dal nostro oggetto mobile medio e cioè facciamo e diciamo quella media per dirlo perché la nostra media
mobile era già stata aggiornata con i nuovi passi di parole che abbiamo appena
aggiunto al metodo Add.
Ora abbiamo la nostra parola media in modo che popolerà qui.
E questo verrà stampato ogni ora.
Quindi sarà molto eccitante perché ogni episodio seguiremo come va
l'aria.
Sai che vedremo se la parola media sta aumentando.
E a proposito di qualcosa di eccitante.
Ciò che è molto eccitante è che so che raggiunge il gilet di sicuro quando raggiunge il 1500.
Quindi quello che faremo ora è che se la ricompensa media raggiunge il 1500.
Ora se sta superando il 1500 Bene, stamperemo qualcosa di nuovo e questa sarà
la stampa finale.
La stampa di grande successo che stamperemo che possiamo dire.
Congratulazioni alla tua intelligenza artificiale perché la tua IA vince.
Sarebbe fantastico se ciò accadesse se avessimo raggiunto una parola non media.
Più grande di 1500.
Possiamo essere sicuri al 100 percento che l'intelligenza artificiale sia la migliore.
Forse è un po 'più basso di questo, ma ho fatto esperimenti con 1000 e a volte non
sono avanzato ma con 1500 se ci arriviamo bene l'AI vince di sicuro.
Quindi lo vedremo dopo.
Va bene, sarebbe molto eccitante.
E poi questa è solo la fine della curva.
Dobbiamo specificare che vogliamo iniziare la formazione.
Se ciò accade, sai se raggiunge la vasta ricchezza che non ha più bisogno di allenare.
Quindi finiremo tutto il processo con una pausa se raggiungiamo un mondo medio di 1500.
Possiamo terminare l'intero processo e per fare questo possiamo usare questa pausa qui.
Tutto ok.
E poi un'ultima cosa da fare quando termina il gioco quando l'IA vince.
Bene, possiamo chiudere l'ambiente e quindi aggiungere solo un'ultima azione qui
che chiamerò chiudere l'ambiente doom.
Quindi per fare questo prendiamo il nostro ambiente Dume che abbiamo chiamato Doom e ricordiamo.
E poi possiamo solo aggiungere quello vicino e questo è tutto ciò che chiuderemo semplicemente l'ambiente che è meglio
fare una volta finito il gioco.
Va bene, quindi abbiamo finito.
Quindi sono così entusiasta di vedere i risultati e in realtà avrò una sorpresa per te nel prossimo
tutorial mentre guardo i risultati.
Sarà piuttosto eccitante.
E così ora immagino sia arrivato il momento di giocarci e divertirci.
Quindi speriamo di poter raggiungere questo giubbotto il più velocemente possibile.
Questo è l'obiettivo di questo nuovo ambiente.
Va bene, divertiamoci.
Preparati un buon caffè o un buon tè.
Ora puoi stare comodamente seduto sulla nostra sedia e guardare alcuni video molto belli dei nostri aerei.
Facciamolo nel prossimo tutorial.
E fino ad allora goditi l'intelligenza artificiale.