WEBVTT

00:00.540 --> 00:05.090
Halo dan selamat datang di cerita ini hampir judul terakhir dari modul ini.

00:05.100 --> 00:10.260
Saya hanya akan menjelaskan kode utama yang akan menjalankan semuanya sebelum kita mendapatkan hasil yang

00:10.290 --> 00:11.930
menarik dan menonton videonya.

00:12.090 --> 00:15.920
Jadi ini adalah kode utama dan seperti yang Anda lihat ini cukup singkat.

00:15.930 --> 00:21.120
Kami mulai dengan mengimpor perpustakaan dan modul dan juga berbagai kelas dan fungsi yang

00:21.120 --> 00:24.270
kami buat seperti Altikriti dari file model kami.

00:24.390 --> 00:30.210
Fungsi kereta dari file kereta dan fungsi tes dari file tes dan tentu saja kami

00:30.270 --> 00:31.930
mengimpor pengoptimal kami.

00:31.950 --> 00:37.350
Kemudian kita mulai dengan bagian pertama di mana kita masuk ke kelas semua parameter.

00:37.500 --> 00:39.660
Dan ini mungkin ini.

00:39.720 --> 00:44.040
Ingat ini adalah objek BRAM yang kami buat dari kelas harams ini.

00:44.040 --> 00:48.900
Setiap kali kita mendapatkan parameter seperti tingkat belajar kita tidak tanpa parameter.

00:49.200 --> 00:50.870
Jadi mari kita telusuri mereka dengan cepat.

00:50.880 --> 00:54.380
Yang pertama ini atau di sini adalah tingkat pembelajaran.

00:54.480 --> 00:59.140
Jadi seperti yang Anda lihat kami memilih yang kecil dan Anda menilai yang kedua adalah parameter.

00:59.160 --> 01:09.810
Sekali lagi kita anggap sebagai 0. 39 kita mengambil parameter OneTel seperangkat 1 16 proses 20 langkah dan panjang

01:09.900 --> 01:10.850
maks 10.000.

01:10.850 --> 01:17.580
Dan kami berbicara tentang ini adalah parameter yang kami tetapkan untuk memastikan agen tidak terjebak tanpa batas

01:17.730 --> 01:20.910
ke kondisi lingkungan sehingga ini akan menghentikan permainan.

01:21.060 --> 01:28.800
Jika panjang episode melampaui panjang maksimum ini dan akhirnya tentu saja kita mendapatkan nama lingkungan

01:28.800 --> 01:29.690
kita.

01:29.790 --> 01:30.890
Putus adalah nol.

01:30.990 --> 01:37.770
Dan omong-omong Anda juga bisa bermain di beberapa lingkungan lain hanya dengan mengubah nama lingkungan di

01:37.770 --> 01:38.410
sini.

01:38.430 --> 01:44.760
Jadi, jika Anda ingin bermain ke beberapa versi pelarian lainnya atau bahkan beberapa game Atari lainnya, Anda dapat dengan mudah

01:45.030 --> 01:48.580
mengganti pecahan nol ini di sini dengan beberapa game lain.

01:48.750 --> 01:53.730
Tetapi saya dapat memberitahu Anda bahwa video breakout sudah sangat menantang.

01:53.730 --> 01:56.030
Baiklah jadi semua parameter di sini.

01:56.160 --> 01:59.330
Dan kemudian ada kode utama untuk menjalankan utama.

01:59.550 --> 02:02.850
Jadi di sini mari kita lihat apa yang kita lakukan di baris pertama ini.

02:02.850 --> 02:05.270
Kami menetapkan satu utas per inti.

02:05.430 --> 02:11.880
Kemudian di baris kedua kita membuat semua penyaji dengan Anda tahu membuat objek baru dari kelas

02:12.150 --> 02:18.810
Paramjit yang akan menginisialisasi semua parameter ini di sini karena ada variabel yang melekat pada objek BRAMs

02:18.810 --> 02:19.490
ini.

02:19.560 --> 02:20.840
Lalu kami mengatur benih.

02:20.970 --> 02:28.830
Kemudian kita mendapatkan lingkungan kita menggunakan pohon Buat dan fungsi dengan nama lingkungan kita yang

02:28.830 --> 02:30.040
merupakan nol.

02:30.040 --> 02:35.410
Anda melihat sel-sel nama itu dan karena itu parameter dan nama cukup dari nol.

02:35.430 --> 02:37.660
Sehingga akan membuat kita lingkungan break out.

02:37.890 --> 02:42.870
Dan omong-omong ini bukan cara yang biasa untuk menciptakan lingkungan tetapi Anda tahu untuk

02:42.870 --> 02:45.540
meningkatkan seluruh proses dan meningkatkan kinerja.

02:45.690 --> 02:52.470
Yah kami menggunakan ini untuk benar-benar menciptakan lingkungan yang dioptimalkan dan ini kami melakukan hal-hal ini alam semesta

02:52.630 --> 02:57.730
adalah paket yang datang dengan semua paket yang Anda instal pada mesin terbuka.

02:57.870 --> 03:01.490
Terima kasih kepada alam semesta, kami mendapatkan lingkungan yang dioptimalkan.

03:01.590 --> 03:03.320
Ini semua tentang di sini.

03:04.050 --> 03:09.240
Kemudian kami mendapatkan model bersama kami dengan membuat objek dari kelas kritik aktif.

03:09.240 --> 03:14.430
Dan jadi di sini penting untuk memahami bahwa model bersama ini adalah model yang digunakan bersama oleh berbagai

03:14.430 --> 03:15.030
agen.

03:15.180 --> 03:17.880
Jadi kami memiliki utas yang berbeda di jalur yang berbeda.

03:18.210 --> 03:25.410
Dan berbicara tentang ancaman pada baris berikutnya di sini model shirred yang berbagi memori apa yang kita lakukan adalah kita

03:25.500 --> 03:31.260
menyimpan model dalam memori bersama dari komputer sehingga semua utas dapat mengaksesnya meskipun mereka berada

03:31.260 --> 03:32.960
di jalur yang berbeda.

03:33.000 --> 03:34.510
Jadi itulah yang kami lakukan di sini.

03:34.530 --> 03:42.410
Ini untuk mengaktifkan ini maka kami membuat pengoptimal kami ditautkan ke parameter model bersama kami dan dengan

03:42.410 --> 03:45.780
tingkat pembelajaran satu atau satu poin.

03:45.930 --> 03:51.030
Dan sekali lagi penting untuk memahami bahwa pengoptimal juga dibagikan karena itu akan bertindak

03:51.030 --> 03:57.720
pada model bersama dan mengatakan bahwa baris berikutnya dioptimalkan bahwa berbagi memori kami menyimpan pengoptimal ke dalam memori

03:57.780 --> 04:02.530
bersama sehingga semua agen dapat memperoleh akses ke sana untuk mengoptimalkan model.

04:02.910 --> 04:10.260
Kemudian kami menginisialisasi proses kami sehingga proses pengujian tidak memperbarui model bersama tetapi hanya menggunakannya untuk mencobanya

04:10.260 --> 04:14.710
di satu bagian dan mencetak skor dan merekam video.

04:14.820 --> 04:17.920
Jadi itulah yang dilakukan di sini dengan Target sama dengan tes.

04:17.940 --> 04:24.330
Itulah proses pengujian dan proses ini di sini terputus dari penyiksaan yang multi-pemrosesan awal.

04:24.450 --> 04:31.600
Jadi di sini dan yang dilakukannya adalah pada dasarnya menjalankan fungsi pada utas independen.

04:31.860 --> 04:38.050
Jadi ketika kita melakukan restart kita memulai proses baru yang merupakan awal tahun lalu saat ini.

04:38.370 --> 04:45.030
Dan kemudian dengan proses ini untuk menambahkan P kita menambahkan proses dalam daftar proses.

04:45.270 --> 04:52.170
Dan akhirnya dalam loop ini di sini kita hanya melakukan loop untuk menjalankan semua proses lain yang akan

04:52.380 --> 04:54.320
dilatih dengan memperbarui model bersama.

04:54.780 --> 04:58.030
Dan pada dasarnya itulah yang terjadi pada baris kode terakhir di sini.

04:58.380 --> 05:03.870
Jadi, jika Anda tidak ingin masuk ke detailnya, hal yang penting untuk dipahami adalah bahwa ini

05:03.870 --> 05:09.420
akan menjalankan proses secara optimal dan oleh karena itu kita semua harus baik untuk mengeksekusi kode ini

05:09.420 --> 05:12.670
dan memiliki model yang terlatih dan akhirnya menonton hasil.

05:12.840 --> 05:14.150
Jadi saya tidak sabar untuk melakukan itu.

05:14.160 --> 05:16.110
Ini akan sangat menarik.

05:16.110 --> 05:19.240
Saya akan mencoba mencari orang sekarang sehingga kita semua bisa menontonnya bersama.

05:19.350 --> 05:21.440
Dan sampai waktu berikutnya saya.
