WEBVTT

00:00.420 --> 00:06.440
Cześć i witamy w ostatnim kroku naszego procesu, aby mózg miał jedną funkcję, aby zrobić lewe.

00:06.450 --> 00:12.180
Jest to funkcja do przodu, która propaguje sygnały we wszystkich warstwach sieci neuronowej, w tym

00:12.510 --> 00:16.180
trzy warstwy splotowe i w pełni połączoną warstwę.

00:16.380 --> 00:21.660
Funkcja ta jest więc funkcją do przodu dokładnie tak, jak w przypadku samochodu

00:21.780 --> 00:27.440
samojezdnego, ale tym razem musimy propagować sygnały w warstwach splotowych przed całkowicie połączoną warstwą.

00:27.660 --> 00:32.610
Dobra wiadomość jest taka, że zrobiliśmy to już w poprzednim kroku dzięki funkcji count Newnes.

00:32.640 --> 00:37.160
Mamy już kod propagujący sygnał w kraju.

00:37.340 --> 00:38.940
I tak będzie bardzo szybko.

00:38.950 --> 00:43.950
Po prostu połączymy to, co tutaj zrobiliśmy, z tym, co zrobiliśmy dla samochodu podwodnego, a otrzymamy funkcję

00:43.950 --> 00:45.720
do przodu dla naszego mózgu.

00:45.780 --> 00:46.860
Zróbmy to.

00:46.860 --> 00:54.660
Wprowadzamy tutaj nową funkcję dla mózgu, a ta funkcja jest funkcją do przodu, która

00:55.170 --> 00:56.940
przyjmuje argument.

00:57.160 --> 01:05.400
Dokładnie tak jak przed siebie, aby odwoływać się do obiektów i X, które będą pierwszymi obrazami wejściowymi, a następnie wiadomo,

01:05.400 --> 01:10.280
że X zostanie zaktualizowany, gdy sygnał jest propagowany do nowej sieci.

01:10.650 --> 01:11.460
W porządku.

01:11.460 --> 01:14.350
Cullen, a następnie przejdźmy do funkcji.

01:14.370 --> 01:20.500
Tak jak właśnie powiedziałem, że już stworzyliśmy kod propagujący sygnały w trzech splotowych warstwach.

01:20.580 --> 01:23.440
To dokładnie te trzy linie kodu.

01:23.640 --> 01:29.040
Więc kopiuję je i wklejając je tu i tam.

01:29.040 --> 01:34.430
Mamy już naszą propagację sygnału w trzech warstwach splotu.

01:34.520 --> 01:40.830
Teraz musimy tylko propagować sygnał z warstw splotowych do ukrytej warstwy, a następnie do

01:40.830 --> 01:46.680
warstwy wyjściowej znajdującej się na samym końcu sieci neuronowej i aby to

01:46.680 --> 01:53.520
zrobić, najpierw musimy spłaszczyć trzecią warstwę splotową, którą uzyskane tutaj pamiętaj X na początku jest

01:53.520 --> 01:54.610
obrazem wejściowym.

01:54.720 --> 02:00.780
Wtedy X staje się pierwszą warstwą splotu, a X staje się tam drugim splotem.

02:00.930 --> 02:03.840
I tu X staje się trzecim splotem.

02:03.960 --> 02:07.730
Tak więc teraz na tym etapie X jest trzecią warstwą splotową.

02:07.860 --> 02:15.000
A teraz, aby spłaszczyć, musimy spłaszczyć tę trzecią splotową warstwę X i aby to zrobić, zrobimy coś

02:15.070 --> 02:20.220
bardzo podobnego, jak to zrobiliśmy tutaj, tylko tym razem nie potrzebujemy liczby

02:20.220 --> 02:25.090
neuronów, które po prostu trzeba spłaszczyć. kanały w trzecim sprzeciwie.

02:25.140 --> 02:28.130
Będzie to znacznie prostsze, ale bardzo podobne.

02:28.410 --> 02:35.570
I żeby to zrobić dobrze, weźmiemy X ponownie, ponieważ X stanie się warstwą spłaszczającą.

02:35.890 --> 02:43.990
Aktualizujemy tylko X, więc x jest równy, a następnie X, ale ten X jest starym X, który jest trzecią warstwą

02:43.990 --> 02:44.480
splotową.

02:44.550 --> 02:51.510
Więc wtedy bierzemy trzeci splot, ale wtedy przyjmujemy funkcję widoku, do której odnosimy się do

02:51.510 --> 02:52.460
argumentów.

02:52.530 --> 02:55.730
Pierwszy to X o wielkości zero.

02:56.100 --> 03:01.800
Więc ponownie bierzemy funkcję rozmiaru, aby wziąć wszystkie piksele ze wszystkich kanałów i trzeciej warstwy splotowej

03:01.800 --> 03:07.320
i umieszczamy je jeden po drugim w tym ogromnym wektorze, który stanie się tym X,

03:07.320 --> 03:11.280
a to X stanie się wejściem w pełni połączona sieć.

03:11.460 --> 03:12.860
Ale to nie wszystko, czego potrzebujemy.

03:13.080 --> 03:14.530
I oto podszedł.

03:14.650 --> 03:15.990
I minus jeden.

03:16.200 --> 03:19.170
Tę sztuczkę można znaleźć w samouczkach zegarków kieszonkowych.

03:19.350 --> 03:25.130
W ten sposób można spłaszczyć splot, składają się one z kilku kanałów za pomocą funkcji rozmiaru.

03:25.200 --> 03:29.890
I oczywiście, jeśli chcesz więcej szczegółów na temat tego, jak to działa, możesz przejść do samouczków kieszonkowych zegarków.

03:30.030 --> 03:31.410
Podam link.

03:31.800 --> 03:38.250
Teraz, gdy mamy już dobrze spłaszczone, wiesz, że spłaszczenie stanie się wejściem klasycznej,

03:38.580 --> 03:43.800
w pełni połączonej sieci z prostą linearną transmisją sygnału.

03:43.830 --> 03:49.440
Teraz nie użyjemy funkcji splotu, aby przekazać sygnał, że zamierzamy użyć liniowej transmisji

03:49.440 --> 03:54.720
z liniową klasą, a następnie przełamać liniowość, ponieważ kiedy pracujemy z

03:54.780 --> 03:57.670
obrazami i obrazami, mamy relacje liniowe.

03:57.900 --> 04:03.360
Cóż, użyjemy funkcji rektyfikowalnej, aby nauczyć się tych nieliniowych relacji.

04:03.510 --> 04:04.560
Zróbmy to.

04:04.560 --> 04:06.160
To jest w rzeczywistości następny krok.

04:06.210 --> 04:09.320
I tak teraz jest dokładnie tak, jak zrobiliśmy dla samochodu do samodzielnego prowadzenia.

04:09.360 --> 04:15.030
Bierzemy X, ponieważ chcemy go ponownie zaktualizować, chcemy teraz uzyskać ukrytą warstwę.

04:15.100 --> 04:20.970
Tak więc najpierw, co robimy, przejmujemy pełne połączenie SE1, ponieważ pełne połączenie.

04:20.970 --> 04:27.030
FC jeden jest tym, który łączy spłaszczoną warstwę z ukrytą i dlatego musimy wziąć SE1

04:27.300 --> 04:32.850
i zastosować ją do X, który mamy teraz, czyli tam, gdzie jest powódź.

04:33.000 --> 04:38.780
I oczywiście nie zapominamy o sobie, ponieważ każdy jest zmienną naszej funkcji init.

04:38.890 --> 04:45.510
Tak więc samouk SE1 X i tak przekazuje liniowo sygnał od pochlebnego do ukrytego tam.

04:45.690 --> 04:49.990
Ale teraz musimy aktywować te neurony, jednocześnie łamiąc prawo w errancy.

04:50.130 --> 04:53.480
I dokładnie to robimy z funkcją aktywacji prostownika.

04:53.490 --> 05:00.990
Musimy więc wziąć nasz moduł funkcjonalny iz tego modułu funkcyjnego przyjmiemy oczywiście

05:01.140 --> 05:03.870
funkcję prostą lub prostą.

05:04.230 --> 05:08.130
W nawiasie umieszczamy samouka SE1.

05:08.220 --> 05:14.280
W porządku, więc to, co dzieje się w tym wierszu kodu, polega na tym, że najpierw propagujemy sygnały z

05:14.280 --> 05:17.210
warstwy spłaszczającej do ukrytej warstwy w pełni połączonej sieci.

05:17.580 --> 05:23.970
A potem aktywujemy neurony tej ukrytej warstwy, włamując się w powietrze za pomocą tej funkcji

05:23.970 --> 05:29.100
aktywacji prostownika, a my dostajemy tam naszą głowę, która jest tutaj idealna.

05:29.130 --> 05:35.370
A teraz mamy jeden ostatni krok do zrobienia, to oczywiście propagowanie sygnału z ukrytej warstwy do

05:35.670 --> 05:39.680
warstwy wyjściowej z końcowymi neuronami wyjściowymi i do tego.

05:39.720 --> 05:41.160
To bardzo proste.

05:41.160 --> 05:43.680
Dokładnie tak, jak zrobiliśmy z samochodem.

05:43.680 --> 05:51.720
Przyjmujemy naszą drugą pełną kolekcję C2 i stosujemy ją oczywiście do neuronów ukrytej warstwy, która

05:51.990 --> 05:53.700
jest teraz x.

05:53.740 --> 05:55.900
Więc tutaj są neurony tu i tam.

05:56.040 --> 06:02.840
To wszystko x i x staje się oczywiście neuronami wyjściowymi warstwy wyjściowej zawierającej wartości kostek.

06:03.210 --> 06:10.070
I w końcu po prostu zwracamy neurony wyjściowe, które są x z wartościami kostki.

06:10.320 --> 06:11.240
Tak doskonały.

06:11.250 --> 06:16.950
Gratulacje, właśnie zrobiliśmy mózg, który właśnie stworzyliśmy mózg naszej sztucznej inteligencji z oczami i resztą

06:16.950 --> 06:17.740
komórek.

06:17.790 --> 06:19.130
Gratulacje.

06:19.140 --> 06:23.550
Teraz nadszedł czas, aby stworzyć ciało, które definiuje, w jaki sposób zamierzamy zagrać w akcję.

06:23.550 --> 06:26.480
Po tym wszystkim sygnały są przetwarzane w mózgu.

06:26.690 --> 06:28.370
To nasz drugi duży krok.

06:28.380 --> 06:30.280
Zróbmy to w następnych tutorialach.

06:30.300 --> 06:31.780
A do tego czasu AI.
