WEBVTT

00:00.520 --> 00:02.690
Halo dan selamat datang di tutorial Python ini.

00:02.860 --> 00:05.680
Baiklah jadi kita harus sangat menggairahkan di depan kita.

00:05.680 --> 00:10.690
Kita akan mulai dengan menciptakan arsitektur jaringan saraf yaitu kita akan membuat jaringan

00:10.690 --> 00:16.740
saraf yang akan menjadi jantung AI kita dan yang akan mengembalikan aksi bermain pada usia 90.

00:16.930 --> 00:18.060
Jadi mari kita lakukan ini.

00:18.130 --> 00:23.130
Jadi karena kita ingin jaringan saraf kita menjadi objektif, kita akan menjadikannya kelas.

00:23.200 --> 00:25.100
Dan itu karena jauh lebih nyaman.

00:25.180 --> 00:28.370
Anda tahu kelas adalah model dari sesuatu yang ingin kita bangun.

00:28.540 --> 00:34.000
Kami ingin membangun jaringan saraf dan kami perlu membuat semacam instruksi yang semuanya akan terkandung di

00:34.090 --> 00:35.080
dalam kelas.

00:35.140 --> 00:37.910
Dan di kelas ini kita akan membuat dua fungsi.

00:37.960 --> 00:42.810
Pertama fungsi init yang merupakan fungsi yang muncul setiap saat saat membuat kelas.

00:43.000 --> 00:47.770
Dan itu pada dasarnya mendefinisikan variabel objek Anda yaitu jaringan saraf.

00:47.920 --> 00:52.600
Anda tahu variabel yang dilampirkan ke objek yang bertentangan dengan variabel global.

00:52.840 --> 00:57.910
Dan inilah fungsi yang akan menentukan arsitektur jaringan baru yang Anda ketahui mendefinisikan lapisan

00:57.910 --> 01:03.460
input yang akan terdiri dari lima neuron input karena kami memiliki lima dimensi untuk vektor yang

01:03.790 --> 01:05.680
dikodekan dari kondisi input.

01:05.890 --> 01:08.080
Kemudian kita akan mendefinisikan beberapa layer tersembunyi.

01:08.110 --> 01:12.940
Mungkin Anda akan mulai dengan satu lapisan tersembunyi dan kemudian Anda akan disambut untuk mencoba beberapa arsitektur lain

01:12.940 --> 01:13.920
dari jaringan saraf.

01:14.200 --> 01:20.080
Dan tentu saja kita akan berakhir dengan lapisan keluaran yang akan berisi tindakan yang mungkin bisa

01:20.110 --> 01:21.940
kita mainkan setiap saat.

01:22.180 --> 01:24.730
Jadi itulah tepatnya yang akan kita lakukan dalam fungsi ini.

01:24.850 --> 01:30.460
Dan kemudian kita akan membuat fungsi lain masih di dalam kelas yang akan menjadi fungsi maju

01:30.460 --> 01:34.870
dan itu akan menjadi fungsi yang akan mengaktifkan neuron dalam jaringan saraf.

01:34.870 --> 01:40.570
Anda tahu ini akan mengaktifkan sinyal dan jadi kami akan menggunakan fungsi aktivasi yang diperbaiki

01:40.570 --> 01:46.920
karena tentu saja kita berurusan dengan masalah yang tidak linier dan fungsi yang diperbaiki ini merusak linieritas.

01:47.200 --> 01:53.340
Tetapi sebagian besar kita membuat fungsi Ford ini untuk mengembalikan nilai q yang merupakan output dari jaringan.

01:53.500 --> 01:56.110
Tetapi kami memiliki satu nilai kunci untuk setiap tindakan.

01:56.200 --> 02:02.710
Dan nanti kami akan mengembalikan tindakan terakhir dengan mengambil nilai kunci maks atau menggunakan metode

02:02.710 --> 02:03.880
Max lunak.

02:04.030 --> 02:05.270
Kita akan melihatnya nanti.

02:05.440 --> 02:10.330
Jadi dalam tutorial ini kita akan mulai dengan mengimplementasikan fungsi init dan kemudian

02:10.330 --> 02:12.880
yang berikutnya akan mengimplementasikan fungsi forward.

02:12.880 --> 02:13.810
Jadi mari kita lakukan ini.

02:13.810 --> 02:17.060
Pertama, kita perlu memperkenalkan kelas kita.

02:17.200 --> 02:22.930
Jadi kita mulai dengan kelas dan kita beri nama ke kelas kita yang merupakan tempat kita menyebutnya jaringan.

02:23.650 --> 02:29.980
Dan kemudian di kelas jaringan ini saya akan menggunakan teknik pemrograman objek yang disebut pewarisan

02:30.310 --> 02:35.120
dan itu hanya untuk mewarisi dari semua alat dari kelas induk.

02:35.200 --> 02:41.550
Jadi kelas jaringan kami yang akan kami buat adalah tes anak dari kelas yang lebih besar.

02:41.770 --> 02:44.110
Dan modul itu.

02:44.470 --> 02:50.790
Jadi itu hanya untuk mewarisi dari semua alat kelas modul ini yang tentu saja alat untuk mengimplementasikan

02:50.790 --> 02:51.940
jaringan saraf.

02:51.940 --> 02:57.880
Jadi itu trik yang sangat kuat dan evolusi dalam pemrograman berorientasi objek yang akan diwariskan.

02:57.910 --> 03:02.670
Dan sekarang kita mewarisi dari kelas induk modul ini.

03:02.800 --> 03:06.000
Baiklah dan sekarang kita siap masuk ke dalam kelas.

03:06.130 --> 03:12.910
Jadi saya menekan enter dua kali sebenarnya karena kami akan membuat dua fungsi dan kami mulai dengan

03:13.140 --> 03:14.280
fungsi akhir.

03:14.350 --> 03:20.470
Jadi fungsi init kita harus menamakannya seperti ini dengan dua pada kursus ini lalu di dalamnya.

03:20.650 --> 03:25.750
Dan sekali lagi untuk menggarisbawahi itu hanya sintaks Python yang hanya bagaimana kita harus melakukannya.

03:25.930 --> 03:28.460
Dan kemudian kita perlu mengajukan argumen.

03:28.720 --> 03:30.340
Jadi kami punya tiga argumen.

03:30.340 --> 03:35.800
Yang pertama adalah argumen wajib yang sebenarnya adalah diri dan Diri.

03:35.800 --> 03:42.250
Tidak ada misteri tentang itu yang merujuk ke objek yang akan dibuat dari kelas ini yang akan kita

03:42.250 --> 03:42.810
buat.

03:42.820 --> 03:44.400
Anda tahu kami membuat kelas ini.

03:44.470 --> 03:48.980
Ini seperti beberapa instruksi beberapa model jaringan saraf yang ingin kita bangun.

03:49.180 --> 03:53.620
Dan setelah kelas siap kita dapat membuat sebanyak mungkin dengan jaringan yang kita inginkan.

03:53.620 --> 04:00.130
Dan masing-masing jaringan baru ini akan menjadi beberapa objek dari kelas ini dan karena kita akan

04:00.400 --> 04:07.630
menggunakan objek untuk beberapa tujuan lain, kita perlu tetapi apa variabel dari objek dan untuk Spudis kita menggunakan diri

04:07.630 --> 04:11.900
ini di sini untuk menentukan bahwa kita mengacu pada objek.

04:12.100 --> 04:18.430
Jadi, setiap kali saya ingin menggunakan yang tersedia dari objek saya, saya akan menggunakan sendiri sebelum variabel

04:18.430 --> 04:21.340
untuk menentukan bahwa ini adalah variabel objek.

04:21.340 --> 04:25.680
Baiklah jadi itulah argumen pertama dan kemudian kita memiliki dua

04:25.680 --> 04:30.240
argumen lain yang tentu saja jumlah neuron input dan jumlah neuron output.

04:30.550 --> 04:38.220
Jadi jumlah neuron input yang akan kita sebut ukuran input dan itu sebenarnya lima karena vektor

04:38.310 --> 04:45.890
input kami memiliki lima dimensi hingga tiga sinyal plus orientasi plus orientasi minus yang merupakan

04:45.900 --> 04:51.020
vektor nilai yang dikodekan yang menggambarkan satu keadaan lingkungan.

04:51.210 --> 04:54.960
Kelima nilai ini cukup untuk menggambarkan keadaan lingkungan.

04:54.960 --> 05:00.600
Kita bisa memikirkan nilai Kurang atau lebih banyak nilai tetapi itulah yang saya coba dan itu benar-benar masuk akal karena

05:00.600 --> 05:05.520
kita benar-benar membutuhkan satu sinyal dari yang kiri di depan kita dan satu di sebelah kanan.

05:05.520 --> 05:10.860
Anda tahu ketika sedang mengendarai mobil, kami bisa menggunakan sinyal 360 yang Anda tahu seperti

05:10.860 --> 05:17.370
sinyal di bagian atas mobil Google yang dapat kami kendalikan sepenuhnya dengan tiga sensor dan kemudian kami memiliki

05:17.400 --> 05:22.200
orientasi dan orientasi minus untuk Anda tahu melacak tujuan yang ingin Anda capai.

05:22.530 --> 05:29.160
Dan tentu saja kita memiliki neuron keluaran jaringan kita yang sesuai dengan tindakan dan kita memiliki tiga

05:29.160 --> 05:32.840
tindakan yang mungkin akan berjalan lurus atau lurus.

05:32.880 --> 05:38.520
Dan karena itu saya akan menyebutnya dan tindakan dan akan ada tiga dari mereka.

05:38.520 --> 05:39.030
Baiklah.

05:39.120 --> 05:44.850
Sejauh ini kita hanya perlu memberi nama pada input dan kemudian kita akan menggunakan bola voli ini untuk melakukan kondisi

05:44.940 --> 05:46.140
di dalam jaringan saraf.

05:47.090 --> 05:55.010
Baiklah dan Anda mulai dengan menggunakan trik obor lainnya trik ini adalah fungsi

05:55.010 --> 05:59.310
super fungsi yang sebenarnya diturunkan dari modul.

05:59.390 --> 06:02.730
Jadi itu sebabnya kami harus menggunakan warisan untuk mewarisi modul juga.

06:02.750 --> 06:04.440
Ini adalah yang pertama kali digunakan.

06:04.520 --> 06:11.120
Dan pada dasarnya kami hanya menggunakan fungsi super trik super untuk dapat menggunakan alat-alat modul yang

06:11.580 --> 06:13.320
jauh lebih efisien.

06:13.670 --> 06:18.620
Dan di dalam superfungsi saya hanya perlu menentukan dulu jaringannya.

06:18.650 --> 06:25.100
Jadi itulah kelas jaringan chul kami, Anda tahu karena ini mewarisi dari kelas induk modul

06:25.550 --> 06:27.360
dan kemudian objek kami.

06:27.380 --> 06:35.220
Dan kemudian saya hanya menambahkan itu dan berada dalam fungsi seperti ini persis bagaimana kita menamainya.

06:35.570 --> 06:39.350
Baiklah jadi itu hanya tipuan yang hanya menggunakan semua alat yang saya miliki.

06:39.360 --> 06:46.270
Dan dalam modul itu maka kita bisa melanjutkan ke langkah selanjutnya yaitu menentukan lapisan input.

06:46.550 --> 06:53.300
Jadi pada dasarnya yang harus saya lakukan adalah memperkenalkan variabel baru yang akan dilampirkan ke objek

06:53.300 --> 06:57.120
dan variabel ini akan berisi jumlah neuron input.

06:57.170 --> 07:05.140
Jadi jangan bingung dengan ukuran input ukuran input adalah argumen dari fungsi akhir.

07:05.180 --> 07:09.710
Tapi itu bukan variabel yang melekat pada objek, tetapi variabel yang melekat pada

07:09.710 --> 07:10.360
objek.

07:10.520 --> 07:16.520
Seperti yang baru saja saya sebutkan, kita perlu menentukan bahwa itu bukan melekat pada objek sehingga kita menggunakan

07:17.230 --> 07:22.130
otodidak dan sekarang kita beri nama untuk variabel pertama yang melekat pada objek.

07:22.190 --> 07:24.870
Jadi kita cukup memberikan nama yang sama dengan input.

07:24.920 --> 07:33.650
Kita bisa menyebutnya ukuran input dan kita akan mengatakan itu sama dengan argumen fungsi yang ukuran input.

07:33.680 --> 07:34.080
Baiklah.

07:34.130 --> 07:39.900
Setiap kali saya membuat objek dari kelas jaringan dan saya menentukan ukuran input seperti misalnya

07:39.900 --> 07:41.170
saya meletakkan 5.

07:41.180 --> 07:47.330
Akan ada 5 di sini dan oleh karena itu variabel ukuran input dari objek kita akan memiliki nilai 5

07:47.690 --> 07:54.110
karena ukuran input ini di sini adalah 5 dan karena itu jaringan baru kita akan memiliki 5 neuron input

07:54.110 --> 07:55.470
pada lapisan input.

07:55.490 --> 07:55.790
Baiklah.

07:55.790 --> 08:02.180
Dan kemudian itu sama untuk variabel lain yang ingin kita lampirkan ke objek.

08:02.210 --> 08:08.100
Dan seperti yang Anda duga ini akan menjadi variabel untuk jumlah neuron keluaran.

08:08.330 --> 08:15.030
Dan untuk mengatakan kita mengambil objek kita sendiri dan kemudian kita beri nama untuk variabel kedua dari objek

08:15.040 --> 08:17.740
yang akan kita sebut itu dan tindakan.

08:18.170 --> 08:23.600
Dan ini akan sama dengan argumen ini di sini mengingat jumlah tindakan yang merupakan jumlah neuron

08:23.600 --> 08:24.250
keluaran.

08:24.530 --> 08:30.850
Jadi kami mengaturnya sama dengan aksi sebenarnya dan tindakan itu akan sama dengan tiga.

08:30.890 --> 08:37.930
Oleh karena itu variabel dan tindakan yang dilampirkan ke objek kita ke jaringan akan mendapatkan nilai tiga.

08:38.240 --> 08:41.680
Sebenarnya kita bisa melihat peringatan di sini tertulis nama yang tidak ditentukan.

08:41.720 --> 08:44.180
Dan kemudian itu karena di sini kita menggunakan.

08:44.230 --> 08:46.030
Lalu jalan pintas.

08:46.350 --> 08:48.530
Dan kita perlu menggunakan jalan pintas di sini.

08:48.590 --> 08:52.780
Dan untuk memulai torche kami dan di Mudgal dan kemudian itu akan hilang.

08:52.880 --> 08:53.670
Kita mulai.

08:53.690 --> 08:54.580
Sempurna.

08:54.590 --> 09:00.800
Saat ini kami memiliki peringatan baru, semua peringatan di sini hanya untuk menentukan bahwa apa yang kami impor

09:00.800 --> 09:01.520
belum digunakan.

09:01.580 --> 09:04.660
Tidak apa-apa kita akan menggunakannya nanti.

09:04.670 --> 09:10.010
Baiklah kita punya dua variabel lain yang ingin kita definisikan untuk objek.

09:10.190 --> 09:15.820
Dan ini akan menjadi koneksi penuh koneksi penuh antara berbagai lapisan jaringan

09:15.830 --> 09:16.810
saraf kita.

09:16.820 --> 09:21.800
Jadi karena saat ini kami ingin membuat jaringan saraf yang hanya terdiri dari satu kepala di dunia mereka,

09:21.800 --> 09:23.440
akan ada dua koneksi penuh.

09:23.570 --> 09:27.740
Akan ada satu koneksi penuh pertama antara lapisan input dan lapisan tersembunyi.

09:27.980 --> 09:32.450
Dan satu koneksi penuh kedua antara bukit di sana dan lapisan output.

09:32.480 --> 09:34.770
Jadi mari kita mulai dengan koneksi penuh pertama.

09:34.890 --> 09:43.310
Kita akan menyebutnya SE1 Dan sekali lagi saya menggunakan diri di sini untuk menentukan bahwa FC satu adalah variabel dari objek saya untuk

09:43.780 --> 09:44.530
menyelesaikannya.

09:44.530 --> 09:47.490
FC yang sama dengan.

09:47.630 --> 09:55.160
Dan sekarang kita menggunakan modul N in dan kita akan menggunakan fungsi yang disebut linear R dan itulah

09:55.160 --> 10:02.080
tepatnya untuk membuat koneksi penuh antara neuron dan lapisan input ke neuron yang tersembunyi di sana.

10:02.180 --> 10:04.090
Dan apa yang saya maksud dengan koneksi penuh.

10:04.160 --> 10:09.190
Itu berarti bahwa semua neuron pada lapisan input semua akan terhubung ke semua neuron di sini

10:09.190 --> 10:09.920
di sana.

10:10.190 --> 10:16.140
Jadi untuk membuat koneksi ini kita menggunakan fungsi linear yang kita perlu letakkan beberapa argumen.

10:16.190 --> 10:19.880
Dan seperti yang Anda lihat, argumen ini ada dalam fitur.

10:19.880 --> 10:25.370
Jadi itu adalah jumlah neuron dari hukum pertama yang ingin Anda hubungkan dengan fitur yang merupakan jumlah

10:25.370 --> 10:30.110
neuron dari lapisan kedua yang ingin Anda hubungkan yaitu lapisan di sebelah kanan yang merupakan

10:30.110 --> 10:32.360
lapisan tersembunyi dan sepeda itu benar.

10:32.420 --> 10:38.850
Jadi sepeda benar kita akan mempertahankan nilai default yang memiliki bias dan tidak hanya bobot yang melekat

10:38.900 --> 10:43.350
pada lari kita harus menunggu dan satu bias untuk setiap lapisan.

10:43.610 --> 10:46.140
Dan mari kita lihat apa yang perlu kita input.

10:46.280 --> 10:51.850
Jadi argumen pertama dalam fitur adalah jumlah neuron input di lapisan input.

10:52.000 --> 10:52.930
Dan dimana itu.

10:53.030 --> 10:55.080
Sebenarnya itu tidak tepat.

10:55.100 --> 11:01.930
Itulah argumen dari fungsi init kita yang nantinya kita akan dapat melawan orientasi tiga sinyal

11:02.200 --> 11:04.150
dan orientasi Mannus.

11:04.160 --> 11:05.020
Jadi di sini kita mulai.

11:05.190 --> 11:14.300
Ketika argumen pertama dan menempatkan ukuran dan kemudian argumen kedua keluar fitur yaitu jumlah neuron yang ingin

11:14.300 --> 11:17.090
kita miliki di lapisan kedua.

11:17.180 --> 11:20.450
Lapisan kedua yang akan sepenuhnya terhubung ke lapisan pertama.

11:20.450 --> 11:24.960
Jadi sekarang pertanyaannya adalah berapa banyak neuron yang kita inginkan di lapisan tersembunyi ini.

11:25.220 --> 11:27.420
Yah saya melakukan banyak pelatihan parameter.

11:27.440 --> 11:29.110
Saya melakukan banyak percobaan.

11:29.210 --> 11:31.940
Itulah yang kami lakukan atau itulah yang kami lakukan lebih dalam.

11:31.940 --> 11:38.270
Secara umum kami melakukan banyak percobaan untuk melihat apa yang akan menjadi jaringan saraf terbaik untuk masalah

11:38.270 --> 11:39.170
spesifik kami.

11:39.170 --> 11:45.950
Jadi saya mencoba banyak nilai dan saya akhirnya memilih 30 30 berjalan dalam lapisan tersembunyi dan Anda akan melihat bahwa dengan nomor

11:45.950 --> 11:50.750
ini kita akan mendapatkan beberapa hasil yang cukup bagus tetapi kemudian merasa bebas untuk mengubah arsitektur

11:50.750 --> 11:51.580
jaringan saraf.

11:51.580 --> 11:53.120
Jangan ragu untuk bermain dengannya.

11:53.180 --> 11:58.730
Anda tidak hanya dapat mengubah jumlah neuron di sana-sini tetapi juga Anda dapat menambahkan beberapa lapisan sehingga

11:59.150 --> 12:05.000
mungkin Anda mendapatkan mobil yang lebih baik tetapi 30 hinna neuron akan memberi kita jaringan saraf yang baik dan

12:05.000 --> 12:06.000
tujuan yang baik.

12:06.020 --> 12:07.390
Jadi itulah tujuan kami.

12:07.520 --> 12:08.410
Dan kita mulai.

12:08.420 --> 12:13.500
Kami memiliki koneksi penuh pertama kami benar-benar dengan fungsi linier ini.

12:13.520 --> 12:16.910
Kami membuat koneksi antara lapisan input dan kaki tersembunyi.

12:17.360 --> 12:23.270
Dan sekarang saatnya untuk membuat koneksi penuh kedua yaitu koneksi penuh antara lapisan tersembunyi

12:23.600 --> 12:25.180
dan lapisan keluaran.

12:25.490 --> 12:26.750
Jadi begitulah.

12:26.750 --> 12:31.380
Kita akan memanggil koneksi penuh kedua ini di C2.

12:31.490 --> 12:32.280
Itu dia.

12:32.360 --> 12:36.400
Dan ini masih tersedia untuk lebih banyak objek menggunakan Saphir.

12:36.650 --> 12:38.330
Dan sekali lagi kita gunakan.

12:38.450 --> 12:45.310
Sebenarnya kita bisa menyalin ini karena kita akan menggunakan modul N in dan kemudian fungsi linear.

12:45.530 --> 12:49.250
Tapi kemudian kita perlu mengubah argumennya terlebih dahulu.

12:49.280 --> 12:55.050
Yang sama pertama adalah jumlah neuron yang akan kita miliki di lapisan pertama koneksi.

12:55.190 --> 12:56.510
Jadi itulah yang tersembunyi di sana.

12:56.720 --> 13:03.810
Dan karena itu 30 dan kemudian argumen kedua adalah jumlah neuron di lapisan kedua koneksi

13:04.010 --> 13:08.810
dan yang sesuai dengan lapisan output dan output yang ada.

13:08.980 --> 13:15.020
Dan neuron aktual yang nantinya akan menjadi tiga karena kita memiliki tiga tindakan yang mungkin tetapi sejauh ini kita

13:15.020 --> 13:16.930
harus menggunakan nama yang kita definisikan.

13:17.050 --> 13:23.990
Itulah nama argumen dari fungsi init dan oleh karena itu kami masukan di sini dan tindakan dan di sana

13:23.990 --> 13:24.950
kami pergi.

13:24.950 --> 13:27.760
Pertama-tama koneksi tuple kami kembali.

13:27.920 --> 13:30.980
Dan yang kedua adalah fungsi Israel.

13:31.400 --> 13:36.940
Jadi itulah yang akan kita inisialisasi objek kita setiap kali kita membuat objek dari kelas jaringan.

13:37.130 --> 13:44.300
Dan begitu kita membuat objek dengan baik, semua variabel ini untuk variabel di sini memasukkan ukuran dan reaksi.

13:44.380 --> 13:46.980
Anda satu dan dua akan ditentukan.

13:47.180 --> 13:52.060
Dan itulah bagaimana kita akan mendapatkan arsitektur jaringan hewan kita untuk setiap objek yang kita buat.

13:52.160 --> 13:59.450
Setiap objek akan berhubungan dengan jaringan saraf lima neuron input 30 neuron tersembunyi dan tiga

13:59.450 --> 14:00.440
neuron output.

14:00.470 --> 14:01.430
Jadi begitulah.

14:01.430 --> 14:06.980
Kita selesai dengan fungsi pertama ini dan sekarang kita dapat beralih ke fungsi kedua

14:06.980 --> 14:13.100
yang merupakan fungsi maju dan yang akan digunakan untuk mengaktifkan neuron dalam jaringan saraf menggunakan fungsi

14:13.100 --> 14:19.500
aktivasi penyearah dan sebagian besar akhirnya kembali ke nilai kubus yang merupakan output dari hanya satu jaringan.

14:19.580 --> 14:23.420
Jadi saya tidak sabar untuk melakukan ini di tutorial berikutnya dan sampai saat itu saya.
