WEBVTT

00:00.330 --> 00:02.170
Witam i zapraszam do Statoil.

00:02.400 --> 00:06.270
OK, więc właśnie obliczyliśmy entropię i dodaliśmy ją do listy entropii.

00:06.270 --> 00:11.640
A teraz to, co zamierzamy zrobić, to podjąć losową kroplę akcji zgodnie z

00:11.700 --> 00:13.190
rozkładem prawdopodobieństw następnej.

00:13.200 --> 00:14.540
Zróbmy to.

00:14.540 --> 00:15.780
To kolejny krok.

00:15.870 --> 00:19.910
Wciąż jesteśmy w pętli, ponieważ wciąż tutaj jesteśmy na etapie.

00:20.160 --> 00:22.550
A więc teraz wiesz, jak grać w akcję.

00:22.590 --> 00:28.740
Najpierw wprowadzimy zmienną dla akcji zwanej akcją, a następnie przyjmiemy

00:28.740 --> 00:37.350
rozkład prawdopodobieństw i użyjemy funkcji multi bez funkcji neuronowej do losowego losowania z tego rozkładu

00:37.350 --> 00:41.390
prawdopodobieństw, a następnie dodamy te dane.

00:41.500 --> 00:48.550
Należy więc zauważyć, że akcja będzie w rzeczywistości tensorem z tylko jedną wartością, ale nie powinna

00:48.550 --> 00:51.010
być traktowana jako prosta wartość.

00:51.010 --> 00:57.050
Powinieneś to zobaczyć jako potępienie tensor po kolei, które zawiera tę wartość dla akcji.

00:57.190 --> 01:02.970
A to dlatego, że nie jest wyciskany nadal w tej samej pętli for.

01:02.970 --> 01:09.880
Otrzymamy logarytm prawdopodobieństwa skojarzony z akcją, która była właśnie grana.

01:10.170 --> 01:16.750
Tak więc, kiedy umawiam się z moim prawdopodobieństwem szczęścia, biorąc poprzedni, z poprzedniego szczęścia,

01:16.810 --> 01:25.480
obliczonego tutaj, a następnie zamierzam użyć innej metody, do której mam zamiar wprowadzić 1 i akcję, która była

01:25.480 --> 01:31.510
właśnie gra, ponieważ chcemy uzyskać prawdopodobieństwo szczęścia powiązane z tą akcją.

01:31.510 --> 01:38.230
A więc drugi argument tutaj mam zamiar umieścić moje działanie, ale musi być jak tortura straszna, jak

01:38.860 --> 01:44.530
wymaga zebrana funkcja, a zebrana funkcja po prostu indeksuje się z liczbą całkowitą tensora.

01:44.530 --> 01:48.910
W porządku, więc teraz mamy wygląd skojarzony z działaniem, które zostało wyświetlone.

01:49.030 --> 01:53.790
A teraz następnym krokiem jest dołączenie tego, co dostaliśmy na listę tutaj.

01:53.800 --> 01:55.570
Więc mamy tę wartość.

01:55.750 --> 01:58.820
Oto, co mamy tutaj jako wyjście modelu.

01:58.840 --> 02:00.880
Następnie mamy problem z blokadą.

02:00.910 --> 02:04.030
Zamierzamy więc dodać blokadę do listy rekwizytów zamka.

02:04.180 --> 02:09.610
Już dodamy entropię do entropii jest mniej dobra, a nagrody dostaną ją później.

02:09.700 --> 02:15.250
Tak więc otworzymy teraz wartość i spojrzenie na listę wartości i proces prawny.

02:15.520 --> 02:16.180
Zróbmy to.

02:16.180 --> 02:23.800
Przyjmujemy naszą listę wartości, dodając, że korzystamy z funkcji wydatkowania i dodajemy wartość, która

02:23.920 --> 02:32.700
została zwrócona przez model doskonały, to samo dla problemów z zamkiem. Właśnie dostaliśmy nowe rekwizyty i

02:32.710 --> 02:36.080
dodamy je do listy rekwizytów zamka.

02:36.180 --> 02:43.960
Tak więc w tej funkcji dopisywania możemy umieścić log z naszego szczęścia, prawdopodobnie został właśnie tutaj obliczony.

02:43.960 --> 02:47.320
W porządku, więc nasze listy są teraz dobrze zaktualizowane.

02:47.350 --> 02:53.060
Teraz to, co zrobimy, to odgrywanie akcji, ponieważ właśnie tutaj wybraliśmy akcję,

02:53.060 --> 02:56.570
biorąc losowy los z rozkładu prawdopodobieństw tutaj.

02:56.650 --> 03:03.040
Ale w rzeczywistości jeszcze tego nie graliśmy i zamierzamy zagrać teraz, abyśmy mogli dojść do nowego stanu,

03:03.220 --> 03:06.150
a zatem uzyskać nowe przejście i grać.

03:06.170 --> 03:10.960
Zamierzamy przyjąć nasze środowisko, ponieważ gramy akcję w naszym środowisku, a

03:10.960 --> 03:12.990
następnie zastosujemy metodę krokową.

03:13.210 --> 03:20.650
Wewnątrz określamy akcję, która została wybrana do jej odtworzenia, a my wykonujemy to działanie, a

03:20.650 --> 03:25.280
my nie dodajemy tego, ponieważ taka jest oczekiwana funkcja.

03:25.750 --> 03:35.820
Ok, ale to zwraca w rzeczywistości nowy stan, a także nową nagrodę, ponieważ osiągając nowy stan otrzymujemy nową nagrodę, a

03:36.000 --> 03:43.500
także otrzymujemy nową wartość dla Dunna, aby wiedzieć, czy gra jest wykonana, czy nie.

03:43.500 --> 03:49.180
W porządku, dzięki temu gramy akcję osiągamy nowy stan i otrzymujemy nagrodę i wiemy,

03:49.200 --> 03:50.510
czy skończyliśmy grę.

03:50.520 --> 03:52.740
I mówiąc o tym, że skończyłeś z grą.

03:52.990 --> 03:58.590
Cóż, dodamy tutaj coś, co sprawi, że agent nie zostanie ułożony w jakimś

03:58.590 --> 03:59.180
stanie.

03:59.280 --> 04:04.240
W tym celu zaktualizujemy to bardzo dobrze w następujący sposób.

04:04.860 --> 04:11.910
Cóż, będzie to równoznaczne z wykonaniem lub dodamy warunek, że odcinek gry nie

04:11.910 --> 04:19.200
powinien trwać zbyt długo i zobaczymy w głównej funkcji, że będzie parametr długości maksymalnej,

04:19.200 --> 04:21.960
który będzie równy do 10000.

04:22.170 --> 04:25.750
I nie chcemy, aby odcinek trwał dłużej niż 10000 jednostek.

04:25.860 --> 04:34.200
Więc usłyszymy odcinek długości odcinka, a my napiszemy warunek większy

04:34.830 --> 04:43.250
niż maksymalny odcinek Lex, którego tak naprawdę nie powiedzieliśmy w tej chwili.

04:43.250 --> 04:49.210
Otrzymujemy to od naszych parametrów kończąc tutaj Paramjit, ale Ramstad.

04:49.210 --> 04:50.600
Max ma długość.

04:50.600 --> 04:59.330
Oznacza to, że jeśli gra jest ukończona lub długość epizodu jest większa niż maksymalna długość zestawu

04:59.330 --> 05:02.110
epizodów, która będzie równa 10000.

05:02.270 --> 05:05.410
Cóż, gra się skończy i rozpoczniemy nową grę.

05:05.960 --> 05:08.040
OK, to tylko środek ostrożności.

05:08.180 --> 05:14.360
Mówiąc o ostrożności, dodamy kolejne środki ostrożności, aby zrekompensować nagrodę od minus 1 do

05:14.360 --> 05:15.400
plus 1.

05:15.470 --> 05:20.450
Już tu byliśmy, ale chcemy się upewnić, że nagroda wynosi od minus 1 do plus

05:20.450 --> 05:20.960
1.

05:21.140 --> 05:27.740
Aby to zrobić, musimy po prostu zaktualizować nagrodę, robiąc to, przyjmując maksimum, a następnie biorąc

05:28.240 --> 05:31.060
mężczyznę od nagrody i 1.

05:31.190 --> 05:37.790
I tutaj bierzemy maksimum minimalnej nagrody i 1 i minus 1, a to zapewni, że nagroda wynosi

05:37.790 --> 05:40.040
od minus jeden plus jeden.

05:40.160 --> 05:40.910
W porządku.

05:40.910 --> 05:42.180
Kolejna perkusja.

05:42.380 --> 05:49.070
A teraz po prostu chcemy sprawdzić, czy gra jest wykonana, w takim przypadku uruchomimy ponownie środowisko.

05:49.220 --> 05:53.010
I dlaczego musimy to sprawdzić teraz, ponieważ właśnie osiągnęliśmy nowy stan.

05:53.090 --> 05:54.880
Właśnie przeszliśmy nowe przejście.

05:54.890 --> 05:58.010
Musimy to sprawdzić po przejściu tego nowego przejścia.

05:58.130 --> 06:06.860
Cóż, gra nie zostanie wykonana, jeśli zrobimy to ponownie, jeśli zrobimy to

06:07.250 --> 06:14.180
wtedy ponownie uruchomimy środowisko, ustawiając długość odcinka na zero.

06:14.330 --> 06:21.800
A także stan zostanie ponownie zainicjowany w celu ponownego zainicjowania, gdy będziemy korzystać z naszego

06:21.800 --> 06:25.270
środowiska i użyjemy funkcji resetowania OK.

06:25.310 --> 06:29.040
Teraz wydostaliśmy się z tego warunku, który właśnie sprawdzał.

06:29.230 --> 06:34.640
A teraz zrobimy to, od kiedy osiągnęliśmy nowy stan, podczas gdy ten nowy stan jest

06:34.640 --> 06:40.410
teraz i teraz przez Raya, ponieważ pamiętajmy, że stany są wejściowymi obrazami, które pierwotnie zostały nazwane przez tablice.

06:40.570 --> 06:44.430
Musimy więc przekształcić nowy stan w torturowaną odpowiedź.

06:44.600 --> 06:50.410
Więc zaktualizujemy nasz stan i zamierzamy użyć biblioteki pochodni.

06:50.630 --> 07:00.880
I oczywiście z funkcji innej niż tajlandzka, aby przekonwertować tych, którzy nie płacą, obrazów wejściowych do czujnika

07:00.890 --> 07:01.800
palnika.

07:02.150 --> 07:03.150
Idealny.

07:03.260 --> 07:08.620
A teraz ostatnia rzecz, którą musimy zrobić, zanim wydostaniemy się z tej pętli, która jest pętlą

07:08.810 --> 07:13.030
w naszych krokach. Cóż, oczywiście, należy wydać nagrodę na listę obserwacyjną.

07:13.040 --> 07:18.310
To ostatnia rzecz, którą należy zaktualizować, zaktualizowaliśmy całą listę tutaj, z wyjątkiem nagrody.

07:18.320 --> 07:24.830
Więc zrobimy to teraz, my wezmę nagrodę i użyjemy funkcji mózgu, aby dopisać

07:24.830 --> 07:28.110
ostatnie słowo, które właśnie otrzymaliśmy, doskonałe.

07:28.220 --> 07:36.110
I zanim wyjdziemy z pętli for, musimy po prostu wykonać jedną ostatnią kontrolę, aby sprawdzić, czy to zrobione,

07:37.340 --> 07:39.490
to chcemy zatrzymać wygaśnięcie.

07:39.530 --> 07:42.550
A więc po prostu dodamy tutaj przerwę.

07:42.560 --> 07:48.590
Oznacza to, że jeśli to zrobimy, zatrzymamy eksplorację i przejdziemy bezpośrednio do

07:48.590 --> 07:56.930
następnego kroku, który będzie aktualizacją modelu wspólnego, a teraz skończymy z tym na razie, że agent wykonał

07:56.930 --> 07:57.980
swoją eksplorację.

07:58.190 --> 08:04.910
Zaktualizuje model współdzielony, a my zajmiemy się nim w następnym samouczku, a następnie ja.
