WEBVTT

00:00.180 --> 00:06.090
Hallo en welkom hierbij, Atauro is super enthousiast omdat we op het punt staan het H3C-brein te maken dat het brein

00:06.090 --> 00:10.430
is van onze A. L. En over hersenen gesproken, ik wil graag iets benadrukken.

00:10.770 --> 00:11.970
Herinnering aan de eerste module.

00:11.970 --> 00:15.260
We hebben een eenvoudig brein gemaakt met alleen volledig verbonden lagen.

00:15.690 --> 00:21.900
Vervolgens maakten we in de tweede module voor Dhoom een brein dat niet alleen volledig verbonden lagen had,

00:21.900 --> 00:28.800
maar ook ogen, omdat we de convolutionele lagen toevoegden die ijs aan het oog gaven omdat het de beelden kon

00:28.800 --> 00:31.230
observeren en begrijpen wat er binnenin gebeurt.

00:31.650 --> 00:37.530
En nu gaan we het zelfs op een hoog niveau aanpakken, want we gaan een brein maken dat

00:37.530 --> 00:43.470
niet alleen ogen heeft en lagen volledig met elkaar verbindt, maar ook geheugen, want zoals ik al zei

00:43.680 --> 00:49.800
in het vorige om te zwoegen, we gaan een regulier neuraal netwerk toevoegen in dit grote brein en dat

00:49.800 --> 00:55.980
zal een lang geheugen aan onze hersenen geven, zodat het de temporele relaties, de temporele eigenschappen van de invoerbeelden

00:55.980 --> 00:59.480
kan begrijpen, zodat we in een nog krachtiger brein gaan.

00:59.610 --> 01:04.170
Ik kan je vertellen dat het model dat we nu konden implementeren echt heel krachtig is.

01:04.830 --> 01:10.530
En we kunnen zien hoe gebouw A. L. S en het doen van diep leren, het

01:10.530 --> 01:14.520
doen van diep versterkend leren, heeft alles te maken met steeds dichter bij hoe een menselijk brein werkt.

01:14.930 --> 01:19.170
We zijn begonnen met de basisrelaties van de hersenen, met de lineaire voedselverbindingen.

01:19.420 --> 01:21.810
Daarna hebben we ised toegevoegd en het geheugen toegevoegd.

01:22.080 --> 01:24.830
Wie weet wat we in de toekomstige modellen gaan toevoegen.

01:24.840 --> 01:29.670
Weet je, over achttien jaar zullen ze misschien iets toevoegen waardoor het brein nog meer

01:29.670 --> 01:36.270
op een menselijk brein gaat lijken, maar al met volledig verbonden lagen, ogen en een geheugen, hebben we al een heel

01:36.270 --> 01:37.880
goed en functioneel brein.

01:38.640 --> 01:39.630
Dus laten we het doen.

01:39.630 --> 01:40.950
Laten we dit brein maken.

01:41.190 --> 01:46.410
Dus zoals gewoonlijk gaan we daar een klasse voor maken omdat het veel eigenschappen zal hebben

01:46.410 --> 01:48.410
met de windingen en de Russen.

01:48.720 --> 01:53.520
Dus we gaan het in zijn functie maken om dit alles te initialiseren, al deze verbindingen te creëren.

01:53.910 --> 01:59.070
En dan hebben we natuurlijk de Ford-functie die natuurlijk het signaal in de hersenen zal

01:59.070 --> 02:01.930
verspreiden, zodat we uiteindelijk de uitvoer kunnen krijgen.

02:02.400 --> 02:02.940
Oke.

02:03.060 --> 02:03.790
Ben je klaar?

02:03.990 --> 02:04.890
Laten we dit doen.

02:05.280 --> 02:13.050
Dus klas, we introduceren een nieuwe klas die we acteur-criticus noemen omdat ik het hier natuurlijk over hersenen

02:13.050 --> 02:13.650
heb.

02:13.650 --> 02:20.640
Maar laten we niet vergeten dat we een 3D-model aan het maken zijn, gebaseerd op het acteursprincipe met apart de acteur

02:20.640 --> 02:21.780
en de criticus.

02:21.990 --> 02:27.410
Dus we zullen eigenlijk één natuurlijke verbinding maken voor de acteur en één in jouw verbinding voor de criticus.

02:27.660 --> 02:28.920
U zult zien hoe we dat gaan doen.

02:28.920 --> 02:30.360
Het zal eigenlijk heel simpel zijn.

02:30.780 --> 02:38.850
Dus acteur, criticus en deze acteurscriticus-klasse zullen erven van de beoogde module, zodat we alle

02:38.850 --> 02:40.520
tools kunnen gebruiken.

02:40.710 --> 02:43.860
Dus laten we dit doen om te erven van de beoogde module.

02:44.010 --> 02:49.590
We moeten eerst de fakkelbibliotheek nemen en dat en dan.

02:49.800 --> 02:51.810
En dat en module.

02:52.930 --> 02:55.390
Goed, dus op die manier erven we ervan.

02:56.800 --> 03:01.240
Oké, dus daar gaan we met onze eerste functie, die natuurlijk de init-functie zal zijn.

03:01.490 --> 03:09.760
Dus we beginnen met daarin en het zal onderstrepen dat deze Senaatsfunctie zelf als argument voor het

03:09.760 --> 03:16.450
object gaat nemen, dan de invoervorm, dat zijn de afmetingen van onze invoerafbeeldingen.

03:16.450 --> 03:24.940
En we noemen het niet-invoer en de actieruimte, wat in feite de ruimte is die alle acties

03:24.940 --> 03:25.450
bevat.

03:25.850 --> 03:29.740
We zijn ook, weet je, uit deze actieruimte kunnen we een aantal acties krijgen.

03:29.740 --> 03:33.710
Dat zijn een aantal mogelijke acties die we binnenkort ook daadwerkelijk gaan krijgen.

03:33.730 --> 03:35.470
Dus daarom hebben we het ook nodig.

03:36.280 --> 03:38.170
Dus dat is voor de argumenten.

03:38.170 --> 03:39.070
Dat is alles wat we nodig hebben.

03:39.430 --> 03:45.050
En laten we dan naar de functie gaan en alle variabelen maken die eigen zijn aan onze hersenen.

03:45.700 --> 03:51.370
Maar voordat we dat doen, onthoud wat we moeten doen om op de een of andere manier de erfenis te activeren

03:51.370 --> 03:53.820
dat we alle tools vanaf het einde kunnen gebruiken.

03:53.890 --> 04:00.910
Die module moeten we op deze manier de superfunctie gebruiken, waarbinnen we actor invoeren.

04:01.800 --> 04:07.260
Criticus, dat is onze klas, en kom dan zelf op het onderwerp.

04:07.920 --> 04:12.690
Goed dan en daar gaan we weer met de erin.

04:13.890 --> 04:19.680
Functie, daar gaan we, dat geeft ons alle tools die we nodig hebben van fakkel om onze hersenen te bouwen.

04:20.220 --> 04:21.690
Oke dan.

04:22.000 --> 04:25.920
Nou, het is tijd om de ogen van de A. L. dat zijn de windingen.

04:26.310 --> 04:32.100
Dus we gaan het heel snel doen omdat we dit al in detail hebben uitgelegd voor Doom, want onthoud,

04:32.100 --> 04:33.930
de A. L. want Doom had ogen.

04:34.120 --> 04:35.310
Het is dus precies hetzelfde.

04:35.310 --> 04:40.650
We gaan wat kronkels maken en we zullen een heel eenvoudige architectuur gebruiken met tweeëndertig kenmerkdetectoren van

04:40.650 --> 04:44.950
formaat, drie bij drie schrijlings op twee en een paar van één.

04:45.300 --> 04:50.820
Dus dat is een behoorlijk klassieke architectuur, maar dat zal eigenlijk genoeg zijn om ervoor te zorgen dat het oog

04:50.820 --> 04:53.280
begrijpt wat er gaande is in de breakout-game.

04:54.300 --> 04:54.660
Oke.

04:54.660 --> 05:00.870
Dus laten we die windingen maken zodat we zichzelf oplossen, want de windingen zullen zo variabel zijn dat

05:00.870 --> 05:06.710
het object zelf dat we het niet kunnen noemen komt en er zullen vier windingen zijn.

05:06.710 --> 05:08.790
Dus ik noem deze één kom één.

05:09.330 --> 05:10.980
En daar gaan we.

05:10.980 --> 05:18.990
We nemen het einde in module DOT en dan nemen we de twee D-klasse, want eigenlijk zal tel één een object van

05:18.990 --> 05:20.430
deze klasse zijn.

05:21.350 --> 05:25.770
En dan zullen we eerst de invoervorm van de afbeeldingen plaatsen.

05:25.790 --> 05:32.160
Dus dat is precies wat we hier hebben, dus we kunnen dit kopiëren en als eerste invoer invoeren.

05:32.930 --> 05:38.230
Dan is het tweede argument het aantal feature detectors of ook het aantal kernels.

05:38.510 --> 05:42.290
Dus we gaan 30 nemen naar, zoals we net zeiden, klassieke keuze.

05:42.680 --> 05:49.450
Vervolgens moeten we een grootte van de kernel kiezen, dat is het aantal cellen dat over de invoerafbeelding zal

05:49.460 --> 05:49.850
schuiven.

05:50.000 --> 05:52.700
En onthoud dus dat we er drie, vier of vijf kunnen nemen.

05:52.700 --> 05:54.050
Dat zijn gewone keuzes.

05:54.050 --> 05:55.550
En hier gaan we er drie kiezen.

05:56.590 --> 05:59.020
En dan gaan we bestrides kiezen.

05:59.770 --> 06:01.660
Van twee en.

06:02.550 --> 06:11.100
Een patroon van één dat we hebben, dus dat is voor de eerste convolutie die van het invoerbeeld naar

06:11.100 --> 06:15.940
de eerste convolutionele lagen gaat, samengesteld uit tweeëndertig gecompliceerde afbeeldingen.

06:16.200 --> 06:18.750
Dus nu zijn we klaar om de tweede conclusie te trekken.

06:18.770 --> 06:21.380
Dus het zal eigenlijk bijna hetzelfde zijn.

06:21.390 --> 06:29.430
Dus ik kopieer deze regel en plak die hieronder, maar eigenlijk weer hieronder en plak hem nog een laatste

06:29.430 --> 06:36.640
keer omdat we vier windingen zullen hebben met bijna niets te veranderen, dus we kunnen hier al

06:36.640 --> 06:42.300
één voor één vervangen tot één voor drie en één voor vier.

06:42.510 --> 06:44.700
Dat zullen onze vier windingen zijn.

06:44.970 --> 06:48.870
En nu moeten we natuurlijk wat dingen veranderen, maar niet veel, want we houden een

06:48.870 --> 06:51.570
reeks van twee voor elk en een patroon van één.

06:52.260 --> 06:58.320
Ze zullen allemaal tweeëndertig feature-detectoren hebben, dat is 30 om ingewikkelde afbeeldingen uit te voeren.

06:58.650 --> 07:03.830
Maar bedenk hier, dit komt overeen met het linkerdeel van de winding.

07:04.020 --> 07:08.550
Dus eigenlijk komt dat overeen met wat zich aan de rechterkant van de vorige winding bevond.

07:08.550 --> 07:10.220
Weet je, onthoud, het is als een dominosteen.

07:10.230 --> 07:11.100
Het is dus heel gemakkelijk.

07:11.370 --> 07:15.900
En daarom moeten we hier tweeëndertig invoeren en ook hier.

07:17.070 --> 07:21.720
We gaan heel gemakkelijk tweeëndertig en tweeëndertig zien.

07:22.170 --> 07:28.470
Oké, om samen te vatten, we beginnen met de afbeeldingen van onze invoer die geen afmetingen van de invoer hebben.

07:29.220 --> 07:35.270
Met de eerste convolutie krijgen we 30 twee ingewikkelde afbeeldingen, die elk een specifiek kenmerk detecteren.

07:35.640 --> 07:41.850
Vervolgens passen we van deze dertig op ingewikkelde afbeeldingen de tweede convolutie toe om tweeëndertig nieuwe ingewikkelde afbeeldingen

07:41.850 --> 07:46.320
te krijgen die vervolgens worden verzonden vanuit deze tweeëndertig nieuwe ingewikkelde afbeeldingen.

07:46.350 --> 07:50.670
We passen de derde convolutie toe om opnieuw tweeëndertig nieuwe ingewikkelde afbeeldingen te krijgen.

07:50.970 --> 07:56.850
En uiteindelijk passen we van de tweeëndertig ingewikkelde afbeeldingen de vierde convolutie toe om kenmerken te krijgen.

07:57.300 --> 07:57.780
Oke.

07:57.780 --> 08:01.440
En dit is genoeg hiermee of ik zal de supervisie hebben.

08:01.440 --> 08:02.810
Het zal de bal heel goed pakken.

08:03.510 --> 08:03.870
Oke.

08:03.870 --> 08:05.580
Dus dat was het voor de bijdrage.

08:05.580 --> 08:06.960
Dus dat is het voor de ogen.

08:07.200 --> 08:13.230
En laten we nu voor het geheugen zorgen, deze nieuwe functie van dit brein die we implementeren in

08:13.230 --> 08:19.110
tegenstelling tot voorheen, zodat het niet alleen supervisie krijgt, maar ook een supergeheugen, een lang geheugen, omdat

08:19.110 --> 08:25.140
we gaan implementeren van een. T. M lange korte termijn geheugen, dat

08:25.140 --> 08:32.220
is dit soort regulier neuraal netwerk dat je model een soort van lang geheugen geeft, zodat het een aantal lange tijdsrelaties uit

08:32.220 --> 08:33.570
het verleden kan leren.

08:34.380 --> 08:37.560
Dus hetzelfde gaan we een nieuwe variabele maken.

08:37.560 --> 08:43.320
Dus ik begin met mezelf en dit is heel goed, we gaan het gewoon ASTM noemen,

08:43.320 --> 08:46.770
omdat dit overeenkomt met het Elysium-netwerk in de hersenen.

08:47.130 --> 08:54.760
Dus NCM en nu voordat we de code voor de NCM schrijven, laten we ervoor zorgen dat we begrijpen wat dit elysium-deel van de

08:54.930 --> 08:55.980
hersenen zal doen.

08:56.370 --> 09:03.770
Dus zoals we dit begrepen, wordt ASTM gebruikt om de temporele eigenschappen van de invoer, de invoerbeelden, te leren.

09:03.930 --> 09:09.140
Dus als de bal bijvoorbeeld een steen raakt, codeert het Elysium de bounce.

09:09.570 --> 09:11.160
Dus dat is het eerste wat je moet begrijpen.

09:11.220 --> 09:14.460
Het zal een beetje coderen wat er in het spel gebeurt.

09:14.910 --> 09:20.280
Dan is het volgende belangrijke om te begrijpen wanneer we een A. T. M. is dat we

09:20.280 --> 09:23.370
hier een volgorde van de tijdelijke afhankelijkheden moeten kiezen.

09:23.580 --> 09:28.860
Aangezien we ons neurale netwerk gaan voeden met een reeks van vier beelden, betekent dat

09:28.860 --> 09:36.210
dat we al enkele tijdelijke afhankelijkheden van orde kunnen leren, want dat zijn enkele tijdelijke afhankelijkheden waarbij wat er gebeurt bij twintig

09:36.330 --> 09:42.210
plus één afhangt van wat er op het moment gebeurt tt min één, T min twee en

09:42.230 --> 09:45.150
twee is gelukt zodat we dat zeker kunnen.

09:45.600 --> 09:51.390
Maar het goede nieuws is dat we een geldautomaat gaan gebruiken en daarom zullen we nog

09:51.390 --> 09:53.640
complexere temporele relaties kunnen leren.

09:54.280 --> 09:59.520
Dat wil zeggen, we kunnen enkele eenvoudige eigenschappen leren waarbij wat er gebeurt bij twintig plus

09:59.520 --> 10:06.360
één zal afhangen van wat er gebeurt op tijdstip tt min één tot min twee tot drie, tot T min N, en

10:06.540 --> 10:10.200
dat is het lange deel in de lange korte termijn geheugen.

10:10.530 --> 10:14.400
Met deze ASTM kunnen we een aantal zeer complexe temporele relaties leren.

10:15.310 --> 10:21.610
Oké, dus laten we onze a toevoegen. T. M, dus om dit te doen, gaan we

10:21.610 --> 10:29.730
de motormodule gebruiken en dan gaan we de klasse A toevoegen. T. M-cel, die dit ASTM-object zal maken, dat het eerste deel van het

10:29.950 --> 10:31.060
neurale netwerk zal vertegenwoordigen.

10:31.480 --> 10:37.190
Want wat op dit moment ook belangrijk is om te begrijpen, is dat we een C ornon, je

10:37.210 --> 10:39.310
weet wel, convolutioneel neuraal netwerk maken.

10:39.580 --> 10:42.630
En het Arland-gedeelte komt na het CNN-gedeelte.

10:42.820 --> 10:50.140
En daarom, wat we nu in deze LSM-cel moeten invoeren, is eerst de grootte van de uitvoer na de

10:50.140 --> 10:50.950
convolutie.

10:51.250 --> 10:55.780
Dus dat is tweeëndertig keer, drie keer drie.

10:56.080 --> 11:03.370
Dus deze 32 keer, drie keer drie is eigenlijk de output na de vier windingen hier, maar dat wordt de input van het

11:03.370 --> 11:07.250
ijzer in de a. T. M-netwerk.

11:07.690 --> 11:11.700
En waarom heeft de output van de vier windingen deze grootte.

11:11.710 --> 11:12.610
Tweeëndertig keer.

11:12.610 --> 11:13.390
Drie keer drie.

11:13.690 --> 11:15.900
Maak je geen zorgen, het is niet zo direct.

11:15.910 --> 11:17.650
Het is eigenlijk geen simpele formule.

11:17.890 --> 11:24.280
Maar er is een formule om dit aantal outputneuronen te berekenen na het afvlakken van de samengevoegde en

11:24.280 --> 11:26.250
ingewikkelde beelden van de windingen.

11:26.560 --> 11:31.640
Maar als we de termen van deze grote formule verzamelen, dan krijgen we tweeëndertig keer drie keer drie.

11:32.020 --> 11:35.920
Ik wilde hier niet te veel tijd aan besteden, want we hebben nog veel meer te doen.

11:36.010 --> 11:39.170
En bovendien hebben we al een functie gemaakt om dit getal te berekenen.

11:39.340 --> 11:45.610
Onthoud dat het in juni was toen we dit aantal neuronen lieten werken, zodat je het opnieuw kunt gebruiken als je wilt, als je

11:45.610 --> 11:46.540
niet overtuigd bent.

11:46.840 --> 11:52.480
Maar dat is precies wat we krijgen na het verzamelen van de voorwaarden van deze grote formule, het berekenen van het aantal

11:52.480 --> 11:52.990
uitgangen.

11:53.380 --> 11:55.300
Dus dat is voor het eerste argument.

11:55.600 --> 12:00.180
En dan is het tweede argument het aantal outputneuronen van de storm.

12:00.430 --> 12:03.370
En we gaan voor tweehonderdzesenvijftig.

12:04.460 --> 12:11.690
OK, en wat betekent dat nu, dat betekent dat we nu een vector hebben die elke gebeurtenis van het spel

12:11.690 --> 12:15.470
codeert of met andere woorden, we hebben een gecodeerde staat.

12:15.680 --> 12:21.590
En dat is nu dat we de scheiding kunnen maken tussen de acteur en de criticus, want, weet je,

12:21.590 --> 12:26.950
we gaan eigenlijk twee afzonderlijke neurale netwerken maken, een voor de acteur en een voor de criticus.

12:27.170 --> 12:33.140
Maar er zal dezelfde codering zijn van de afbeeldingen en de temporele relaties voor deze twee neurale

12:33.140 --> 12:33.650
netwerken.

12:33.890 --> 12:37.640
Dit is dus het gemeenschappelijke deel dat we doen voor deze twee neurale netwerken.

12:37.670 --> 12:43.580
Dit zal hetzelfde begin zijn voor de neurale netwerken, maar nu gaan de dingen veranderen voor de acteur en

12:43.580 --> 12:49.040
de criticus, want we gaan één lineaire, volledige verbinding maken voor de acteur en één andere dan ze

12:49.130 --> 12:51.590
zijn volledige verbinding voor de criticus .

12:52.100 --> 12:55.940
Dus laten we een korte pauze nemen en laten we dat de komende tijd doen.

12:56.210 --> 12:57.640
Tot dan, geniet ervan.
