WEBVTT

00:00.660 --> 00:03.920
Cześć i witam z powrotem na kursie na temat sztucznej inteligencji.

00:03.930 --> 00:09.440
I w końcu jesteśmy na dobrej zabawie, na której uczymy się głębiej.

00:09.450 --> 00:10.660
W porządku, więc spójrzmy.

00:10.720 --> 00:14.100
Bruce mówiliśmy o zabójczym zarabianiu i o co w tym wszystkim chodzi.

00:14.140 --> 00:20.160
I dowiedzieliśmy się o środowisku Agent i o tym, jak agent będzie patrzył na stan.

00:20.210 --> 00:23.620
Lub ona jest w akcji, a otrzymasz nagrodę.

00:23.640 --> 00:28.610
Wejdź w nowy stan i na podstawie tej pętli zwrotnej będą kontynuować działania, a oni się z

00:28.610 --> 00:29.460
tego nauczą.

00:29.460 --> 00:32.310
Dowiedz się, jakie są najlepsze działania.

00:32.310 --> 00:35.040
I tak spojrzeliśmy na ten podstawowy przykład labiryntu.

00:35.040 --> 00:40.550
Zrozumieliśmy, że jako środowisko odkrywające w Azji rozumie, czym są wartości państw.

00:40.560 --> 00:45.150
Następnie przestaliśmy zajmować się wartościami stanów, aby radzić sobie z wartościami

00:45.150 --> 00:52.230
działań z wartościami, a następnie z A-Basin, że rozumiemy, jak działają plany w środowiskach nie sarkazmowych i jak

00:52.560 --> 00:57.070
zasady działają w środowiskach stochastycznych, a to jest przykład polityki.

00:57.120 --> 01:01.340
To jest krótkie podsumowanie wszystkiego, o czym rozmawialiśmy podczas podstawowego uczenia się.

01:01.450 --> 01:07.230
A teraz przyjrzyjmy się, jak można to osiągnąć na wyższy poziom poprzez głębokie uczenie się poprzez dogłębne

01:07.230 --> 01:08.080
uczenie się.

01:08.260 --> 01:08.510
DOBRZE.

01:08.520 --> 01:16.110
Więc to jest nasze środowisko i to, co teraz zrobimy, to dodamy zamiast zwykłych

01:16.110 --> 01:21.860
podstawowych obliczeń w tej macierzy, która jest dość prosta.

01:21.870 --> 01:26.970
Zamierzamy dodać dwie osie, które dodają oś x i y lub określimy je jako

01:27.090 --> 01:28.480
x1 i x2.

01:28.560 --> 01:30.430
Tylko po to, aby sprawy były jeszcze bardziej ogólne.

01:30.480 --> 01:36.830
I tutaj mamy liczbę rzeczywistą w wierszu kolumny 1 2 trzy 4 on będzie rządził liczbą wierszy od 1 do 3.

01:36.960 --> 01:44.730
I tak teraz każdy stan można opisać za pomocą pary dwóch wartości x1 i x2, więc każdy z

01:44.730 --> 01:50.940
tych kwadratów, w których agent może być obecny, można opisać za pomocą x1 x2.

01:50.940 --> 01:58.280
Na przykład teraz jest na kwadracie z X1 równym 1, a x 2 równym 2.

01:58.470 --> 02:03.430
I dlatego nie jest to sposób, w jaki możemy uciec w twoim kwadratowym znaczeniu, które możemy opisać w twoim stanie.

02:03.480 --> 02:08.330
Oczywiście jest to bardzo uproszczona wersja środowiska opisu państw.

02:08.340 --> 02:10.110
Ale mimo to działa w tym przypadku.

02:10.290 --> 02:17.260
Oznacza to, że teraz możemy zasilić te stany w sieć neuronową.

02:17.400 --> 02:21.830
A przy okazji, chciałbym tylko wspomnieć, że na końcu kursu dobrych załączników

02:21.830 --> 02:26.880
mamy x numer jeden i wygłupy i dwa, aby pomyślnie przejść do tej sekcji.

02:26.970 --> 02:32.280
Bardzo wskazane jest sprawdzenie, czy nie jest dostępny taki, który znajduje się na sztucznej

02:32.280 --> 02:37.470
sieci neuronowej, abyś zrozumiał, jak działają, abyśmy nie musieli się w to zagłębiać,

02:37.470 --> 02:43.800
i możemy wykorzystać korzyści płynące z wiedzy o tym, jak działają sztuczne sieci neuronowe i tak przekazujemy

02:43.830 --> 02:51.870
tę informację na stan do sieci neuronowej, a następnie przetwarza te informacje X1 i X2 w zależności od struktury sieci neuronowej,

02:51.870 --> 02:55.380
może mieć wiele ukrytych warstw i tak dalej.

02:55.380 --> 03:00.900
Jest to coś, o czym dowiesz się w praktycznych tutorialach, ale na końcu skonstruujemy

03:00.900 --> 03:06.570
w taki sposób, że wypluje wartości, a te cztery wartości będą faktycznie naszą wartością Q.

03:06.570 --> 03:11.790
Tak więc wartości, które określają, jakie działania należy podjąć, a które nie w tym samouczku, zobaczą dokładnie, w jaki sposób

03:11.790 --> 03:15.220
te kluczowe wartości są wykorzystywane do decydowania o tym, jakie działania zostaną podjęte.

03:15.240 --> 03:22.490
Ale głównym punktem jest to, że nie patrzymy już tylko na ten labirynt z perspektywy uczenia się.

03:22.650 --> 03:29.760
Teraz bierzemy stany labiryntu i karmimy je w głęboką sieć neuronową, aby uzyskać te

03:29.820 --> 03:31.360
kabiny i.

03:31.410 --> 03:35.080
Pod koniec dnia nadal będziemy wymyślać akcję, w której nadal będziemy

03:35.150 --> 03:39.900
wiedzieli, jakie działania musimy podjąć, i omówimy to wszystko bardziej szczegółowo, ale teraz pytanie brzmi:

03:39.900 --> 03:42.990
dlaczego są robimy to wszystko, dlatego nazwaliśmy to.

03:43.200 --> 03:47.990
Po co to sprawia, że rzeczy są o wiele bardziej skomplikowane, kiedy to początkowe podejście do nauki działało

03:48.280 --> 03:48.990
już dobrze.

03:49.170 --> 03:54.980
Powodem tego jest fakt, że nauka działała w tym bardzo uproszczonym środowisku i nadal

03:54.990 --> 03:59.830
zajmujemy się tym bardzo uproszczonym środowiskiem, aby lepiej zrozumieć pojęcia.

04:00.000 --> 04:06.220
Ale jednocześnie proste nauczanie Kial nie będzie już działało w bardziej złożonych środowiskach i rozmawiamy

04:06.600 --> 04:12.780
na przykład o samochodach, które będą samokonujące, które będą tworzyć lub grać Doom, gdy sztuczna

04:13.020 --> 04:19.200
inteligencja będzie grała Doom lub inne gry Atari, takie jak breakout lub nawet samozasilające się

04:19.260 --> 04:26.400
samochody i bardziej zaawansowane uczenie się wzmacniania, takie jak chodzenie po robotach i wykonywanie czynności we wszystkich tych

04:26.730 --> 04:32.400
przypadkach, w zasadzie nauka jest niewystarczająca, nie jest mocna, nie jest wystarczająco mocna,

04:32.400 --> 04:34.700
aby móc sprostać tym wyzwaniom.

04:34.710 --> 04:41.250
I tak, jak widzieliśmy w kursie głębokiego uczenia się, jeśli byłeś w naszej dyscyplinie lub zrobiłeś sekcje załącznika

04:41.250 --> 04:47.820
na x numer jeden i X-2, gdzie wiesz, że głębokie uczenie się jest o wiele lepsze niż każdy

04:47.820 --> 04:51.640
rodzaj uczenia maszynowego, nie mówiąc już o prostej, fajnej nauce.

04:51.660 --> 04:55.770
Właśnie dlatego wykorzystujemy tu moc głębokiego uczenia się, więc karmimy się

04:55.770 --> 04:58.580
informacją o środowisku jako wektorem wartości.

04:58.590 --> 05:04.240
W tym przypadku wystarczy użyć w głębokiej sieci neuronowej, a następnie używamy jej do wykonywania działań, które chcemy

05:04.240 --> 05:07.220
podjąć, aby zdecydować, które działania będą podejmowane przez agentów.

05:07.420 --> 05:11.700
To trochę jak ogólny przegląd tego, dlaczego to robimy.

05:11.830 --> 05:17.920
A teraz przyjrzyjmy się dokładniej temu, co dzieje się z koncepcją fajnego uczenia się,

05:17.920 --> 05:24.100
kiedy przenosimy się, kiedy dokonujemy transformacji lub przechodzimy od prostego uczenia się do głębokiego Killary.

05:24.130 --> 05:31.720
Tak jak widzieliście w poprzednich tutorialach intuicyjnych, mieliśmy taki slajd, który jest podstawą uczenia się

05:31.960 --> 05:33.550
różnic czasowych.

05:33.700 --> 05:37.430
To jest formuła na różnicę czasową i zasadniczo Więc przejdźmy.

05:37.430 --> 05:44.640
Więc w zasadzie mieliśmy agenta, który był tutaj w tym stanie, co oznaczono niebieską strzałką.

05:45.070 --> 05:51.760
I zrozumieliśmy, jak działa różnica czasowa dla tej wartości, na przykład idącej w górę.

05:51.790 --> 05:57.250
Więc to, co tu zobaczyliśmy, było wcześniej, niż w prostym Killary, a nie w głębokim uczeniu się w prostym

05:57.250 --> 05:57.610
zabójcy.

05:57.640 --> 06:05.560
To, co widzieliśmy, było przed tym, jak agent miał kolejną wartość barwy, której nauczył się o tym

06:05.560 --> 06:06.260
działaniu.

06:06.340 --> 06:08.700
I wtedy postanowił pójść na górę.

06:08.860 --> 06:14.830
Zaraz po tym, jak podejmuje swoje działanie, otrzymuje nagrodę za podjęcie tej akcji w tym stanie.

06:14.830 --> 06:21.070
I to jest nagroda, a teraz może ocenić wartość obecnego stanu, w którym jest

06:21.070 --> 06:27.850
maksimum wszystkich nowych wartości q wszystkich sześcianów nowych działań, które może podjąć w nowym stanie

06:27.850 --> 06:32.400
jako druk i odczyt pomnożony przez współczynnik DK gammy.

06:32.440 --> 06:40.450
Tak więc jest to w gruncie rzeczy nowa wartość kostki lub rodzaj empirycznej wartości kostki, którą właśnie otrzymał

06:40.450 --> 06:43.200
w celu wykonania tej akcji.

06:43.270 --> 06:45.640
A najlepiej te dwie dwójki powinny być takie same.

06:45.640 --> 06:51.430
Zatem faktycznie wartość Q, którą miał w swojej pamięci na temat tego działania w tym

06:51.430 --> 06:57.420
stanie, powinna być równa rzeczywistej nagrodzie, a wartość gamma pomnożyć wartość stanu, w którym znalazł się.

06:57.610 --> 07:01.870
I dlatego tak obliczamy czasową różnicę, którą bierzemy za to, co jest po

07:01.870 --> 07:05.200
minusie, co dostał, co miał na myśli, czego się spodziewał.

07:05.200 --> 07:06.740
Odejmowałbyś jeden od drugiego.

07:06.780 --> 07:07.690
To jest różnica czasowa.

07:07.690 --> 07:14.890
Następnie wykorzystujesz swoją szybkość uczenia się Alfa, aby dopasować wartość q swoją nową wartość q poprzez różnicę czasową,

07:14.890 --> 07:16.940
ale ze współczynnikiem Alpha.

07:17.110 --> 07:20.360
Taka jest esencja prostej nauki.

07:20.460 --> 07:25.990
Zobaczmy teraz, jak się zmienia w głębokim Killary, więc nadal będziemy pracować nad

07:26.000 --> 07:29.440
slajdem, ale zobaczymy dokładnie, co się dzieje.

07:29.620 --> 07:35.890
Tak więc w głębokiej nauce sieć neuronowa będzie przewidywać dla Valisa, jak widzieliśmy w poprzednim i jak

07:35.890 --> 07:36.320
zobaczymy.

07:36.370 --> 07:42.340
Donna Citronelle, sieć neuronowa będzie przewidywać wartości lub może przewidzieć więcej wartości większej liczby

07:42.340 --> 07:44.790
możliwych akcji w danym stanie.

07:44.800 --> 07:48.500
Ale w tym przypadku wiemy, że pozostały tylko cztery czynności do zrobienia.

07:48.670 --> 07:56.160
Tak więc sieć neuronowa przewiduje cztery z tych wartości, więc nie będzie końca w sytuacji głębokiego uczenia się, ważne jest

07:56.170 --> 07:58.800
to, że nie ma przed ani po.

07:58.960 --> 08:01.610
I w ten sposób dowiemy się o tym nieco lepiej.

08:01.720 --> 08:08.080
Tak więc sieć neuronowa będzie przewidywać cztery z tych wartości i będzie porównywać nie do

08:08.140 --> 08:15.280
tego, co będzie później, ale sieć neuronowa porówna się z tą dokładną wartością, ale była to wartość, która

08:15.400 --> 08:17.740
została obliczona w poprzednim kroku.

08:17.740 --> 08:22.950
Tak więc w poprzednim czasie, gdy agent był w tym dokładnie kwadracie.

08:23.080 --> 08:30.850
Powiedzmy, że nie wiem, że jakiś czas temu agent był znowu w tym samym

08:30.850 --> 08:34.420
kwadracie, i to jest obliczane wcześniej.

08:34.420 --> 08:40.630
Wcześniej więc dawno temu agent obliczył tę wartość, a agenci zapisali tę wartość

08:40.630 --> 08:43.720
na przyszłość, a teraz przyszła przyszłość.

08:43.720 --> 08:48.640
Teraz znowu jest na placu, a teraz ma te wartości sześcianu, które są przepowiedziane, a jeden

08:48.640 --> 08:50.510
z nich jest dla czterech.

08:50.680 --> 08:57.220
Teraz więc zamierza porównać przewidywaną wartość Q z tą wartością, którą zapisał z poprzedniego kroku

08:57.220 --> 09:02.520
i dokładnie zrozumie, dlaczego jest to ważne, więc po prostu ważne, aby

09:02.530 --> 09:03.440
zrozumieć tutaj.

09:03.520 --> 09:07.990
Nie ma żadnego oficera na tym konkretnym polu w tym konkretnym czasie.

09:08.140 --> 09:14.650
Przyjmujemy wartość Q, którą on przewidywał, wykorzystując tym razem sieć neuronową i porównujemy ją do

09:14.710 --> 09:22.060
tej wartości, którą miał od czasu poprzedniego, od poprzedniego czasu, kiedy znajdował się na tym polu,

09:22.110 --> 09:28.100
oceniając całą sytuację i wiesz, jak poprzedni czas faktycznie wykonał tę akcję.

09:28.270 --> 09:29.290
Więc idziemy.

09:29.290 --> 09:33.360
Teraz przyjrzyjmy się, jak to wszystko działa w sieci neuronowej i dlaczego.

09:33.370 --> 09:38.740
Dlaczego tak jest, bo wiem, że teraz brzmi to nieco skomplikowanie, ale za sekundę podzielimy je na

09:39.310 --> 09:39.990
proste terminy.

09:40.000 --> 09:44.380
Tak więc w sieci, którą karmimy w stanach środowiska, sieć neuronowa

09:44.380 --> 09:48.880
przechodzi przez ukryte warstwy, które wychodzi z tymi wyjściami Q1 Q2 Q3 Q4.

09:48.880 --> 09:57.380
W tym konkretnym stanie są to wartości kostek, które sieć neuronowa przewiduje dla możliwych działań.

09:57.400 --> 09:58.420
To są kumulacje.

09:58.420 --> 10:04.270
Tak więc wydajemy się celować i cele te istnieją dokładnie, więc jeśli wrócimy, to jest cel,

10:04.270 --> 10:07.230
więc to jest wartość, która została przewidziana.

10:07.300 --> 10:11.740
A potem, ale także wiemy, że mamy cel od ostatniego razu, kiedy byliśmy na placu.

10:11.800 --> 10:16.660
Mamy cel dla tej samej akcji, która jest na przykład.

10:16.660 --> 10:21.490
Tutaj mamy cel, a porównamy porównujemy Q1 z tym celem porównujemy Q2

10:21.490 --> 10:28.390
z tym celem do celu, który mieliśmy z poprzedniego Q3 w porównaniu z docelowym Q4 w stosunku do celu.

10:28.420 --> 10:36.610
I to jest właśnie ta część, w której sieć neuronowa lub agent obecnie uczy się poprzez głębokie uczenie

10:36.610 --> 10:38.630
się, jak lepiej przejść.

10:38.650 --> 10:44.920
A kluczową kwestią jest to, że wciąż stosujemy fajne uczenie się, ale odpowiedź na pytania jest prosta: uczysz się

10:44.980 --> 10:48.940
przez czasowe różnice, które są dość proste, o których już wcześniej mówiliśmy

10:48.940 --> 10:50.720
i dobrze wiemy, dlaczego nie.

10:50.920 --> 10:56.100
Ale jednocześnie w głębokim uczeniu się, w jaki sposób sieci neuronowe uczą się sieci neuronowych, ucz się poprzez

10:56.100 --> 10:56.970
dostosowanie wagi.

10:57.010 --> 11:07.120
Musimy więc dostosować koncepcje zbrojenia do pojęcia prostego uczenia się zabijania, tak jak faktycznie działają

11:07.120 --> 11:08.550
sieci neuronowe.

11:08.710 --> 11:10.950
A to przez aktualizację ich ciężarów.

11:10.960 --> 11:14.950
Dlatego właśnie próbujemy zrozumieć, w jaki sposób dostosowujemy

11:15.400 --> 11:21.060
koncepcję różnic czasowych do własnej sieci, abyśmy mogli wykorzystać pełną moc sieci neuronowych.

11:21.260 --> 11:27.790
Do tej pory dostaliśmy to, więc wchodzimy w stan naszego środowiska tutaj, gdy wektor przechodzi przez sieć neuronową

11:27.790 --> 11:33.240
otrzymujemy prognozy kluczowych wartości, a następnie od poprzedniego czasu, gdy agent był w tym stanie.

11:33.240 --> 11:39.480
Mamy nowy cel, do którego należy skierować jeden dwa trzy i cztery dla każdego z tych działań.

11:39.490 --> 11:40.870
A więc teraz zamierzamy.

11:40.870 --> 11:43.360
OK, porównajmy każdy z każdym.

11:43.630 --> 11:50.500
Stąd staje się bardzo proste, jeśli masz dość prędkości z sieciami neuronowymi.

11:50.500 --> 11:52.500
Znowu to na Anaksie.

11:52.570 --> 12:00.070
Numer jeden, będziemy obliczyć stratę, która jest tutaj i zamierzamy być q celem tego minus

12:00.070 --> 12:01.760
Q minus ten.

12:01.840 --> 12:06.160
Zamierzamy to ukończyć, więc różnica kwadratowa każdego z nich i zamierzamy je

12:06.160 --> 12:06.730
podsumować.

12:06.820 --> 12:12.310
Więc bierzemy sumę kwadratów różnic tych wartości i ich celów, a my je wyślemy

12:12.310 --> 12:13.940
i to będzie strata.

12:14.020 --> 12:19.030
Idealnie, tak jak w przypadku różnic czasowych uczenie się, więc jeśli wrócimy na

12:19.420 --> 12:25.180
chwilę pamiętajmy, że powiedzieliśmy Idealnie chcemy, aby to było równe, więc chcemy, żeby różnica czasowa

12:25.180 --> 12:31.750
była zerowa, to znaczy, że to znaczy, że agent jest przewidywanie dokładnie tego, co wiesz, że wartość Q

12:31.750 --> 12:37.900
jest taka, że agent przewiduje dokładnie to, co ma, a pamięć jest dokładnie opisowa dla środowiska,

12:38.590 --> 12:42.940
a zatem agent nigdy nie będzie w stanie prawidłowo ocenić środowiska.

12:43.000 --> 12:48.880
Nie ma niespodzianek, nie ma nie ma s. a tak długo, jak różnica czasowa jest pilotem wysoce pozytywnym

12:48.880 --> 12:49.970
lub wysoce negatywnym.

12:50.040 --> 12:51.340
A potem mamy niespodzianki.

12:51.340 --> 12:55.690
Ale jeśli ogólne różnice są zerowe, to zna on tak dobrze środowisko, że

12:55.690 --> 13:01.110
może przewidzieć, co się dzieje, a może i dlatego jego polityka będzie bardzo dobra i będzie mógł nawigować.

13:01.350 --> 13:02.200
Więc tu.

13:02.200 --> 13:07.460
To samo, więc chcemy, aby to prawo było tak bliskie zeru, jak przypuszczam, jak najmniejsze.

13:07.720 --> 13:14.680
I właśnie dlatego teraz idziemy do tej części, w której zamierzamy wykorzystać prawdziwą prawdziwą moc sieci neuronowej, więc

13:14.680 --> 13:19.910
weźmiemy tę stratę i będziemy używać propagacji wstecznej lub będziemy trzymać się jako

13:19.970 --> 13:27.040
pochylenie gradientu aby wziąć tę stratę i przekazać ją przez sieć z powrotem lub w tył propagowaną przez

13:27.040 --> 13:31.120
sieć i przez rzucenie wielkiej i przyzwoitej daty wagi.

13:31.120 --> 13:37.780
Wszystkie te wzmianki w sieci, aby następnym razem przejść przez tę sieć, tak jak jest to już nieco lepiej opisujące

13:37.930 --> 13:41.050
środowisko i to jest dokładnie to, czym jesteśmy.

13:41.080 --> 13:48.090
Tak więc, jeśli wrócisz, to wyliczone są straty Kalka i domyślny propagator dla sieci, w której wagi

13:48.100 --> 13:49.330
są aktualizowane.

13:49.330 --> 13:55.720
Następnym razem, gdy tu dojdziemy, dzieje się to raz po raz, dzieje się to znowu, i tak

13:55.780 --> 14:02.560
dalej, i tak dalej, i tak się dzieje. W ten sposób ten agent uczy się lub w zasadzie

14:02.560 --> 14:09.880
teraz sieć neuronowa, która jest mózgiem agenta, staje się coraz bardziej bardziej opisowe dla środowiska, a zatem agent jest w

14:09.880 --> 14:12.100
stanie poruszać się po środowisku.

14:12.130 --> 14:17.980
Kiedy mówimy, że środowisko opisowe zasadniczo oznacza, że kiedy umieszczamy w stanach środowiska, w

14:17.980 --> 14:25.510
których znajduje się ten agent, jesteśmy bardziej skłonni zbliżyć się do rzeczywistych wartości cue i dzieje się tak, ponieważ

14:25.510 --> 14:30.790
wartości kostki, które chcemy znaleźć, są właściwe działanie i tak się dzieje,

14:30.790 --> 14:36.940
ponieważ te nowe cele są w rzeczywistości wyprowadzane empirycznie, więc każdego dnia znajduje słodkie cele.

14:37.090 --> 14:40.090
Tak naprawdę to jest, więc on faktycznie obserwuje.

14:40.100 --> 14:42.940
OK, kiedy raz zrobię ten krok, jaką nagrodę otrzymam.

14:43.060 --> 14:45.070
A jakie są wartości tego stanu.

14:45.070 --> 14:48.850
To samo, co wcześniej widzieliśmy w nauce Q i prostej intuicji uczenia się.

14:48.850 --> 14:54.550
Dowiaduje się o tym przez próbę i błąd, a następnie konstruuje swoją sieć lub

14:54.880 --> 14:59.260
w taki sposób, że przewidywane wartości są bliskie i bliskie.

14:59.380 --> 15:01.330
Doskonałość tego celu.

15:01.330 --> 15:07.360
Wartości Q są bardzo podobne do pojęcia, które omówiliśmy tutaj w prostym uczeniu się różnic

15:07.420 --> 15:09.870
czasowych prostego algorytmu uczenia umiejętności.

15:09.910 --> 15:10.460
Więc idź.

15:10.460 --> 15:12.540
Tak się uczy agent.

15:12.550 --> 15:13.930
Więc jesteśmy tutaj.

15:14.260 --> 15:15.490
I to jest część ucząca.
