WEBVTT

00:00.180 --> 00:02.250
Xin chào và chào mừng đến với hướng dẫn này.

00:02.280 --> 00:08.400
Hướng dẫn đặc biệt này sẽ cực kỳ thú vị vì chúng ta đang tiến gần hơn đến thuật toán a3c.

00:08.430 --> 00:13.890
Bạn sẽ thấy rằng những gì chúng tôi sắp triển khai, và được gọi là nguồn hoặc dấu vết đủ điều

00:14.280 --> 00:19.830
kiện, thực sự là một thuật toán của các chỉ trích, tác nhân, thuật toán hoạt động không đồng bộ, nhưng

00:19.830 --> 00:24.900
chúng tôi không thể coi nó là A3 C vì chúng tôi vẫn sẽ có một tác nhân, nhưng

00:24.900 --> 00:31.230
bạn vẫn sẽ thấy rằng những gì chúng tôi sắp triển khai thực sự được lấy từ bài báo sau, bài báo này là

00:31.230 --> 00:33.690
phương pháp đồng bộ để học tăng cường sâu.

00:33.690 --> 00:39.660
Và chính trong bài báo này, bạn sẽ tìm thấy ba thuật toán chính mà chúng tôi sẽ triển khai như là phần thưởng cuối cùng

00:39.660 --> 00:40.770
của khóa học này.

00:40.770 --> 00:47.760
Nhưng như tôi đã nói, chúng tôi đang tiến gần hơn đến nó bởi vì mô hình mà chúng tôi sẽ triển khai ngay bây giờ thực sự

00:48.210 --> 00:50.850
là mô hình này, không đồng bộ và từng bước.

00:50.850 --> 00:51.600
Q Học tập.

00:51.600 --> 00:52.620
Đó là một trong những.

00:52.620 --> 00:57.930
Vì vậy, đó gần như là ba chìa khóa, là chìa khóa sau đó, nhưng với một tác nhân.

00:57.930 --> 01:04.020
Và điều mạnh mẽ là đây và bước Q học, chúng ta sẽ tìm hiểu phần thưởng tích lũy và

01:04.020 --> 01:09.420
tìm hiểu mục tiêu tích lũy ở các bước cuối thay vì một bước như trước đây.

01:09.420 --> 01:14.940
Và đó là những gì sẽ làm cho việc đào tạo hiệu quả hơn nhiều và do đó AI của chúng ta mạnh mẽ hơn nhiều.

01:15.000 --> 01:18.750
Vì vậy, chúng tôi thực sự có mã giả cho thuật toán này.

01:18.750 --> 01:20.970
Đây là thuật toán ngay tại đây.

01:20.970 --> 01:23.130
Vì vậy, hãy nhấp vào nó và bắt đầu.

01:23.130 --> 01:25.680
Đó là thuật toán mà chúng tôi sắp thực hiện.

01:25.680 --> 01:32.310
Nhưng hãy nhớ rằng, chỉ với một tác nhân, sự khác biệt là ở đây họ thực hiện một hành động theo chính sách

01:32.310 --> 01:37.950
tham lam Epsilon dựa trên các giá trị Q cho trạng thái hiện tại và hành động được thực hiện.

01:37.950 --> 01:41.820
Nhưng trong mọi trường hợp, chúng tôi đã không thực hiện chính sách tham lam của epsilon.

01:41.820 --> 01:45.030
Chúng tôi đã triển khai mức tối đa mềm, nhưng phần còn lại vẫn như cũ.

01:45.030 --> 01:50.700
Như bạn có thể thấy, chúng tôi sẽ tính toán phần thưởng tích lũy trên các bước kết thúc, thực tế là mười bước, hãy nhớ điều đó.

01:50.700 --> 01:52.170
Và các bước bằng mười.

01:52.170 --> 01:57.930
Và vì vậy, chúng tôi sẽ triển khai dòng mã này trong thuật toán mà chúng tôi sắp triển khai ngay bây giờ.

01:57.930 --> 02:01.920
Chúng tôi sẽ đạt được điều này và chủ yếu là chúng tôi cũng sẽ thực hiện điều này.

02:01.920 --> 02:07.530
Bạn sẽ thấy rằng chúng tôi sẽ nhận được tối đa giá trị Q cho trạng thái hiện tại và hành động hiện tại.

02:07.530 --> 02:10.950
Và theta này ở đây chỉ là tham số mục tiêu.

02:11.160 --> 02:15.180
Vì vậy, chúng ta hãy làm điều này, hãy tấn công thuật toán này.

02:15.180 --> 02:21.420
Cái này được gọi là không đồng bộ và tô màu theo bước, nhưng chúng ta không có quyền nói không đồng bộ khi chúng ta liên

02:21.420 --> 02:27.090
quan, bởi vì chúng ta chỉ có một tác nhân, nhưng do đó chúng ta có thể gọi nó là tính đủ điều kiện

02:27.090 --> 02:29.220
học N bước Q, theo dõi hoặc nguồn chẵn.

02:30.090 --> 02:31.620
Được rồi, hãy làm điều này.

02:31.620 --> 02:32.880
Nó sẽ khá vui.

02:32.880 --> 02:37.230
Về cơ bản chúng ta có thể theo dõi mã giả ở đây và đó là những gì chúng ta sẽ làm.

02:37.230 --> 02:43.260
Và như bạn có thể thấy, một tham số mà chúng ta cần là gamma, tham số gamma là tham số

02:43.260 --> 02:43.980
phân rã.

02:43.980 --> 02:50.190
Và do đó, chúng tôi sẽ bắt đầu bằng cách giới thiệu một biến cho tham số gamma này và chọn một giá trị.

02:50.550 --> 02:51.690
Vì vậy, chúng ta hãy làm điều này.

02:51.690 --> 02:53.910
Chúng tôi thực sự không cần một lớp để thực hiện điều này.

02:53.910 --> 02:58.740
Chúng tôi có thể thực hiện điều này một cách đơn giản với một hàm vì bạn biết đấy, chúng tôi không thực sự cần tạo các đối

02:58.740 --> 03:00.720
tượng cho mô hình theo dõi tính đủ điều kiện này.

03:00.720 --> 03:06.690
Một chức năng sẽ là đủ vì về cơ bản những gì chúng ta muốn làm là trả lại đầu vào và

03:06.690 --> 03:12.420
mục tiêu để sau này khi đào tạo AI, chúng ta sẵn sàng giảm thiểu khoảng cách giữa dự đoán và

03:12.420 --> 03:13.170
mục tiêu.

03:13.170 --> 03:18.390
Và để có được các dự đoán, chúng ta cần đầu vào vì chúng ta sẽ áp dụng bộ não của mình vào đầu vào để

03:18.390 --> 03:19.530
nhận tín hiệu đầu ra.

03:19.530 --> 03:21.060
Đó sẽ là dự đoán của chúng tôi.

03:21.060 --> 03:26.700
Và sau đó khi chúng tôi có dự đoán và mục tiêu của mình, chúng tôi sẽ sẵn sàng đào tạo AI bằng

03:26.700 --> 03:30.420
cách cố gắng giảm thiểu khoảng cách bình phương giữa dự đoán và mục tiêu.

03:30.420 --> 03:32.070
Vì vậy, đó là toàn bộ điểm của việc này.

03:32.070 --> 03:32.610
Ngay lập tức.

03:32.610 --> 03:37.950
Chúng tôi đang triển khai chức năng này để có thể trả lại các đầu vào này trong các mục tiêu này để chúng tôi có

03:37.950 --> 03:42.600
thể sẵn sàng cho việc đào tạo để giảm thiểu các dự đoán khoảng cách bình phương trừ đi các mục tiêu.

03:42.840 --> 03:44.100
Được rồi, hãy làm điều này.

03:44.100 --> 03:46.320
Như chúng tôi đã nói, chúng tôi muốn triển khai một chức năng.

03:46.320 --> 03:47.430
Chúng tôi bắt đầu với def.

03:47.430 --> 03:52.680
Chức năng này, chúng tôi sẽ gọi nó là một dấu vết gạch dưới tính dễ đọc.

03:52.680 --> 03:54.000
Bạn cũng có thể gọi nó là nguồn.

03:54.150 --> 03:59.670
Bạn cũng có thể gọi nó và gõ màu, bất cứ điều gì bạn muốn, nhưng hãy gọi nó là dấu vết đủ điều kiện.

03:59.670 --> 04:06.030
Và hàm này sẽ nhận một đối số sẽ là một lô và lý do tại sao bạn thực hiện hàng loạt.

04:06.060 --> 04:12.570
Đó là bởi vì chúng tôi sẽ nhận được một số đầu vào và một số mục tiêu vì chúng tôi sẽ đào tạo AI theo

04:12.570 --> 04:13.320
từng đợt.

04:13.320 --> 04:17.190
Và do đó, các đầu vào và mục tiêu sẽ đi vào bên trong một số lô.

04:17.190 --> 04:23.430
Và do đó, đối số đầu vào ở đây là lô này sẽ chứa một số đầu vào và sau đó là một số mục tiêu mà

04:23.430 --> 04:24.840
chúng ta sẽ tính toán.

04:25.260 --> 04:26.670
Vậy là xong.

04:26.670 --> 04:28.230
Đó là lý lẽ duy nhất mà chúng tôi cần.

04:28.260 --> 04:31.860
Bây giờ, hãy vào bên trong hàm và xác định những gì chúng ta cần làm.

04:32.130 --> 04:37.350
Vì vậy, như chúng ta đã thấy trong mã giả của bài báo, chúng ta cần một tham số gamma.

04:37.350 --> 04:44.490
Vì vậy, như chúng tôi đã nói, chúng tôi bắt đầu bằng cách giới thiệu tham số gamma này để gamma bằng và chúng tôi đã có thể quyết định giá

04:44.490 --> 04:48.150
trị và chúng tôi sẽ chọn 4. 99.

04:48.180 --> 04:50.370
Đó là một giá trị tốt cổ điển cho gamma.

04:50.370 --> 04:54.930
Và đừng lo lắng, tôi đã kiểm tra rằng đây là một giá trị tốt cho AI của chúng tôi.

04:55.500 --> 04:56.970
Được rồi, vậy bước tiếp theo.

04:56.970 --> 04:59.670
Bước tiếp theo là chuẩn bị đầu vào của chúng tôi.

05:00.740 --> 05:04.950
Và mục tiêu của chúng tôi vì đó chính xác là những gì chúng tôi muốn trả lại.

05:04.970 --> 05:08.300
Chúng tôi muốn trả lại các đầu vào và các mục tiêu để chuẩn bị đào tạo.

05:08.750 --> 05:12.860
Và vì vậy chúng tôi đã có thể khởi tạo chúng với một danh sách trống.

05:12.860 --> 05:17.720
Tất nhiên, bởi vì trong các đầu vào này bên trong lô, chúng ta sẽ có một số đầu vào tất cả vào một

05:17.720 --> 05:18.320
danh sách.

05:18.320 --> 05:23.660
Và đó là lý do tại sao tôi đang khởi tạo các đầu vào dưới dạng danh sách cũng như các mục tiêu.

05:24.080 --> 05:24.830
Chúng ta bắt đầu.

05:24.830 --> 05:27.320
Vì vậy, chúng tôi đã khởi tạo đầu vào trong mục tiêu của mình.

05:27.320 --> 05:31.430
Và cuối cùng, chức năng theo dõi tính đủ điều kiện này sẽ trở lại.

05:31.430 --> 05:32.240
Một cách chính xác.

05:32.240 --> 05:35.480
Tất nhiên, những đầu vào và những mục tiêu này đã được điền vào.

05:36.110 --> 05:41.360
Chúng tôi sẽ có một số đầu vào và một số mục tiêu được liên kết trong những gì sẽ được trả về bởi hàm.

05:42.140 --> 05:42.470
Được rồi.

05:42.470 --> 05:43.130
Bước tiếp theo.

05:43.130 --> 05:45.650
Bước tiếp theo là lưu trữ vòng lặp for.

05:45.650 --> 05:51.320
Và đó chính xác là vì chúng tôi đang theo dõi mã giả của bài báo, bộ mã này.

05:51.320 --> 05:57.290
Và như bạn thấy, có phần mã lặp lại này và lặp lại chính xác một vòng lặp đầy đủ.

05:57.440 --> 06:03.710
Vì vậy, mã chúng tôi sẽ tính toán phần thưởng tích lũy ngay tại đây được tích lũy qua mười bước.

06:03.710 --> 06:05.090
Và nó được tính toán như thế nào?

06:05.090 --> 06:07.880
Vâng, trong mỗi bước, đó không phải là bước cuối cùng.

06:07.880 --> 06:12.980
Chúng tôi sẽ nhận được tối đa giá trị Q của trạng thái hiện tại mà chúng tôi đang ở trong quá trình này và các bước sẽ chạy.

06:12.980 --> 06:17.720
Và nếu chúng ta đạt đến bộ mười bước cuối cùng, thì, điều này sẽ bằng không.

06:17.720 --> 06:19.490
Tức là chúng tôi không muốn cập nhật nó nữa.

06:19.820 --> 06:23.210
Và sau đó chúng ta có vòng lặp for này, sẽ là một vòng lặp for khác.

06:23.210 --> 06:25.490
Họ không nói lặp lại ở đây, nhưng đó là giống nhau.

06:25.490 --> 06:28.310
Nó sẽ là một vòng lặp thứ hai trong thuật toán của chúng tôi.

06:28.310 --> 06:34.640
Chà, chúng tôi sẽ cập nhật phần thưởng theo cách này bằng cách nhân nó với gamma tham số phân rã và thêm

06:34.640 --> 06:35.480
phần thưởng.

06:35.720 --> 06:36.830
Vì vậy, chúng ta hãy làm điều này.

06:36.830 --> 06:40.250
Hãy quay lại Python và bắt đầu vòng lặp for của chúng ta.

06:40.490 --> 06:44.840
Vì vậy, bốn và những gì sẽ là biến được lặp lại?

06:44.840 --> 06:50.180
Chà, đó sẽ là chuỗi mười bước của chúng tôi, chuỗi mười bước chuyển tiếp của chúng tôi.

06:50.180 --> 06:57.530
Vì vậy, chúng tôi sẽ gọi chuỗi biến này đại diện cho một chuỗi mười chuyển đổi giống như một chuỗi

06:57.530 --> 06:58.610
mười chuyển đổi.

06:58.610 --> 07:00.830
Vì vậy, bốn loạt trong.

07:00.920 --> 07:02.330
Và sau đó bạn nghĩ gì?

07:02.330 --> 07:07.970
Chà, loạt bài của chúng tôi sẽ thuộc về nhóm của chúng tôi, đó là các nhóm mà chúng tôi sẽ đào tạo AI.

07:08.000 --> 07:14.390
Và như vậy đối với chuỗi theo lô, đó là đối với tất cả chuỗi mười chuyển tiếp trong lô đầu vào của chúng tôi.

07:14.570 --> 07:16.460
Chúng ta sẽ làm gì.

07:16.940 --> 07:21.890
Để nhận được phần thưởng tích lũy, bạn sẽ thấy trong mã giả rằng chúng ta cần trạng thái của quá trình chuyển

07:21.890 --> 07:26.480
đổi đầu tiên của bộ truyện và cũng là trạng thái của quá trình chuyển đổi cuối cùng của bộ truyện.

07:26.480 --> 07:29.840
Vì vậy, những gì chúng ta phải làm ngay bây giờ là lấy các trạng thái đầu vào này.

07:29.840 --> 07:36.590
Và vì vậy chúng ta sẽ đặt hai trạng thái đầu vào này vào một biến mà chúng ta sẽ gọi là đầu vào, và chúng

07:36.590 --> 07:42.170
ta sẽ nhận được hai trạng thái đầu vào này, trạng thái đầu tiên của chuỗi và trạng thái cuối cùng mà

07:42.170 --> 07:45.260
chúng ta sẽ đặt thành một mảng không phải sinh học.

07:45.590 --> 07:48.310
Nhưng đừng lo lắng, chúng tôi sẽ không ở lại với dãy số này.

07:48.320 --> 07:50.900
Tất nhiên chúng tôi sẽ chuyển đổi đó thành một biến tổng.

07:50.900 --> 07:56.660
Nhưng bước đầu tiên là đặt chúng vào trạng thái đầu vào, trạng thái đầu tiên trong trạng thái cuối cùng vào một mảng.

07:57.050 --> 08:03.260
Và vì vậy ngay tại đây trong mảng numpy này, chúng ta thêm đầu vào đầu tiên, đó là trạng thái đầu vào của

08:03.260 --> 08:06.380
quá trình chuyển đổi đầu tiên của chuỗi và đó là chuỗi.

08:07.780 --> 08:11.340
Và sau đó để thực hiện chuyển đổi đầu tiên, chúng tôi lấy chỉ số 0 của chuỗi.

08:11.350 --> 08:12.820
Đó là bước chuyển tiếp đầu tiên.

08:13.090 --> 08:17.830
Và sau đó chúng ta có thể truy cập nó bằng cách lấy thuộc tính của nó, đó là trạng thái.

08:18.040 --> 08:24.220
Và đó là bởi vì trong tệp phát lại trải nghiệm của chúng tôi, chúng tôi đã xác định một cấu trúc đặc biệt cho mỗi quá trình

08:24.220 --> 08:29.350
chuyển đổi và bạn biết đấy, cấu trúc, mỗi lần chuyển đổi bao gồm một trạng thái, một hành động, một phần thưởng.

08:29.350 --> 08:31.840
Nhưng sau đó yếu tố cuối cùng được thực hiện.

08:31.840 --> 08:37.660
Vì vậy, cấu trúc đặc biệt này mà chúng tôi được phép sử dụng ngay bây giờ xuất phát từ cách chúng tôi xác định quá trình chuyển đổi

08:37.660 --> 08:38.830
trong phát lại trải nghiệm.

08:39.160 --> 08:39.490
Được rồi.

08:39.490 --> 08:45.640
Vì vậy, với điều này, chúng ta nhận được trạng thái đầu vào của quá trình chuyển đổi đầu tiên và bây giờ chúng ta cũng nhận được trạng

08:45.640 --> 08:48.490
thái đầu vào của quá trình chuyển đổi cuối cùng của chuỗi.

08:48.490 --> 08:49.930
Và để làm được điều này, cũng giống như vậy.

08:49.930 --> 08:51.910
Chúng ta chỉ có thể sao chép cái này.

08:53.320 --> 09:00.310
Và căn cứ vào đó và thay thế số 0 ở đây bằng chỉ số cuối cùng của chuỗi, mà chúng ta có thể truy cập bằng thủ

09:00.310 --> 09:06.850
thuật này trừ đi một chuỗi, trừ đi một trạng thái sẽ nhận được trạng thái đầu vào của quá trình chuyển đổi cuối cùng

09:06.850 --> 09:07.420
của chuỗi.

09:08.140 --> 09:14.410
Được rồi, chúng ta cần đặt hai yếu tố này bên trong một số dấu ngoặc vuông.

09:15.130 --> 09:18.310
Bởi vì đó là những gì được mong đợi bởi chức năng trọng tài.

09:18.700 --> 09:25.300
Và sau đó, một điều quan trọng cần làm vì chúng ta sẽ chuyển đổi nó thành một bộ căng ngọn đuốc và một biến

09:25.300 --> 09:26.020
ngọn đuốc.

09:26.020 --> 09:31.680
Hãy nhớ rằng, một tensor ngọn đuốc theo định nghĩa là một mảng đặc biệt chứa một loại duy nhất.

09:31.690 --> 09:34.510
Và vì vậy chúng ta cần bắt buộc có một loại duy nhất.

09:34.510 --> 09:37.540
Và như thường lệ, chúng ta sẽ chọn kiểu float.

09:37.540 --> 09:48.520
Và vì vậy tôi đang thêm tham số này ở đây D type = bằng và P dot float 32 có thể lấy tham số này và bây giờ chúng ta có thể chuyển đổi tham

09:48.520 --> 09:52.300
số đó thành một tenxơ ngọn đuốc và một biến ngọn đuốc.

09:52.300 --> 09:57.340
Vì vậy, chúng ta hãy làm điều này để làm tốt điều này, trước tiên, chúng ta hãy chuyển đổi nó thành một cảm biến ngọn đuốc.

09:57.340 --> 10:02.590
Và hãy nhớ rằng, chúng ta có thể sử dụng ngọn đuốc từ NumPy.

10:03.700 --> 10:10.990
Sau đó, chúng tôi đi và chúng tôi đặt tất cả các mảng của hai trạng thái đầu vào bên trong bộ căng ngọn đuốc này với ngọn đuốc từ

10:10.990 --> 10:12.220
chúng theo chức năng.

10:12.340 --> 10:13.120
Hoàn hảo.

10:13.120 --> 10:18.060
Vì vậy, điều đó sẽ chuyển đổi các mảng này của trạng thái đầu vào thành một cảm biến ngọn đuốc.

10:18.070 --> 10:24.250
Và bây giờ chúng ta đặt tensor ngọn đuốc này vào một biến ngọn đuốc bằng cách sử dụng lớp biến.

10:25.350 --> 10:28.220
Vì vậy đầu vào sẽ là một đối tượng của lớp biến.

10:28.230 --> 10:35.190
Và trên thực tế, như bạn đã hiểu, lớp biến này nhận tất cả điều này làm đối số và tạo ra

10:35.190 --> 10:35.970
đối tượng.

10:36.510 --> 10:38.270
Được rồi, bây giờ chúng ta nên ngoan.

10:38.280 --> 10:40.770
Chúng tôi có hai đầu vào mà chúng tôi cần.

10:40.770 --> 10:45.120
Đó là trạng thái đầu vào của quá trình chuyển đổi đầu tiên và trạng thái đầu vào của quá trình chuyển đổi cuối cùng.

10:45.580 --> 10:48.840
Và bây giờ, chúng ta đã có đầu vào rồi, chúng ta có thể nhận được gì?

10:48.870 --> 10:52.440
Chúng ta có thể nhận được tín hiệu đầu ra của não bộ của mắt.

10:52.470 --> 10:53.790
Đó là dự đoán.

10:53.790 --> 10:55.710
Nhưng chúng ta sẽ gọi nó là đầu ra.

10:56.520 --> 10:59.120
Đó là tín hiệu đầu ra và để có được đầu ra.

10:59.130 --> 11:04.620
Chà, bây giờ điều đó rất dễ dàng bởi vì chúng ta đã có một bộ não được tạo ra, đó là mạng nơ-ron phức hợp

11:04.620 --> 11:05.280
của chúng ta.

11:05.280 --> 11:14.040
Và vì vậy, chúng ta có thể chỉ cần quét não áp dụng cho đầu vào sẽ trả về dự đoán là

11:14.040 --> 11:16.590
đầu ra đơn giản như vậy.

11:16.590 --> 11:19.500
Và bây giờ chúng ta đã sẵn sàng để chuyển sang bước tiếp theo.

11:20.510 --> 11:24.810
Và bước tiếp theo là bắt đầu tính phần thưởng tích lũy này.

11:24.830 --> 11:30.530
Vì vậy, bây giờ chúng ta sẽ thực hiện giống hệt như thuật toán SE hai của chúng ta, nguồn hay chúng ta nên gọi nó và

11:30.530 --> 11:31.040
các bước.

11:31.040 --> 11:31.820
Q Học tập.

11:32.000 --> 11:38.670
Chúng tôi sẽ giới thiệu biến phần thưởng tích lũy, đây sẽ là phần thưởng tích lũy.

11:38.690 --> 11:41.000
Và chúng ta hãy quay trở lại bài báo.

11:41.030 --> 11:45.860
Như bạn có thể thấy ngay bây giờ, những gì chúng tôi phải làm để nhận được phần thưởng tích lũy này, đó là của chúng tôi ở đây.

11:45.860 --> 11:53.030
Chà, ở mỗi bước trong số mười bước chạy, chúng ta cần cập nhật nó bằng cách thêm số 0 vào phần thưởng tích

11:53.030 --> 11:53.640
lũy này.

11:53.660 --> 12:00.020
Nếu chúng tôi đã đến ngày cuối cùng của chuỗi hoặc giá trị Q tối đa, nếu chúng tôi chưa đạt đến trạng thái cuối cùng của chuỗi,

12:00.020 --> 12:03.290
đó là đối với tất cả các bước ngoại trừ bước cuối cùng.

12:03.530 --> 12:05.720
Vì vậy, hãy đơn giản thực hiện điều này.

12:05.910 --> 12:07.130
Hãy quay lại Python.

12:07.370 --> 12:13.580
Vì vậy, phần thưởng tích lũy này, như chúng ta vừa thấy, sẽ bằng 0. 0.

12:13.970 --> 12:14.660
Nếu.

12:15.020 --> 12:18.920
Chúng tôi đã đến ngày cuối cùng và chúng tôi có thể đi theo điều kiện này theo cách này.

12:19.250 --> 12:28.460
Nếu chuỗi chỉ mục trừ đi một chỉ mục là lần truyền cuối cùng của chuỗi, thì chúng tôi thêm chỉ số đó đã xong vì thực sự được thực hiện là một thuộc tính của

12:28.460 --> 12:34.310
cấu trúc chuyển tiếp này mà chúng tôi đã xác định một lần phát lại có kinh nghiệm, tệp phát lại có kinh

12:34.310 --> 12:35.510
nghiệm của chúng tôi.

12:35.510 --> 12:42.140
Và điều này thực sự đến từ các cấu trúc ngoài trời bởi vì nếu chúng ta truy cập trang web của phòng tập thể dục mở,

12:42.320 --> 12:44.990
thực sự ở đây, tôi đã chuẩn bị cho nó.

12:44.990 --> 12:47.050
Vì vậy, đó là căn bậc hai của không.

12:47.060 --> 12:53.090
Và nếu chúng ta đi đến tài liệu và sau đó nếu chúng ta làm như vậy thì đó là hướng dẫn.

12:53.090 --> 12:55.070
Tôi thực sự khuyến khích bạn hãy xem qua nó.

12:55.190 --> 13:01.730
Bạn có thể điều hành một môi trường, nhưng chủ yếu bạn có thể thấy rằng những quan sát của chúng tôi, đó là những chuyển

13:01.730 --> 13:05.390
đổi của chúng tôi được xác định bởi một quan sát, một phần thưởng.

13:05.390 --> 13:11.780
Và điều này được thực hiện ở đây và điều này được thực hiện chính xác có nghĩa là một quá trình chuyển đổi hoặc một bước đã kết thúc.

13:11.840 --> 13:15.380
Và vì vậy chúng tôi sẽ sử dụng điều này được thực hiện ở đây cho điều kiện if của chúng tôi.

13:15.380 --> 13:23.120
Do đó, nếu chuỗi trừ đi một chấm được thực hiện có nghĩa là nếu quá trình chuyển đổi cuối cùng của chuỗi kết thúc, thì nó đã hoàn thành.

13:23.540 --> 13:28.880
Và do đó, phần thưởng tích lũy này sẽ bằng 0 nếu quá trình chuyển đổi cuối cùng của chuỗi được

13:28.880 --> 13:32.810
thực hiện và khác nếu chúng ta chưa đạt đến lần chuyển đổi cuối cùng.

13:32.810 --> 13:40.910
Như chúng tôi đã nói, phần thưởng tích lũy sẽ được cập nhật với giá trị Q tối đa.

13:40.910 --> 13:47.330
Và vì đầu ra này ở đây là đầu ra của não, đó là các dự đoán của mạng nơ-ron.

13:47.330 --> 13:51.350
Và như bạn đã biết, các dự đoán của mạng nơ-ron là các giá trị hàng đợi được dự đoán.

13:51.350 --> 13:54.830
Chà, đầu ra này chứa các giá trị Q.

13:54.830 --> 14:01.100
Và vì chúng ta cần lấy giá trị Q lớn nhất, nên trước tiên chúng ta cần thêm chỉ mục này vì cấu

14:01.110 --> 14:07.760
trúc chứa các giá trị Q trong chỉ mục một, và sau đó chúng ta cần thêm dữ liệu để truy cập dữ liệu của

14:07.760 --> 14:09.320
cấu trúc đầu ra này.

14:09.320 --> 14:11.930
Bạn biết đấy, nó có cấu trúc đặc biệt của một biến ngọn đuốc.

14:12.020 --> 14:16.940
Vì vậy, với điều này, chúng tôi nhận được các giá trị Q và sau đó chúng tôi muốn lấy giá trị Q lớn nhất.

14:16.940 --> 14:25.730
Và đơn giản là chúng tôi thêm Max đó và bây giờ chúng tôi nhận được chính xác những gì chúng tôi muốn như trong bài báo, giá trị

14:25.730 --> 14:29.990
Q tối đa này cho các trạng thái không phải là T hoàn hảo.

14:29.990 --> 14:36.020
Và bây giờ những gì chúng ta sẽ làm là tạo vòng lặp thứ hai cho vòng lặp thứ hai dành cho mười bước của loạt bài.

14:36.020 --> 14:43.340
Chúng tôi sẽ cập nhật phần thưởng tích lũy theo cách này bằng cách nhân trước với gamma tham số phân rã, mà chúng

14:43.340 --> 14:46.130
tôi đã có, sau đó thêm phần thưởng.

14:46.130 --> 14:47.360
Vì vậy, chúng ta hãy làm điều này.

14:47.360 --> 14:50.840
Chúng tôi thực sự sẽ làm giống hệt như trong mã giả.

14:50.840 --> 14:55.550
Như bạn có thể nhận thấy, họ bắt đầu từ bên phải, vì vậy họ không bắt đầu với bước đầu tiên và đi đến

14:55.550 --> 14:56.510
các bước cuối cùng.

14:56.510 --> 15:02.150
Họ bắt đầu với bước cuối cùng, trừ đi một đến bước đầu tiên để bắt đầu.

15:02.150 --> 15:06.110
Vì vậy, đó chính xác là những gì chúng tôi sẽ làm và

15:06.110 --> 15:15.590
đó là vì chúng tôi muốn đạt được cuối cùng, phần thưởng tích lũy bằng R bằng R bằng không cộng với gamma r một cộng với gamma bình phương hoặc hai dấu

15:15.590 --> 15:23.590
chấm cộng với gamma theo lũy thừa của mười hoặc mười, trong đó một hoặc hai hoặc mười của chúng tôi là phần thưởng nhận được trong mỗi

15:23.630 --> 15:24.980
bước cuối của chuỗi.

15:25.370 --> 15:29.810
Vì vậy, chúng ta hãy giải lao nhanh trước khi thực hiện vòng lặp thứ hai, và tôi sẽ gặp lại bạn trong hướng dẫn tiếp theo.

15:29.810 --> 15:31.070
Cho đến lúc đó, hãy tận hưởng.

15:31.070 --> 15:31.610
TÔI.
