WEBVTT

00:00.490 --> 00:01.720
Ciao a tutti e bentornati.

00:02.080 --> 00:05.290
Nell'ultima lezione, abbiamo finito per iniziare a costruire il nostro ambiente.

00:05.300 --> 00:13.090
Abbiamo essenzialmente una griglia 11 per 11 qui che vogliamo che il nostro postino ripeta per risolvere la nostra sfida.

00:14.020 --> 00:18.430
Vogliamo ora iniziare a pensare a una volta che avremo la griglia.

00:18.430 --> 00:23.860
Abbiamo anche bisogno di azioni per il nostro agente e le eliminerò molto rapidamente.

00:23.860 --> 00:24.940
Non abbiamo bisogno di queste cellule.

00:24.940 --> 00:27.670
Volevo solo tenerlo per un po' di spazio.

00:27.790 --> 00:29.440
Ti semplifica solo la visualizzazione.

00:29.440 --> 00:35.290
Dammi 1/2, fammi eliminare questi e possiamo lasciare questo qui.

00:35.950 --> 00:36.280
Così.

00:37.390 --> 00:43.060
Ho lasciato un testo che abbiamo e vogliamo impostare le nostre azioni come in verticale, in basso ea sinistra.

00:43.630 --> 00:45.550
Con Python, è piuttosto semplice.

00:45.550 --> 00:48.010
Possiamo costruire l'elenco e impostare le nostre azioni.

00:48.280 --> 00:51.160
Le nostre azioni saranno uguali.

00:52.200 --> 00:55.170
Due come abbiamo in alto a destra, in basso a sinistra.

00:55.380 --> 00:56.760
Quindi configuriamolo.

00:57.630 --> 01:01.050
Destra in basso ea sinistra.

01:01.380 --> 01:06.570
Dobbiamo dare al nostro agente, mi scusi, una certa capacità di manovrare con queste azioni attraverso il

01:06.570 --> 01:07.020
labirinto.

01:08.300 --> 01:11.780
Oltre a ciò, dobbiamo anche iniziare a impostare le ricompense.

01:12.110 --> 01:17.990
Ora, è qui che comincerà a diventare un po' più complicato perché dobbiamo impostare

01:17.990 --> 01:24.920
diversi stati del nostro ambiente, stati diversi nel senso che vogliamo essere in grado di assegnare questi -100

01:24.920 --> 01:31.670
e uno negativo a questi passaggi o a questi valori di stato a ogni quadrato all'interno della griglia.

01:32.090 --> 01:39.260
Quindi vediamo, per aiutare il nostro agente a conoscere ogni stato o luogo della nostra città, vogliamo avere un valore di ricompensa.

01:39.260 --> 01:40.700
Ecco come imparerà il nostro agente.

01:41.030 --> 01:45.020
Quindi l'agente può iniziare da qualsiasi casella bianca, ma il suo obiettivo è sempre lo stesso.

01:45.260 --> 01:50.900
Vuole massimizzare le sue ricompense totali con in Q l'apprendimento di ricompense negative, sappiamo che vengono

01:50.900 --> 01:51.770
chiamate punizioni.

01:52.040 --> 01:54.040
Questi sono usati per tutti gli stati tranne l'obiettivo.

01:54.050 --> 01:59.840
È così che stabiliremo quella politica ottimale, che incoraggi l'occhio a identificare il percorso più breve verso

01:59.840 --> 02:02.540
l'obiettivo riducendo al minimo le sue punizioni.

02:03.200 --> 02:03.560
Va bene.

02:04.460 --> 02:09.830
Inoltre, per massimizzare le ricompense cumulative, l'agente dovrà trovare il percorso più breve tra l'area di confezionamento degli

02:09.830 --> 02:14.510
articoli, la nostra Piazza Verde, ricorda, e gli altri luoghi della città in cui il postino

02:14.510 --> 02:16.310
può percorrere i quadrati bianchi.

02:16.730 --> 02:20.420
Gli agenti impareranno a evitare di schiantarsi contro i confini della città.

02:20.420 --> 02:23.050
Quelli sono i quadrati neri, come vediamo con il -100.

02:23.120 --> 02:24.260
Vogliamo stare lontano da loro.

02:24.470 --> 02:26.480
Hanno più di una punizione.

02:26.930 --> 02:32.450
Quindi, per fare questo, abbiamo la nostra griglia, l'ambiente che abbiamo creato sopra con le nostre righe.

02:32.810 --> 02:35.990
Ma vogliamo anche assegnargli questi valori.

02:36.410 --> 02:42.020
Quindi, per farlo, proviamo a pensare a come possiamo stabilire che possiamo usare NumPy e possiamo anche

02:42.020 --> 02:46.880
iniziare a impostarlo su -100 per le righe dell'ambiente e le colonne dell'ambiente.

02:47.120 --> 02:49.310
Quindi abbiamo le nostre righe di ambiente e le colonne di ambiente.

02:49.580 --> 03:02.540
Quindi chiamiamo questo premio uguale a numpy full e passiamo nelle righe dell'ambiente, nelle colonne dell'ambiente e per

03:03.290 --> 03:10.100
impostare i nostri valori, possiamo iniziare con -100.

03:11.920 --> 03:18.370
In aggiunta a ciò, vogliamo anche impostare la nostra finestra dei premi su.

03:20.090 --> 03:23.510
Usa gli indici di zero e cinque.

03:24.260 --> 03:25.640
Uguale a 100.

03:26.650 --> 03:28.420
E questo avrà senso tra un secondo.

03:28.540 --> 03:30.130
Quindi diamo un'occhiata alla nostra Piazza Verde.

03:30.160 --> 03:31.280
Abbiamo il nostro zero cinque.

03:31.300 --> 03:37.060
Abbiamo il nostro Green Square impostato su 100 prendendo questi o questa posizione per impostare il valore.

03:37.540 --> 03:41.650
Ora, incollerò il prossimo frammento di codice in modo da poterlo esaminare.

03:41.680 --> 03:44.700
Quindi non devi guardarmi valutare ogni passo perché è un po' ripetitivo.

03:44.710 --> 03:47.440
E ora abbiamo i nostri spazi bianchi.

03:47.650 --> 03:51.580
Definiamo le nostre conoscenze per i nostri punti premio.

03:52.120 --> 03:57.420
E in questo frammento di codice, utilizziamo un dizionario e impostiamo ciascuno dei nostri valori all'interno del nostro dizionario.

03:57.430 --> 03:58.450
Quindi abbiamo i nostri corridoi.

03:58.450 --> 04:05.230
Stiamo pensando a questo come ogni singola riga e possiamo impostare con il nostro slicing, con il nostro indice da

04:05.230 --> 04:06.340
uno a nove.

04:06.610 --> 04:11.230
E vogliamo usare un'iterazione con il nostro ciclo for per impostare questi valori.

04:11.860 --> 04:16.000
In tal modo, vedrai se guardiamo da uno a dieci, uno, sette e nove.

04:16.180 --> 04:21.280
E usando questo, possiamo effettivamente impostare l'indice di riga nel nostro intervallo da uno a dieci, che

04:21.280 --> 04:23.050
stiamo lavorando nel nostro ambiente.

04:23.530 --> 04:25.300
Possiamo impostare l'indice della colonna.

04:26.530 --> 04:33.280
Nei nostri corridoi del nostro indice di riga con il nostro dizionario, il nostro indice di riga dei premi e l'indice di colonna, possiamo

04:33.280 --> 04:34.450
impostarlo su uno negativo.

04:34.870 --> 04:41.590
Quindi ciò che sta facendo è essenzialmente, se osserviamo ogni specifico, se prendiamo un intervallo qui, ad esempio, ne avrò

04:41.590 --> 04:48.100
nove per I nel nostro intervallo, ne avremo uno negativo impostato nell'intero ambiente o ogni stato all'interno del nostro

04:48.100 --> 04:49.030
ambiente .

04:49.570 --> 04:52.410
Per otto, abbiamo tre e sette.

04:52.420 --> 04:57.670
Quindi, se possiamo scorrere verso l'alto, possiamo vedere che in tre e sette, stiamo impostando uno negativo poiché

04:57.670 --> 05:00.130
sarebbero tutti -100 o impostati su cento negativi.

05:00.370 --> 05:07.180
E con questa iterazione, possiamo impostare quelle ricompense o impostare ogni stato che stiamo definendo all'interno dei nostri corridoi

05:07.180 --> 05:08.590
su uno negativo.

05:08.860 --> 05:10.390
Lo rende molto facile.

05:10.390 --> 05:17.200
Invece di dover scrivere ulteriore logica o magari funzioni o istruzioni più dettagliate, possiamo scorrere e

05:17.200 --> 05:18.640
impostare questi valori.

05:18.940 --> 05:23.890
Consiglio vivamente di dedicare un minuto all'esplorazione dell'esperimento se si desidera modificare l'ambiente in un secondo

05:23.920 --> 05:24.280
momento.

05:24.280 --> 05:29.410
Dopo aver eseguito questa soluzione, è un ottimo modo per imparare e rafforzare queste politiche.

05:29.410 --> 05:34.990
Ma questo sta iniziando a prendere forma e una cosa interessante che possiamo fare è visualizzarlo effettivamente.

05:34.990 --> 05:38.380
Quindi facciamo quattro righe in ricompense.

05:40.050 --> 05:46.620
Stampa riga e stampiamo questo e possiamo vedere che potrei dover effettivamente rieseguire queste celle.

05:46.620 --> 05:47.400
Mie scuse.

05:47.640 --> 05:50.010
Non ero collegato al notebook che lavorava qui.

05:50.280 --> 05:51.210
Dagli 1/2.

05:51.210 --> 05:52.260
Verrà generato un errore.

05:52.620 --> 05:55.240
Devo tornare indietro e rieseguire le celle.

05:55.240 --> 05:56.940
Quindi fammi solo ripetere questo molto rapidamente.

05:57.210 --> 05:58.560
Voglio importare NumPy.

05:58.770 --> 06:01.470
In realtà posso solo sperare le mie scuse.

06:02.130 --> 06:03.360
Fammi passare quest'anno.

06:03.690 --> 06:04.830
Sto per scendere.

06:04.830 --> 06:06.780
Vogliamo gestire il nostro ambiente.

06:07.170 --> 06:08.550
Vogliamo eseguire le nostre azioni.

06:08.550 --> 06:10.680
Gli altri sono solo testo, quindi non ne abbiamo bisogno.

06:10.680 --> 06:14.430
Ma mi piace averlo in modo che possiate avere un riferimento ad esso.

06:14.730 --> 06:18.450
Vogliamo premiare i punti e finalmente vogliamo visualizzarlo.

06:18.870 --> 06:25.770
Possiamo vedere la visualizzazione, l'effettiva rappresentazione numerica intorpidita del nostro ambiente.

06:25.920 --> 06:26.760
Veramente cool.

06:27.030 --> 06:28.860
Quindi abbiamo impostato il nostro ambiente.

06:29.130 --> 06:30.140
Lavoro fantastico.

06:30.150 --> 06:31.620
Spero che lo troviate utile.

06:31.740 --> 06:36.540
Ora lo chiudiamo qui perché nella prossima lezione inizieremo ad addestrare il modello.

06:36.810 --> 06:41.910
Quindi questo era per impostare le azioni dei nostri agenti, per impostare il nostro ambiente, per impostare le nostre ricompense.

06:41.910 --> 06:46.440
La nostra punizione aiuterà quell'agente a stabilire la politica ottimale all'interno dell'apprendimento Q.

06:46.680 --> 06:53.310
Nel complesso, abbiamo questa rappresentazione visiva o questa immagine costruita e possiamo vederla qui se stampiamo

06:53.310 --> 06:54.750
la nostra riga.

06:55.970 --> 06:56.510
Sorprendente.

06:56.900 --> 06:57.290
Va bene.

06:57.740 --> 06:58.970
Non continuerò a divagare.

06:58.970 --> 07:00.630
Manteniamolo qui nella prossima lezione.

07:00.650 --> 07:02.090
Iniziamo ad addestrare il modello.

07:02.570 --> 07:03.860
Ci vediamo ragazzi alla prossima lezione.
