WEBVTT

00:00.420 --> 00:03.950
Merhaba ve self-driving araba Maggio için tekrar hoşgeldiniz.

00:03.960 --> 00:10.200
Yapay zekayı uygulayacağımız ortamı açıklayacağım ve tabii ki kendisini sürükleyecek ve engellerden

00:10.410 --> 00:16.500
kaçınacak arabayı da içeren bir yol izleyeceğim ve üzerinde bazı yollar ve

00:16.500 --> 00:20.950
bazı bloklar çizilecek olan araba. arabalarımız etrafında gezinmek için.

00:21.210 --> 00:28.170
Bu nedenle, bu arabayı, sınırları aşmadan bildiğiniz yolda sürmek ve yolun içine

00:28.170 --> 00:33.830
koyacak bazı engellerden kaçınmak için bu yapay zekayı inşa edeceğiz.

00:34.140 --> 00:35.870
Bu oldukça heyecan verici bir mücadeledir.

00:35.910 --> 00:42.000
zeka olan apeks ve tavuk olduğunu görebileceğiniz Aslında iki ayrı dosya var.

00:42.000 --> 00:47.090
Aracınızı nasıl satacağınızı eğitmek için tüm eğitimi verecek olan yapay

00:47.280 --> 00:52.080
Ve bulduğumuz bir haritamız, tüm bu çevreyi oluşturan kod.

00:52.110 --> 00:57.090
Yani aslında 200 satırlık bir kod olan bu kod biraz daha fazla.

00:57.090 --> 01:00.460
Dolayısıyla bu kod genellikle AI ile alakalı değildir.

01:00.510 --> 01:03.380
Çevreyi harita yapmak için sadece bir kod.

01:03.420 --> 01:08.430
Bu nedenle bölümlerin her birini açıklamak için birer birer inceleyeceğim,

01:08.430 --> 01:13.610
ancak yapay zekaya odaklanmak isteyeceğiz, çünkü bu kodu satırdan sıfırdan uygulamayacağız.

01:13.740 --> 01:17.160
Ancak, neler olup bittiğini anlamak için bölümleri tek tek dolayım.

01:17.370 --> 01:22.020
İlk önce herhangi bir kod için merkezi kütüphaneleri içe aktarıyoruz.

01:22.110 --> 01:28.770
Bazı görevleri daha verimli bir şekilde gerçekleştirmek için bazı kütüphanelere ihtiyacımız var, bu da tüm küp paketlerini içe aktarmaktan daha iyi.

01:28.890 --> 01:35.140
Bu çok önemli değil çünkü Cavey'ye özgü bu, haritayı yapmak için kuduz kullanıyoruz.

01:35.190 --> 01:41.010
Ve bu nedenle, bu haritayı yapabilmek ve haritaya bazı araçlar ekleyebilmek için birçok sınıf ve

01:41.010 --> 01:42.210
nesne içe aktarıyoruz.

01:42.210 --> 01:44.420
Tamam, o zaman bu çizgi önemlidir.

01:44.430 --> 01:53.130
Bu çizgi birbiriyle ilişkili çünkü temelde beynimizi arabanın beynine ithal ediyoruz ki bu beynin sınıfta

01:53.220 --> 01:57.760
ve sınıfta öğretmenin yaptıkları bir başka jet olacak.

01:57.820 --> 02:00.570
Yapay zekamızın kendisi.

02:00.570 --> 02:04.680
Aşağıdaki öğreticilerde sınıfta dequeue'u uygulayacağımızı göreceksiniz.

02:04.680 --> 02:09.650
Ve derin Q ağları için dequeue örneğini tahmin etmiş olabilirsiniz.

02:09.650 --> 02:15.450
Bu yüzden, bir dequeue öğrenme ağını uygulayacağız ve sonra hazır

02:15.540 --> 02:21.910
olduğumuzda AI'dan bu satırla içeri aktaracağız ve elbette gözler bir python dosyası.

02:21.990 --> 02:22.310
Tamam.

02:22.320 --> 02:24.450
Bu yüzden bunu uygulamak için sabırsızlanıyorum.

02:24.450 --> 02:29.520
heyecan verici olacağını göreceksiniz, çünkü ben sayesinde otomobil kendisini sürdürecek.

02:29.520 --> 02:33.200
Bu oldukça yolculuk olacak, ancak bunun çok

02:33.270 --> 02:33.880
Tamam.

02:33.880 --> 02:39.060
Ve şimdi sonraki bölümlere geçmeden önce bu arabayı nasıl trenleyeceğimizi açıklamak zorundayız.

02:39.060 --> 02:43.880
Şu anda sinir ağını açıklamayacağım, ancak aracın kendini sürmek için

02:43.920 --> 02:48.080
nasıl tren kurabileceğimizi ve engellerden kaçınma fikrini açıklayacağım.

02:48.360 --> 02:54.130
Yani bazı duvarlardan veya bazı engellerden kaçınmak için gerçek bir araba yetiştirmek isterseniz, gerçek hayatta bunu biliyorsunuzdur.

02:54.390 --> 02:55.580
Ne yapardın peki.

02:55.830 --> 03:01.130
Kesinlikle gerçek duvarları ya da gerçek engelleri almazsın ve arabanı onlara çarparak.

03:01.200 --> 03:02.710
Bu size çok para kazandıracaktır.

03:02.850 --> 03:10.170
Bunun yerine daha akıllı bir düşünce, arabanı cezalandırmak değil, bir duvarı ya da bir engeli parçaladığında değil,

03:10.410 --> 03:12.690
bir kumun üzerine geldiğinde değil.

03:12.810 --> 03:14.220
Sanki bir alanınız var gibi.

03:14.220 --> 03:19.680
Bu alanın üzerinde arabanın üzerinde kalması gereken bazı yollar vardır ve yollar bazı kumlarla sınırlandırılmıştır.

03:19.860 --> 03:25.500
Ve araba her merkeze gittiğinde sanki bir engel oluyor gibi görünüyor çünkü bir

03:25.500 --> 03:31.050
araba araba bir yere girdiğinde yavaşlayacak ve aracın cezalandırılmasını sağlamak için bunun cezalandırılmasını

03:31.050 --> 03:31.630
sağlayacağız.

03:31.860 --> 03:35.200
Yapay zekanın temel bir noktası da budur.

03:35.220 --> 03:40.210
Kötü kelime, araba birtakım anlamlara geldiğinde yavaşlar ve yavaşlar.

03:40.230 --> 03:40.770
Tamam.

03:40.770 --> 03:45.160
Ve bu nedenle burada son metni tanıtıyorum ve bu yüzden.

03:45.300 --> 03:50.650
Haritada bazı kokular çektiğimizde bellekteki son noktanın koordinatları.

03:50.760 --> 03:51.110
Tamam.

03:51.120 --> 03:57.720
beyin dediğimiz ve bizim sinir ağımızı içeren yapay zekamızı elde ederiz ve bunu beyin

03:57.900 --> 04:03.020
diyeceğiz çünkü aslında bu aracın beyinidir ve Erişte Ağı içerir.

04:03.030 --> 04:03.920
Sonra da

04:04.350 --> 04:04.730
Tamam.

04:04.770 --> 04:10.200
Böylece, bu kod satırında gördüğünüz gibi, sınıftaki öğretmende nesneler yaratıyorum.

04:10.230 --> 04:17.000
Sınıfları ve nesneleri hatırlatmak isterim, ancak nesne Brenna'nın sınıfa ve 5: 3 ve 0

04:17.010 --> 04:19.660
gayretsizleştirmesine neden olur. 9 sınıfın girdileri.

04:19.680 --> 04:26.880
Bu çok basit olan beş, beş boyutlu bir şekilde kodlanmış olan durumlara karşılık gelir

04:26.880 --> 04:31.710
ve haritadaki ortamda neler olduğunu mükemmel şekilde tarif ettiklerini göreceğiz.

04:31.830 --> 04:38.820
üç eylemin sola doğru gittiği veya sağa döndüğü eylem sayısıdır.

04:39.330 --> 04:44.190
Ardından üç, olası 9 yine dequeee öğrenme algoritmasında bir parametredir.

04:44.220 --> 04:46.900
Pekâlâ, dönme hareketi var.

04:46.980 --> 04:50.910
Dolayısıyla dönme hareketi üç öğeden oluşan bir vektördür.

04:50.910 --> 04:53.290
020 ve eksi 20.

04:53.300 --> 05:01.820
Ve bu yüzden bunu yapmak zorundayız, çünkü eylemler üç sayı 0 1 ve 2 ile kodlanır ve bu eylemin

05:01.820 --> 05:04.700
iki dönme vektörünün endekslerine karşılık gelir.

05:04.710 --> 05:11.160
Örneğin t zamanında seçilen eylem sıfır ise.

05:11.270 --> 05:18.990
İyi sıfır, bu eylemin iki dönme vektörünün endeksine karşılık gelir ve 0 indeksinin değeri sıfırdır.

05:19.150 --> 05:24.490
Ve bu nedenle, seçilen eylem 1 ise, o halde düz gideriz.

05:24.770 --> 05:30.380
Birincisi, bu eylemin endeksine iki ek vektör ile karşılık gelir ve

05:30.380 --> 05:32.810
bir sonraki vektörün değeri 20'dir.

05:32.810 --> 05:38.580
Yani 20, 20 derecelik bir dönüşüme karşılık gelir ve bu, kodun sağa 20

05:39.260 --> 05:46.500
derece gideceği anlamına gelir ve daha sonra seçilen eylem bu vektör için bu eylemin dizinine denk gelirse.

05:46.700 --> 05:52.570
Ve bu nedenle kod eksi 20 derecelik bir dönüş yapacak ve bu nedenle sola gidecektir.

05:52.580 --> 06:00.200
Pekâlâ, sol ödül olan Voivode'u tanıtıyoruz, çünkü her aşamada son sözü alacak.

06:00.200 --> 06:04.970
Kartın bir anlam ifade etmediğini, ardından ödülün pozitif olmasını hatırlayın.

06:05.180 --> 06:11.780
Ve eğer kod bir anlamda iyi giderse, kötü bir ödül alır ve bu değişken

06:11.780 --> 06:15.270
her zaman H20'yi aldığı bu ödülü içerecektir.

06:15.500 --> 06:20.760
Ve sonra skoru içeren bir vektör olan skorları başlatırız.

06:20.780 --> 06:22.780
Hepsi değil, ödül.

06:22.800 --> 06:28.340
Sürgülü bir pencerenin üstüne çıkın, böylece biliyorsunuz ki, ortalamanın bir eğrisi ile zamana

06:28.340 --> 06:29.440
göre ödüllendirilebiliriz.

06:29.450 --> 06:34.520
Pekâlâ, bu kod bölümünde haritayı başlatıyoruz, böylece başlatıyoruz.

06:34.520 --> 06:36.170
Örneğin sözü geçen değişken.

06:36.170 --> 06:37.220
Bu çok önemli.

06:37.220 --> 06:42.710
İkinci değişken aslında hücrelerin haritanın pikselleri olacağı ve her hücrede

06:43.250 --> 06:45.880
1 olacak bir dizi olacak.

06:45.980 --> 06:52.120
Başlangıçta herhangi bir merkez yoksa bir anlam ifade edersek bir şey çizmezsiniz.

06:52.160 --> 06:57.840
Dolayısıyla hiçbir anlamı kalmayacak ve bu nedenle merkez dizisinin tüm hücreleri sıfır olacaktır.

06:57.860 --> 07:02.990
Her yerde sıfırlar olacak ve anlam kazandığımız hücreler alınıp

07:02.990 --> 07:10.290
bir anlam çıkaracağız, hemen buradaki sıfırların hepsiyle eşitlik ve sıfırlar göndererek yarış başladık.

07:10.370 --> 07:13.510
O zaman hedefimiz olan bu önemli şey var.

07:13.520 --> 07:17.630
Böylece amaç, haritadaki arabayı eğitecek bir noktadır.

07:17.630 --> 07:19.850
Yani bir varış noktası gibi.

07:19.850 --> 07:21.460
Peki bu hedef ne olacak.

07:21.560 --> 07:27.380
Peki bu harita sol üst köşesine gitmek için arabayı eğitmek için haritanın sol

07:27.380 --> 07:28.480
üst köşesinde olacak.

07:28.550 --> 07:33.290
Ve sonra harita üst sol köşesine ulaştığında aşağıdaki senaryoyu tahmin edebilmemiz

07:33.290 --> 07:36.590
için haritanın sağ alt köşesine doğru eğilim göstereceğiz.

07:36.590 --> 07:42.620
köşesi bir şehrin havaalanıdır ve haritanın sağ alt köşesi şehrin şehir merkezidir.

07:42.620 --> 07:44.320
Haritanın sol üst

07:44.570 --> 07:50.180
Ve biz havaalanı ve şehir arasında bazı turlar yapmak için bir taksi ya da Uber eğitiriz.

07:50.210 --> 07:55.610
Ve tabii ki daha zorlu yollar çizerek ve taksinin havaalanından şehir merkezine

07:55.700 --> 08:01.190
gidebilecek durumda olup olmadığını görmek için cadde üzerinde gittikçe daha fazla engel

08:01.190 --> 08:02.760
ekleyerek bu taksiye zorlaşacağız.

08:02.990 --> 08:04.170
Bu yüzden eğlenceli olacak.

08:04.190 --> 08:11.030
Ve bu yüzden ekranın sol üst köşesinde olan havaalanı olan ilk

08:11.030 --> 08:12.640
hedefin koordinatlarını ayarlayacağım.

08:12.830 --> 08:20.000
Dolayısıyla harita böyle bir kare gibi olacak ve koordinatları 00 olan

08:20.090 --> 08:22.090
orijin koordinatları burada.

08:22.340 --> 08:25.250
Ve burada bu mesafe daha büyük.

08:25.310 --> 08:32.640
Dolayısıyla, 20 ve Najah eksi 20 koordinatları bu nedenle burada haritanın sol üst köşesinde olacak.

08:32.790 --> 08:35.650
Ve neden sıfır değil 20'yi seçtim?

08:35.850 --> 08:40.300
Bunun nedeni arabayı surlara koşmamak için eğitmek istiyoruz.

08:40.320 --> 08:45.450
Duvarlara da tren yapmak istediğimizi biliyorsunuz ve bu nedenle sıfır olmayacak çünkü

08:45.450 --> 08:48.120
aracın gitmeye dokunduğumuz yere dokunmasını istemiyoruz.

08:48.180 --> 08:53.910
Bu noktayı hemen buraya koymalıyız ve o zaman sadece arabadan yola şimdiki

08:53.910 --> 08:58.200
mesafeyi veren son uzaklık değişkenini tanıtıyorum ve sıfıra başlatıyorum.

08:59.020 --> 08:59.470
Tamam.

08:59.480 --> 09:02.220
Ve şimdi araba ve oyunu yapmak için zamanı.

09:02.370 --> 09:06.650
Böylece iki sınıfı araba için bir sınıf ve oyun için bir sınıf yapacağız.

09:06.850 --> 09:10.850
Ve bu sınıfların içinde zaten AI ile bazı bağlantılar kuracağız.

09:11.170 --> 09:13.170
Bunu bir sonraki Statoil'de yapacağız.

09:13.180 --> 09:15.000
Ve o zamana kadar tadını çıkarın.
