Ciao e bentornati al corso sull'intelligenza artificiale.
E finalmente siamo alla roba divertente che stiamo imparando profondamente.
Va bene, diamo un'occhiata.
Bruce abbiamo parlato di guadagni killer e di cosa si tratta.
E abbiamo imparato a conoscere l'ambiente dell'Agent e come l'agente guarderà allo stato.
O lei è nel prendere un'azione ottenere una ricompensa.
Entra in un nuovo stato e sulla base di quel ciclo di feedback continueranno ad agire e
impareranno da quello.
Capire quali sono le migliori azioni da intraprendere.
E così abbiamo guardato questo esempio di base di un labirinto.
Abbiamo capito che mentre l'Asia esplora l'ambiente capisce quali siano i valori degli stati.
Poi siamo passati dal trattare con i valori degli stati a trattare con i
valori delle azioni con i valori e poi con A-Basin che abbiamo capito come funzionano i piani in ambienti non sarcastici e
come funzionano le politiche in ambienti stocastici e questo è un esempio di una politica.
Questo è un breve riassunto di tutto ciò che abbiamo discusso nell'apprendimento di base.
un'occhiata a come questo può essere portato al livello successivo attraverso l'apprendimento profondo attraverso l'aggiunta dell'apprendimento profondo.
E ora diamo
OK.
Quindi questo è il nostro ambiente e quello che faremo ora è che aggiungeremo invece di fare
solo calcoli di base in questa matrice che abbiamo, che è piuttosto semplice.
Quello che faremo è aggiungere due assi che aggiungono un asse xey o li
chiameremo x1 e x2.
Solo per rendere le cose ancora più generali.
E qui abbiamo il numero reale della riga, le colonne 1 2 tre 4 che governeranno le righe da 1 a 3.
E così ora ogni singolo stato può essere descritto da una coppia di due valori x1 e x2 in modo che
uno qualsiasi di questi quadrati in cui l'agente possa essere inserito possa essere descritto da x1 x2.
Quindi per esempio adesso è nel quadrato con X1 uguale a 1 e x 2 uguale a 2.
E quindi non è un modo in cui possiamo sfuggire nel tuo significato quadrato che possiamo descrivere nel tuo stato.
Quindi, naturalmente, questa è una versione molto semplificata di un ambiente che descrive gli Stati.
Ma tuttavia funziona in questo caso.
Ciò significa che ora possiamo alimentare questi stati in una rete neurale.
numero uno x e due e due per poter procedere correttamente con questa sezione.
A proposito, vorrei solo ricordare che alla fine del corso degli annessi positivi abbiamo un
È altamente consigliabile controllare l'inaccessibile che si trova sulla rete neurale artificiale, in modo
da capire come funzionano in modo che non possiamo approfondire qui e possiamo semplicemente
sfruttare i vantaggi della conoscenza di come funzionano le reti neurali artificiali quindi nutriamo queste informazioni sullo
stato in una rete neurale e quindi elaborerà queste informazioni X1 e x2 a seconda della struttura della rete neurale che
potrebbe avere più livelli nascosti e così via.
Quindi questo è qualcosa che scoprirai nei tutorial pratici ma alla fine struttureremo in modo tale
da sputare per i valori e questi quattro valori saranno in realtà il nostro valore Q.
Quindi i valori che determinano quale azione dobbiamo prendere e il non fare in questo tutorial vedranno esattamente
come questi valori chiave sono usati per decidere quale azione è intrapresa.
Ma il punto principale qui è che non guardiamo più a questo labirinto da una prospettiva di apprendimento.
Ora stiamo prendendo gli stati del labirinto e li stiamo alimentando in una rete neurale profonda per
ottenere questi cubicoli e.
E alla fine della giornata avremo ancora un'azione che capiremo ancora quale
azione dobbiamo intraprendere e discuteremo di tutto questo in modo più dettagliato ma la domanda in
questo momento è perché, perché? facciamo tutto questo perché l'abbiamo chiamato.
Perché rendere le cose molto più complicate quando quell'approccio iniziale di apprendimento funzionava
già bene.
La ragione è che l'apprendimento stava funzionando in questo ambiente molto semplicistico e stiamo continuando a trattare
per ora con questo ambiente molto semplicistico al fine di comprendere meglio i concetti.
Ma allo stesso tempo il semplice apprendimento di Kial non funzionerà più in ambienti più complessi e
parliamo ad esempio delle auto che guidano da soli che creeranno o giocheranno a Doom quando l'intelligenza
artificiale sta giocando a Doom o altri giochi Atari come il breakout o persino auto a guida
automatica e approcci di rinforzo più avanzati come i robot che camminano intorno e che eseguono azioni in tutti
quei casi in cui l'apprendimento è insufficiente non è forte non è abbastanza potente per
essere in grado di padroneggiare quelle sfide.
E proprio come abbiamo visto nel corso di deep learning se sei stato nella nostra disciplina o se hai fatto
le sezioni di allegato su x numero uno e X-2 saprai che l'apprendimento profondo è di gran lunga superiore a
qualsiasi tipo di apprendimento automatico e tanto meno un semplice apprendimento.
Ed è per questo che stiamo sfruttando il potere dell'apprendimento profondo qui,
quindi forniamo informazioni sull'ambiente come un vettore di valori.
profonda e quindi lo stiamo usando per eseguire le azioni che vogliamo decidere quali azioni saranno intraprese dagli agenti.
In questo caso, è sufficiente utilizzarlo in una rete neurale
Questo è un po 'come una panoramica di alto livello sul perché lo stiamo facendo.
E ora diamo un'occhiata in modo più dettagliato a cosa succede al concetto di apprendimento
fresco quando trasferiamo quando facciamo la trasformazione o passiamo dal semplice apprendimento al Killary profondo.
Quindi, come hai visto nei precedenti tutorial di intuizione, abbiamo avuto una diapositiva come questa che è il fondamento
dell'apprendimento della differenza temporale.
Questa è la formula per la differenza temporale e fondamentalmente. Quindi passiamo attraverso.
Quindi, in pratica, avevamo un agente che si trovava in questo stato da quelle parti e che indica la freccia blu.
E stavamo capendo come funziona la differenza temporale per questo valore, per esempio, salendo.
E quindi quello che abbiamo visto qui prima era nel semplice Killary, non l'apprendimento profondo è nel semplice
killer.
Quello che abbiamo visto è stato prima che l'agente avesse un valore di tonalità successivo che aveva appreso su questa azione
di salire.
E così poi decise di prendere l'inganno per salire.
E subito dopo aver preso la sua azione ottiene una ricompensa per aver intrapreso questa azione in questo stato.
che può prendere un primo nel nuovo stato come stampa e leggere moltiplicato per il fattore DK di gamma.
E questa è la ricompensa più ora che può valutare il valore dello stato attuale in cui è il massimo
di tutti i nuovi valori q di tutto il cubo delle nuove azioni
Quindi questo è essenzialmente lo spunto del nuovo valore del cubo o del tipo del valore del cubo empirico
che ha appena ricevuto per compiere quell'azione.
E idealmente questi due dovrebbero essere uguali.
Quindi il vero valore di Q che aveva nella sua memoria riguardo a questa azione in questo
stato dovrebbe equivalere alla ricompensa reale. Più la gamma ha il valore dello stato in cui è finito.
ciò che sei dopo meno quello che ha ottenuto in mente quello che si aspettava.
E quindi è così che calcoliamo la differenza temporale che prendiamo
Sottrai l'uno dall'altro.
Questa è una differenza temporale.
E poi usi il tuo tasso di apprendimento Alpha per regolare il tuo valore q il tuo nuovo valore q per la differenza
temporale ma con un coefficiente di Alpha.
Questa è l'essenza dell'apprendimento semplice.
Ora diamo un'occhiata a come cambia in Killary e quindi lavoreremo ancora con
la diapositiva, ma vedremo esattamente cosa sta succedendo.
Quindi in un apprendimento profondo la rete neuronale predice per Valis come abbiamo visto nel precedente e come
vedremo.
Donna Citronelle la rete neurale prevede i valori o potrebbe prevedere più valori di più
azioni possibili in un determinato stato.
Ma in questo caso sappiamo che ci sono solo quattro azioni da fare.
E così la rete neuronale predice quattro di questi valori, quindi non ci sarà fine a una situazione di apprendimento profondo, è importante
che non ci sia né prima né dopo.
Ed è così che lo sapremo un po 'meglio.
Quindi la rete neurale predice quattro di questi valori e si confronterà non con quello che
accadrà dopo, ma la rete neuronale si confronterà con questo valore esatto ma è il valore che è
stato calcolato nel passaggio precedente.
Quindi nel momento precedente in cui l'agente era in questo esatto quadrato.
Diciamo che non so che tempo fa l'agente era di nuovo in questo quadrato esatto
e ha calcolato questo valore in precedenza.
Quindi nel tempo passato molto tempo fa l'agente ha calcolato questo valore, quindi gli agenti hanno memorizzato questo valore
per il futuro e ora il futuro è arrivato.
Quindi ora è di nuovo nel quadrato e ora ha questi valori cubici che è previsto e uno di
questi è per i quattro in ascesa.
Quindi ora quello che sta per fare è confrontare il valore previsto di Q con questo valore che ha
registrato dal passaggio precedente e capirà esattamente perché questo è importante in questo momento, quindi è
importante capire qui.
Non c'è prima un ufficiale in questa specifica casella in questo momento specifico.
lo confrontiamo con questo valore che aveva dalla volta precedente dal momento in cui era in
questa piazza, valutando tutte le situazioni e come il precedente tempo in cui ha effettivamente eseguito questa azione.
Stiamo prendendo il valore Q che ha predetto usando la rete neurale questa volta e
Quindi eccoci.
Ora diamo un'occhiata a come tutto questo funziona nella rete neurale e perché.
Perché è come so che sembra un po 'complicato in questo momento, ma lo scomporremo in termini semplici solo in
un secondo.
Quindi questo sulla tua rete che stiamo alimentando negli stati dell'ambiente nella rete neurale
sta attraversando i livelli nascosti che sta uscendo con queste uscite Q1 Q2 Q3 Q4.
quello stato specifico questi sono i valori dei cubi che la rete neurale sta prevedendo per le possibili azioni.
In
Quelli sono i cumuli.
Quindi stiamo apparendo come target e questi obiettivi esistono esattamente così se torniamo qui questo è il
target quindi questo è il valore che era previsto.
E poi, ma sappiamo anche che abbiamo un bersaglio dall'ultima volta che eravamo in piazza.
Abbiamo un obiettivo per questa stessa azione, che è per esempio.
Quindi qui abbiamo un obiettivo e confronteremo il Q1 rispetto a quell'obiettivo che stiamo confrontando
il secondo trimestre rispetto a quello che abbiamo ottenuto dal precedente terzo trimestre rispetto a un target Q4 rispetto al target.
E così questa è la parte in cui la rete neurale o l'agente sta ora imparando attraverso l'apprendimento
profondo su come andare meglio.
E il punto chiave qui è che stiamo ancora applicando un apprendimento interessante, ma la risposta ai concetti è semplice: impari
ad apprendere attraverso differenze temporali che sono piuttosto semplici e che abbiamo già discusso
e che sappiamo bene perché no.
Ma allo stesso tempo nell'apprendimento profondo, come fanno le reti neuronali a imparare le reti neurali imparando attraverso la
regolazione dei pesi.
adattare i concetti di rinforzo ai concetti di semplice uccisione imparando come funzionano le reti neurali.
Quindi dobbiamo
E questo attraverso l'aggiornamento dei loro pesi.
E quindi questo è quello che stiamo cercando di capire qui come adattiamo
il concetto di differenza temporale alla tua rete in modo da poter sfruttare tutta la potenza delle reti neurali.
Finora abbiamo ottenuto questo, così entriamo nel nostro stato di ambiente qui mentre un vettore attraversa una rete neurale otteniamo
previsioni di valori chiave e quindi dal momento in cui l'agente si trovava in quello stato.
Abbiamo questi nuovi obiettivi per target uno due tre e quattro per ciascuna di queste rispettive azioni.
E così ora stiamo lavorando.
OK, confrontiamole ognuna con ciascuna.
E da qui è diventato piuttosto semplice se sei in grado di accelerare con le reti neurali.
Ancora una volta è su un Anax.
Numero uno, calcoleremo una perdita che è qui e ci accingiamo a centrare questo
Q meno questo.
Stiamo andando a quadrare così la differenza quadrata di ognuno di questi e
li sommeremo.
differenze al quadrato di questi valori e dei loro obiettivi e li invieremo e questa sarà una perdita.
Quindi prendiamo la somma delle
E idealmente, proprio come avevamo fatto nella differenza temporale, imparando così se torniamo indietro
per un secondo ricordiamo che abbiamo detto Idealmente vogliamo che questo sia uguale a questo, quindi vogliamo
che la differenza temporale sia zero, quindi questo significa che fondamentalmente l'agente è predire esattamente esattamente quello che sai
che il valore Q è che l'agente sta predicendo esattamente o che ha e la memoria è esattamente
descrittiva dell'ambiente e quindi l'agente non può mai avere l'ambiente abbastanza bene.
Non ci sono sorprese non c'è no non c'è s. a finché una differenza temporale è un pilota altamente
positivo o altamente negativo.
Quindi abbiamo delle sorprese.
Ma se le differenze generali sono pari a zero, allora conosce l'ambiente così bene da poter
prevedere cosa sta succedendo e può farlo e quindi la sua politica sarà molto buona e sarà in grado di navigare.
Ecco.
La stessa cosa è che vogliamo che questa legge sia il più vicino possibile a zero, suppongo il più piccolo possibile.
la parte in cui sfrutteremo il vero potere della rete neurale, quindi prendiamo questa perdita e useremo la propagazione o
il bastone come discesa del gradiente per prendere questa perdita e passarla attraverso la rete
di back o back propagata attraverso una rete e attraverso per lanciare una data grande e decente i pesi.
E questo è il motivo per cui ora andremo a questo è
Tutte queste sinossi nella rete in modo che la prossima volta che passiamo attraverso questa rete sia già un po
'più descrittiva dell'ambiente e questo è esattamente ciò che siamo.
Quindi ecco qui se si torna indietro si calcolano le perdite Kalka e si indovina si dimostrano propagatori per la rete
i pesi vengono aggiornati.
qui succede ancora e ancora qui succede di nuovo e così via e così e continua ad
accadere ed è così che questo agente apprende o fondamentalmente ora la rete neurale che è il cervello
dell'agente sta imparando sta diventando sempre più più descrittivo dell'ambiente e quindi l'agente è in grado di navigare l'ambiente.
Poi la prossima volta che arriviamo
Quando diciamo che l'ambiente descrittivo significa fondamentalmente che quando inseriamo gli stati dell'ambiente in cui si
trova questo agente, è più probabile che ci avviciniamo sempre di più ai valori di cue effettivi e ciò accade perché
i valori dei cubi che vogliamo trovare sono quelli giusti azione e questo accade perché
questi nuovi obiettivi sono in realtà derivati ​​empiricamente, così lui ogni giorno come trova questi obiettivi carini.
Questo è davvero lì così lui osserva in realtà.
OK, una volta che faccio questo passo, qual è il premio che ottengo.
E poi quali sono i valori di questo stato.
La stessa cosa che abbiamo visto in precedenza nell'apprendimento Q e nell'intuizione dell'apprendimento semplice.
Quindi lo impara attraverso tentativi ed errori e poi costruisce la sua rete o così
è in modo tale che i valori previsti siano vicini e vicini.
Consumare quell'obiettivo.
I valori di Q sono molto simili al concetto che abbiamo discusso qui nel semplice apprendimento della differenza
temporale del semplice algoritmo di apprendimento delle abilità.
Quindi eccoti.
Ecco come impara l'agente.
Quindi siamo qui.
E questa è la parte di apprendimento.