WEBVTT

00:00.660 --> 00:03.920
Ciao e bentornati al corso sull'intelligenza artificiale.

00:03.930 --> 00:09.440
E finalmente siamo alla roba divertente che stiamo imparando profondamente.

00:09.450 --> 00:10.660
Va bene, diamo un'occhiata.

00:10.720 --> 00:14.100
Bruce abbiamo parlato di guadagni killer e di cosa si tratta.

00:14.140 --> 00:20.160
E abbiamo imparato a conoscere l'ambiente dell'Agent e come l'agente guarderà allo stato.

00:20.210 --> 00:23.620
O lei è nel prendere un'azione ottenere una ricompensa.

00:23.640 --> 00:28.610
Entra in un nuovo stato e sulla base di quel ciclo di feedback continueranno ad agire e

00:28.610 --> 00:29.460
impareranno da quello.

00:29.460 --> 00:32.310
Capire quali sono le migliori azioni da intraprendere.

00:32.310 --> 00:35.040
E così abbiamo guardato questo esempio di base di un labirinto.

00:35.040 --> 00:40.550
Abbiamo capito che mentre l'Asia esplora l'ambiente capisce quali siano i valori degli stati.

00:40.560 --> 00:45.150
Poi siamo passati dal trattare con i valori degli stati a trattare con i

00:45.150 --> 00:52.230
valori delle azioni con i valori e poi con A-Basin che abbiamo capito come funzionano i piani in ambienti non sarcastici e

00:52.560 --> 00:57.070
come funzionano le politiche in ambienti stocastici e questo è un esempio di una politica.

00:57.120 --> 01:01.340
Questo è un breve riassunto di tutto ciò che abbiamo discusso nell'apprendimento di base.

01:01.450 --> 01:07.230
un'occhiata a come questo può essere portato al livello successivo attraverso l'apprendimento profondo attraverso l'aggiunta dell'apprendimento profondo.

01:07.230 --> 01:08.080
E ora diamo

01:08.260 --> 01:08.510
OK.

01:08.520 --> 01:16.110
Quindi questo è il nostro ambiente e quello che faremo ora è che aggiungeremo invece di fare

01:16.110 --> 01:21.860
solo calcoli di base in questa matrice che abbiamo, che è piuttosto semplice.

01:21.870 --> 01:26.970
Quello che faremo è aggiungere due assi che aggiungono un asse xey o li

01:27.090 --> 01:28.480
chiameremo x1 e x2.

01:28.560 --> 01:30.430
Solo per rendere le cose ancora più generali.

01:30.480 --> 01:36.830
E qui abbiamo il numero reale della riga, le colonne 1 2 tre 4 che governeranno le righe da 1 a 3.

01:36.960 --> 01:44.730
E così ora ogni singolo stato può essere descritto da una coppia di due valori x1 e x2 in modo che

01:44.730 --> 01:50.940
uno qualsiasi di questi quadrati in cui l'agente possa essere inserito possa essere descritto da x1 x2.

01:50.940 --> 01:58.280
Quindi per esempio adesso è nel quadrato con X1 uguale a 1 e x 2 uguale a 2.

01:58.470 --> 02:03.430
E quindi non è un modo in cui possiamo sfuggire nel tuo significato quadrato che possiamo descrivere nel tuo stato.

02:03.480 --> 02:08.330
Quindi, naturalmente, questa è una versione molto semplificata di un ambiente che descrive gli Stati.

02:08.340 --> 02:10.110
Ma tuttavia funziona in questo caso.

02:10.290 --> 02:17.260
Ciò significa che ora possiamo alimentare questi stati in una rete neurale.

02:17.400 --> 02:21.830
numero uno x e due e due per poter procedere correttamente con questa sezione.

02:21.830 --> 02:26.880
A proposito, vorrei solo ricordare che alla fine del corso degli annessi positivi abbiamo un

02:26.970 --> 02:32.280
È altamente consigliabile controllare l'inaccessibile che si trova sulla rete neurale artificiale, in modo

02:32.280 --> 02:37.470
da capire come funzionano in modo che non possiamo approfondire qui e possiamo semplicemente

02:37.470 --> 02:43.800
sfruttare i vantaggi della conoscenza di come funzionano le reti neurali artificiali quindi nutriamo queste informazioni sullo

02:43.830 --> 02:51.870
stato in una rete neurale e quindi elaborerà queste informazioni X1 e x2 a seconda della struttura della rete neurale che

02:51.870 --> 02:55.380
potrebbe avere più livelli nascosti e così via.

02:55.380 --> 03:00.900
Quindi questo è qualcosa che scoprirai nei tutorial pratici ma alla fine struttureremo in modo tale

03:00.900 --> 03:06.570
da sputare per i valori e questi quattro valori saranno in realtà il nostro valore Q.

03:06.570 --> 03:11.790
Quindi i valori che determinano quale azione dobbiamo prendere e il non fare in questo tutorial vedranno esattamente

03:11.790 --> 03:15.220
come questi valori chiave sono usati per decidere quale azione è intrapresa.

03:15.240 --> 03:22.490
Ma il punto principale qui è che non guardiamo più a questo labirinto da una prospettiva di apprendimento.

03:22.650 --> 03:29.760
Ora stiamo prendendo gli stati del labirinto e li stiamo alimentando in una rete neurale profonda per

03:29.820 --> 03:31.360
ottenere questi cubicoli e.

03:31.410 --> 03:35.080
E alla fine della giornata avremo ancora un'azione che capiremo ancora quale

03:35.150 --> 03:39.900
azione dobbiamo intraprendere e discuteremo di tutto questo in modo più dettagliato ma la domanda in

03:39.900 --> 03:42.990
questo momento è perché, perché? facciamo tutto questo perché l'abbiamo chiamato.

03:43.200 --> 03:47.990
Perché rendere le cose molto più complicate quando quell'approccio iniziale di apprendimento funzionava

03:48.280 --> 03:48.990
già bene.

03:49.170 --> 03:54.980
La ragione è che l'apprendimento stava funzionando in questo ambiente molto semplicistico e stiamo continuando a trattare

03:54.990 --> 03:59.830
per ora con questo ambiente molto semplicistico al fine di comprendere meglio i concetti.

04:00.000 --> 04:06.220
Ma allo stesso tempo il semplice apprendimento di Kial non funzionerà più in ambienti più complessi e

04:06.600 --> 04:12.780
parliamo ad esempio delle auto che guidano da soli che creeranno o giocheranno a Doom quando l'intelligenza

04:13.020 --> 04:19.200
artificiale sta giocando a Doom o altri giochi Atari come il breakout o persino auto a guida

04:19.260 --> 04:26.400
automatica e approcci di rinforzo più avanzati come i robot che camminano intorno e che eseguono azioni in tutti

04:26.730 --> 04:32.400
quei casi in cui l'apprendimento è insufficiente non è forte non è abbastanza potente per

04:32.400 --> 04:34.700
essere in grado di padroneggiare quelle sfide.

04:34.710 --> 04:41.250
E proprio come abbiamo visto nel corso di deep learning se sei stato nella nostra disciplina o se hai fatto

04:41.250 --> 04:47.820
le sezioni di allegato su x numero uno e X-2 saprai che l'apprendimento profondo è di gran lunga superiore a

04:47.820 --> 04:51.640
qualsiasi tipo di apprendimento automatico e tanto meno un semplice apprendimento.

04:51.660 --> 04:55.770
Ed è per questo che stiamo sfruttando il potere dell'apprendimento profondo qui,

04:55.770 --> 04:58.580
quindi forniamo informazioni sull'ambiente come un vettore di valori.

04:58.590 --> 05:04.240
profonda e quindi lo stiamo usando per eseguire le azioni che vogliamo decidere quali azioni saranno intraprese dagli agenti.

05:04.240 --> 05:07.220
In questo caso, è sufficiente utilizzarlo in una rete neurale

05:07.420 --> 05:11.700
Questo è un po 'come una panoramica di alto livello sul perché lo stiamo facendo.

05:11.830 --> 05:17.920
E ora diamo un'occhiata in modo più dettagliato a cosa succede al concetto di apprendimento

05:17.920 --> 05:24.100
fresco quando trasferiamo quando facciamo la trasformazione o passiamo dal semplice apprendimento al Killary profondo.

05:24.130 --> 05:31.720
Quindi, come hai visto nei precedenti tutorial di intuizione, abbiamo avuto una diapositiva come questa che è il fondamento

05:31.960 --> 05:33.550
dell'apprendimento della differenza temporale.

05:33.700 --> 05:37.430
Questa è la formula per la differenza temporale e fondamentalmente. Quindi passiamo attraverso.

05:37.430 --> 05:44.640
Quindi, in pratica, avevamo un agente che si trovava in questo stato da quelle parti e che indica la freccia blu.

05:45.070 --> 05:51.760
E stavamo capendo come funziona la differenza temporale per questo valore, per esempio, salendo.

05:51.790 --> 05:57.250
E quindi quello che abbiamo visto qui prima era nel semplice Killary, non l'apprendimento profondo è nel semplice

05:57.250 --> 05:57.610
killer.

05:57.640 --> 06:05.560
Quello che abbiamo visto è stato prima che l'agente avesse un valore di tonalità successivo che aveva appreso su questa azione

06:05.560 --> 06:06.260
di salire.

06:06.340 --> 06:08.700
E così poi decise di prendere l'inganno per salire.

06:08.860 --> 06:14.830
E subito dopo aver preso la sua azione ottiene una ricompensa per aver intrapreso questa azione in questo stato.

06:14.830 --> 06:21.070
che può prendere un primo nel nuovo stato come stampa e leggere moltiplicato per il fattore DK di gamma.

06:21.070 --> 06:27.850
E questa è la ricompensa più ora che può valutare il valore dello stato attuale in cui è il massimo

06:27.850 --> 06:32.400
di tutti i nuovi valori q di tutto il cubo delle nuove azioni

06:32.440 --> 06:40.450
Quindi questo è essenzialmente lo spunto del nuovo valore del cubo o del tipo del valore del cubo empirico

06:40.450 --> 06:43.200
che ha appena ricevuto per compiere quell'azione.

06:43.270 --> 06:45.640
E idealmente questi due dovrebbero essere uguali.

06:45.640 --> 06:51.430
Quindi il vero valore di Q che aveva nella sua memoria riguardo a questa azione in questo

06:51.430 --> 06:57.420
stato dovrebbe equivalere alla ricompensa reale. Più la gamma ha il valore dello stato in cui è finito.

06:57.610 --> 07:01.870
ciò che sei dopo meno quello che ha ottenuto in mente quello che si aspettava.

07:01.870 --> 07:05.200
E quindi è così che calcoliamo la differenza temporale che prendiamo

07:05.200 --> 07:06.740
Sottrai l'uno dall'altro.

07:06.780 --> 07:07.690
Questa è una differenza temporale.

07:07.690 --> 07:14.890
E poi usi il tuo tasso di apprendimento Alpha per regolare il tuo valore q il tuo nuovo valore q per la differenza

07:14.890 --> 07:16.940
temporale ma con un coefficiente di Alpha.

07:17.110 --> 07:20.360
Questa è l'essenza dell'apprendimento semplice.

07:20.460 --> 07:25.990
Ora diamo un'occhiata a come cambia in Killary e quindi lavoreremo ancora con

07:26.000 --> 07:29.440
la diapositiva, ma vedremo esattamente cosa sta succedendo.

07:29.620 --> 07:35.890
Quindi in un apprendimento profondo la rete neuronale predice per Valis come abbiamo visto nel precedente e come

07:35.890 --> 07:36.320
vedremo.

07:36.370 --> 07:42.340
Donna Citronelle la rete neurale prevede i valori o potrebbe prevedere più valori di più

07:42.340 --> 07:44.790
azioni possibili in un determinato stato.

07:44.800 --> 07:48.500
Ma in questo caso sappiamo che ci sono solo quattro azioni da fare.

07:48.670 --> 07:56.160
E così la rete neuronale predice quattro di questi valori, quindi non ci sarà fine a una situazione di apprendimento profondo, è importante

07:56.170 --> 07:58.800
che non ci sia né prima né dopo.

07:58.960 --> 08:01.610
Ed è così che lo sapremo un po 'meglio.

08:01.720 --> 08:08.080
Quindi la rete neurale predice quattro di questi valori e si confronterà non con quello che

08:08.140 --> 08:15.280
accadrà dopo, ma la rete neuronale si confronterà con questo valore esatto ma è il valore che è

08:15.400 --> 08:17.740
stato calcolato nel passaggio precedente.

08:17.740 --> 08:22.950
Quindi nel momento precedente in cui l'agente era in questo esatto quadrato.

08:23.080 --> 08:30.850
Diciamo che non so che tempo fa l'agente era di nuovo in questo quadrato esatto

08:30.850 --> 08:34.420
e ha calcolato questo valore in precedenza.

08:34.420 --> 08:40.630
Quindi nel tempo passato molto tempo fa l'agente ha calcolato questo valore, quindi gli agenti hanno memorizzato questo valore

08:40.630 --> 08:43.720
per il futuro e ora il futuro è arrivato.

08:43.720 --> 08:48.640
Quindi ora è di nuovo nel quadrato e ora ha questi valori cubici che è previsto e uno di

08:48.640 --> 08:50.510
questi è per i quattro in ascesa.

08:50.680 --> 08:57.220
Quindi ora quello che sta per fare è confrontare il valore previsto di Q con questo valore che ha

08:57.220 --> 09:02.520
registrato dal passaggio precedente e capirà esattamente perché questo è importante in questo momento, quindi è

09:02.530 --> 09:03.440
importante capire qui.

09:03.520 --> 09:07.990
Non c'è prima un ufficiale in questa specifica casella in questo momento specifico.

09:08.140 --> 09:14.650
lo confrontiamo con questo valore che aveva dalla volta precedente dal momento in cui era in

09:14.710 --> 09:22.060
questa piazza, valutando tutte le situazioni e come il precedente tempo in cui ha effettivamente eseguito questa azione.

09:22.110 --> 09:28.100
Stiamo prendendo il valore Q che ha predetto usando la rete neurale questa volta e

09:28.270 --> 09:29.290
Quindi eccoci.

09:29.290 --> 09:33.360
Ora diamo un'occhiata a come tutto questo funziona nella rete neurale e perché.

09:33.370 --> 09:38.740
Perché è come so che sembra un po 'complicato in questo momento, ma lo scomporremo in termini semplici solo in

09:39.310 --> 09:39.990
un secondo.

09:40.000 --> 09:44.380
Quindi questo sulla tua rete che stiamo alimentando negli stati dell'ambiente nella rete neurale

09:44.380 --> 09:48.880
sta attraversando i livelli nascosti che sta uscendo con queste uscite Q1 Q2 Q3 Q4.

09:48.880 --> 09:56.830
quello stato specifico questi sono i valori dei cubi che la rete neurale sta prevedendo per le possibili azioni.

09:56.830 --> 09:57.380
In

09:57.400 --> 09:58.420
Quelli sono i cumuli.

09:58.420 --> 10:04.270
Quindi stiamo apparendo come target e questi obiettivi esistono esattamente così se torniamo qui questo è il

10:04.270 --> 10:07.230
target quindi questo è il valore che era previsto.

10:07.300 --> 10:11.740
E poi, ma sappiamo anche che abbiamo un bersaglio dall'ultima volta che eravamo in piazza.

10:11.800 --> 10:16.660
Abbiamo un obiettivo per questa stessa azione, che è per esempio.

10:16.660 --> 10:21.490
Quindi qui abbiamo un obiettivo e confronteremo il Q1 rispetto a quell'obiettivo che stiamo confrontando

10:21.490 --> 10:28.390
il secondo trimestre rispetto a quello che abbiamo ottenuto dal precedente terzo trimestre rispetto a un target Q4 rispetto al target.

10:28.420 --> 10:36.610
E così questa è la parte in cui la rete neurale o l'agente sta ora imparando attraverso l'apprendimento

10:36.610 --> 10:38.630
profondo su come andare meglio.

10:38.650 --> 10:44.920
E il punto chiave qui è che stiamo ancora applicando un apprendimento interessante, ma la risposta ai concetti è semplice: impari

10:44.980 --> 10:48.940
ad apprendere attraverso differenze temporali che sono piuttosto semplici e che abbiamo già discusso

10:48.940 --> 10:50.720
e che sappiamo bene perché no.

10:50.920 --> 10:56.100
Ma allo stesso tempo nell'apprendimento profondo, come fanno le reti neuronali a imparare le reti neurali imparando attraverso la

10:56.100 --> 10:56.970
regolazione dei pesi.

10:57.010 --> 11:07.120
adattare i concetti di rinforzo ai concetti di semplice uccisione imparando come funzionano le reti neurali.

11:07.120 --> 11:08.550
Quindi dobbiamo

11:08.710 --> 11:10.950
E questo attraverso l'aggiornamento dei loro pesi.

11:10.960 --> 11:14.950
E quindi questo è quello che stiamo cercando di capire qui come adattiamo

11:15.400 --> 11:21.060
il concetto di differenza temporale alla tua rete in modo da poter sfruttare tutta la potenza delle reti neurali.

11:21.260 --> 11:27.790
Finora abbiamo ottenuto questo, così entriamo nel nostro stato di ambiente qui mentre un vettore attraversa una rete neurale otteniamo

11:27.790 --> 11:33.240
previsioni di valori chiave e quindi dal momento in cui l'agente si trovava in quello stato.

11:33.240 --> 11:39.480
Abbiamo questi nuovi obiettivi per target uno due tre e quattro per ciascuna di queste rispettive azioni.

11:39.490 --> 11:40.870
E così ora stiamo lavorando.

11:40.870 --> 11:43.360
OK, confrontiamole ognuna con ciascuna.

11:43.630 --> 11:50.500
E da qui è diventato piuttosto semplice se sei in grado di accelerare con le reti neurali.

11:50.500 --> 11:52.500
Ancora una volta è su un Anax.

11:52.570 --> 12:00.070
Numero uno, calcoleremo una perdita che è qui e ci accingiamo a centrare questo

12:00.070 --> 12:01.760
Q meno questo.

12:01.840 --> 12:06.160
Stiamo andando a quadrare così la differenza quadrata di ognuno di questi e

12:06.160 --> 12:06.730
li sommeremo.

12:06.820 --> 12:12.310
differenze al quadrato di questi valori e dei loro obiettivi e li invieremo e questa sarà una perdita.

12:12.310 --> 12:13.940
Quindi prendiamo la somma delle

12:14.020 --> 12:19.030
E idealmente, proprio come avevamo fatto nella differenza temporale, imparando così se torniamo indietro

12:19.420 --> 12:25.180
per un secondo ricordiamo che abbiamo detto Idealmente vogliamo che questo sia uguale a questo, quindi vogliamo

12:25.180 --> 12:31.750
che la differenza temporale sia zero, quindi questo significa che fondamentalmente l'agente è predire esattamente esattamente quello che sai

12:31.750 --> 12:37.900
che il valore Q è che l'agente sta predicendo esattamente o che ha e la memoria è esattamente

12:38.590 --> 12:42.940
descrittiva dell'ambiente e quindi l'agente non può mai avere l'ambiente abbastanza bene.

12:43.000 --> 12:48.880
Non ci sono sorprese non c'è no non c'è s. a finché una differenza temporale è un pilota altamente

12:48.880 --> 12:49.970
positivo o altamente negativo.

12:50.040 --> 12:51.340
Quindi abbiamo delle sorprese.

12:51.340 --> 12:55.690
Ma se le differenze generali sono pari a zero, allora conosce l'ambiente così bene da poter

12:55.690 --> 13:01.110
prevedere cosa sta succedendo e può farlo e quindi la sua politica sarà molto buona e sarà in grado di navigare.

13:01.350 --> 13:02.200
Ecco.

13:02.200 --> 13:07.460
La stessa cosa è che vogliamo che questa legge sia il più vicino possibile a zero, suppongo il più piccolo possibile.

13:07.720 --> 13:14.680
la parte in cui sfrutteremo il vero potere della rete neurale, quindi prendiamo questa perdita e useremo la propagazione o

13:14.680 --> 13:19.910
il bastone come discesa del gradiente per prendere questa perdita e passarla attraverso la rete

13:19.970 --> 13:27.040
di back o back propagata attraverso una rete e attraverso per lanciare una data grande e decente i pesi.

13:27.040 --> 13:31.120
E questo è il motivo per cui ora andremo a questo è

13:31.120 --> 13:37.780
Tutte queste sinossi nella rete in modo che la prossima volta che passiamo attraverso questa rete sia già un po

13:37.930 --> 13:41.050
'più descrittiva dell'ambiente e questo è esattamente ciò che siamo.

13:41.080 --> 13:48.090
Quindi ecco qui se si torna indietro si calcolano le perdite Kalka e si indovina si dimostrano propagatori per la rete

13:48.100 --> 13:49.330
i pesi vengono aggiornati.

13:49.330 --> 13:55.720
qui succede ancora e ancora qui succede di nuovo e così via e così e continua ad

13:55.780 --> 14:02.560
accadere ed è così che questo agente apprende o fondamentalmente ora la rete neurale che è il cervello

14:02.560 --> 14:09.880
dell'agente sta imparando sta diventando sempre più più descrittivo dell'ambiente e quindi l'agente è in grado di navigare l'ambiente.

14:09.880 --> 14:12.100
Poi la prossima volta che arriviamo

14:12.130 --> 14:17.980
Quando diciamo che l'ambiente descrittivo significa fondamentalmente che quando inseriamo gli stati dell'ambiente in cui si

14:17.980 --> 14:25.510
trova questo agente, è più probabile che ci avviciniamo sempre di più ai valori di cue effettivi e ciò accade perché

14:25.510 --> 14:30.790
i valori dei cubi che vogliamo trovare sono quelli giusti azione e questo accade perché

14:30.790 --> 14:36.940
questi nuovi obiettivi sono in realtà derivati ​​empiricamente, così lui ogni giorno come trova questi obiettivi carini.

14:37.090 --> 14:40.090
Questo è davvero lì così lui osserva in realtà.

14:40.100 --> 14:42.940
OK, una volta che faccio questo passo, qual è il premio che ottengo.

14:43.060 --> 14:45.070
E poi quali sono i valori di questo stato.

14:45.070 --> 14:48.850
La stessa cosa che abbiamo visto in precedenza nell'apprendimento Q e nell'intuizione dell'apprendimento semplice.

14:48.850 --> 14:54.550
Quindi lo impara attraverso tentativi ed errori e poi costruisce la sua rete o così

14:54.880 --> 14:59.260
è in modo tale che i valori previsti siano vicini e vicini.

14:59.380 --> 15:01.330
Consumare quell'obiettivo.

15:01.330 --> 15:07.360
I valori di Q sono molto simili al concetto che abbiamo discusso qui nel semplice apprendimento della differenza

15:07.420 --> 15:09.870
temporale del semplice algoritmo di apprendimento delle abilità.

15:09.910 --> 15:10.460
Quindi eccoti.

15:10.460 --> 15:12.540
Ecco come impara l'agente.

15:12.550 --> 15:13.930
Quindi siamo qui.

15:14.260 --> 15:15.490
E questa è la parte di apprendimento.
