WEBVTT

00:00.150 --> 00:02.310
أهلا ومرحبا بكم في هذا البرنامج التعليمي.

00:02.340 --> 00:07.320
أنا متحمس للغاية لأننا على وشك صنع دماغ A3 الذي هو دماغ أعيننا.

00:07.350 --> 00:10.640
وبالحديث عن الأدمغة ، أود أن أسلط الضوء على شيء ما.

00:10.650 --> 00:15.450
تذكر في الوحدة الأولى ، أننا صنعنا دماغًا بسيطًا بطبقات متصلة بالكامل فقط.

00:15.600 --> 00:21.900
ثم في الوحدة الثانية لـ Doom ، صنعنا دماغًا ليس فقط به طبقات متصلة تمامًا ، ولكن

00:21.900 --> 00:28.830
أيضًا عيون ، لأننا أضفنا الطبقات التلافيفية التي أعطت العين للعين لأنها تستطيع مراقبة

00:28.830 --> 00:31.490
الصور وفهم ما يحدث بالداخل.

00:31.500 --> 00:37.530
والآن سنأخذه حتى على مستوى عالٍ ، لأننا سنصنع دماغًا ليس فقط لديه عيون ويربط

00:37.530 --> 00:41.220
الطبقات بشكل كامل ، ولكن أيضًا ذاكرة.

00:41.220 --> 00:46.470
لأنه كما قلت في البرنامج التعليمي السابق ، سنضيف سجلًا للشبكة العصبية

00:46.470 --> 00:53.460
داخل هذا الدماغ الكبير ، وهذا سيعطي ذاكرة طويلة لدماغنا حتى يتمكن من فهم العلاقات الزمنية

00:53.460 --> 00:56.730
، والخصائص الزمنية للمدخلات الصور.

00:56.850 --> 00:57.840
لذا ها نحن ذا.

00:57.840 --> 01:03.330
وحتى عقل أقوى ، يمكنني أن أخبرك أن النموذج الذي نحن بصدد تنفيذه الآن قوي

01:03.330 --> 01:04.410
حقًا حقًا.

01:04.710 --> 01:10.500
ويمكننا أن نرى كيف أن بناء العيون والقيام بالتعلم العميق ، والقيام بالتعلم المعزز العميق

01:10.500 --> 01:14.650
هو كل شيء عن الاقتراب أكثر فأكثر من كيفية عمل الدماغ البشري.

01:14.750 --> 01:19.350
كما تعلم ، بدأنا بالعلاقات الأساسية للدماغ ، مع الروابط الغذائية الخطية.

01:19.350 --> 01:21.990
ثم أضفنا العيون ، ثم أضفنا الذاكرة.

01:22.020 --> 01:24.830
من يدري ما الذي سنضيفه في النماذج المستقبلية؟

01:24.840 --> 01:30.360
كما تعلم ، في عام 2018 ، ربما سيضيفون شيئًا من شأنه أن يجعل الدماغ يبدو أشبه بالدماغ

01:30.360 --> 01:31.350
البشري.

01:31.350 --> 01:37.530
ولكن بالفعل مع الطبقات والعينين والذاكرة المتصلة بالكامل ، لدينا بالفعل دماغ جيد بالفعل

01:37.530 --> 01:38.100
وعملي.

01:38.520 --> 01:39.600
لنفعلها اذا.

01:39.600 --> 01:41.110
دعونا نصنع هذا الدماغ.

01:41.130 --> 01:46.410
لذا كالعادة ، سنقوم بعمل فصل دراسي لذلك لأنه سيكون له الكثير من الخصائص

01:46.410 --> 01:48.600
مع التلافيف و LCMS.

01:48.600 --> 01:54.930
لذلك سنقوم بعمل وظيفة init لتهيئة كل هذا ، وإنشاء كل هذه الاتصالات ، وبعد ذلك بالطبع سيكون لدينا

01:54.930 --> 01:59.790
وظيفة الأمام التي ستنشر بالطبع الإشارة داخل الدماغ حتى نتمكن في النهاية

01:59.910 --> 02:02.160
من الحصول على المخرجات.

02:02.370 --> 02:03.950
حسنًا ، هل أنت جاهز؟

02:03.960 --> 02:05.110
هيا بنا نقوم بذلك.

02:05.130 --> 02:11.310
لذا ، أيها الفصل ، قدمنا فئة جديدة نسميها الناقد الممثل.

02:11.310 --> 02:13.650
لأنني بالطبع أتحدث عن الأدمغة هنا.

02:13.650 --> 02:19.410
لكن دعونا لا ننسى أننا نصنع نموذج a3c ، الذي يعتمد على مبدأ الناقد النشط

02:19.410 --> 02:21.900
مع الممثل والناقد بشكل منفصل.

02:21.900 --> 02:26.850
لذلك سنقوم في الواقع بعمل اتصال خطي واحد كامل للممثل واتصال خطي كامل

02:26.850 --> 02:27.600
للناقد.

02:27.600 --> 02:28.860
سترى كيف سنفعل ذلك.

02:28.860 --> 02:30.600
سيكون في الواقع بسيطًا جدًا.

02:30.600 --> 02:39.000
لذلك سيرث الناقد الممثل وفئة الناقد الممثل من وحدة التعليقات الختامية حتى نتمكن من استخدام جميع

02:39.000 --> 02:40.650
أدوات PyTorch.

02:40.650 --> 02:44.010
لذلك دعونا نفعل ذلك لنرث من وحدة العقدة.

02:44.010 --> 02:49.080
حسنًا ، علينا أن نأخذ مكتبة الشعلة أولاً ثم بعد ذلك.

02:49.080 --> 02:49.830
وثم.

02:49.830 --> 02:51.900
وذلك والوحدة.

02:52.980 --> 02:53.640
حسنا.

02:53.940 --> 02:55.560
وبهذه الطريقة نرث منه.

02:56.870 --> 02:57.200
حسنا.

02:57.200 --> 03:01.430
ها نحن نبدأ بالدالة الأولى ، والتي ستكون بالطبع دالة init.

03:01.430 --> 03:09.800
لذلك نبدأ فيه بشرطة سفلية مزدوجة ، ثم ستأخذ وظيفة init هذه كوسيطات ذاتية مع الكائن

03:09.800 --> 03:17.060
، ثم شكل الإدخال الذي يمثل أبعاد صور مدخلاتنا ونسميها مدخلات ومساحة

03:17.060 --> 03:25.640
الإجراء ، والتي هي أساسًا المساحة التي تحتوي على جميع الإجراءات.

03:25.880 --> 03:30.410
نحن أيضًا ، كما تعلمون ، من مساحة العمل هذه ، يمكننا الحصول على عدد الإجراءات ، وهو عدد

03:30.410 --> 03:33.740
الإجراءات المحتملة التي سنحصل عليها في الواقع قريبًا جدًا.

03:33.740 --> 03:35.690
لهذا السبب نحتاجها أيضًا.

03:36.140 --> 03:39.320
هذا هو كل ما نحتاجه.

03:39.320 --> 03:45.230
ثم دعنا ننتقل إلى داخل الدالة وننشئ جميع المتغيرات المناسبة لدماغنا.

03:45.590 --> 03:51.350
ولكن قبل القيام بذلك ، تذكر ما يتعين علينا القيام به لتنشيط الميراث بطريقة ما بحيث

03:51.350 --> 03:54.740
يمكننا استخدام جميع الأدوات من وحدة الإدخال.

03:54.740 --> 04:01.100
يجب أن نستخدم الوظيفة الفائقة بهذه الطريقة ، والتي من خلالها نقوم بإدخال الفاعل.

04:01.770 --> 04:07.470
الناقد هذا هو صفنا ومن ثم يأتي بنفسه من أجل الشيء.

04:07.980 --> 04:09.850
حسنًا ، إذن ، نقطة.

04:09.960 --> 04:12.900
وهناك نذهب مرة أخرى مع الحرف الأول.

04:13.940 --> 04:14.710
دور.

04:14.720 --> 04:15.420
هناك نذهب.

04:15.440 --> 04:19.880
هذا يعطينا كل الأدوات التي سنحتاجها من الشعلة لبناء عقولنا.

04:20.210 --> 04:21.920
حسنا إذا.

04:21.920 --> 04:24.590
حسنًا ، حان الوقت لجعل عيون العين.

04:24.620 --> 04:26.170
هذه هي التلافيفات.

04:26.180 --> 04:32.120
لذلك سنقوم بذلك بسرعة كبيرة ، لأننا سبق أن شرحنا هذا بالتفصيل لـ Doom ، لأن تذكر أن The

04:32.120 --> 04:34.040
Eye for Doom كانت لها أعين.

04:34.040 --> 04:35.300
لذلك هو بالضبط نفس الشيء.

04:35.300 --> 04:41.360
سنقوم بعمل بعض التلافيفات وسنستخدم بنية بسيطة للغاية مع 32 كاشف ميزة بحجم

04:41.360 --> 04:45.130
ثلاثة في ثلاثة ، خطوة من اثنين وحشو واحد.

04:45.140 --> 04:50.840
هذه بنية كلاسيكية إلى حد ما ، لكنها في الواقع ستكون كافية للتأكد من أن العين

04:50.840 --> 04:53.510
تفهم ما يحدث في لعبة الاختراق.

04:54.290 --> 04:54.620
حسنا.

04:54.620 --> 04:56.540
لذلك دعونا نجعل تلك التلافيفات.

04:56.540 --> 05:01.610
لذا نبدأ بالذات لأن التلافيفات ستكون متغيرات للكائن.

05:01.610 --> 05:06.680
لذا يمكننا أن نسميها "conf" وستكون هناك أربعة تلافيفات.

05:06.680 --> 05:15.260
سأسمي هذا واحد conf واحد وها نحن نأخذ نقطة وحدة GN ثم نأخذ فئة conf اثنين د لأن

05:15.290 --> 05:20.630
كون واحد سيكون في الواقع كائنًا من هذه الفئة.

05:21.350 --> 05:25.790
ثم في الداخل نقوم أولاً بإدخال شكل إدخال الصور.

05:25.790 --> 05:32.450
هذا هو بالضبط ما لدينا هنا ، لذا يمكننا نسخ هذا وإدخاله كمدخل أول.

05:32.810 --> 05:38.450
ثم الوسيطة الثانية هي عدد أجهزة الكشف عن الميزات أو أيضًا عدد النواة.

05:38.450 --> 05:42.590
لذا سنأخذ 32 ، كما قلنا للتو ، خيار كلاسيكي.

05:42.590 --> 05:45.020
ثم نحتاج إلى اختيار حجم النواة.

05:45.020 --> 05:49.970
هذا هو عدد الخلايا التي ستنزلق فوق صورة الإدخال.

05:49.970 --> 05:52.700
لذا ، تذكر أنه يمكننا أخذ ثلاثة أو أربعة أو خمسة.

05:52.700 --> 05:54.050
هذه اختيارات شائعة.

05:54.050 --> 05:55.730
وهنا سنختار ثلاثة.

05:56.590 --> 06:01.930
وبعد ذلك سنختار خطوة من اثنين و.

06:02.640 --> 06:04.740
مساحة واحدة.

06:05.010 --> 06:05.790
هناك نذهب.

06:05.970 --> 06:13.260
هذا هو الالتفاف الأول الذي ينتقل من صورة الإدخال إلى الطبقات التلافيفية الأولى

06:13.260 --> 06:16.110
المكونة من 32 صورة ملتفة.

06:16.110 --> 06:18.780
لذا نحن الآن جاهزون لعمل الالتفاف الثاني.

06:18.780 --> 06:21.390
لذلك سيكون في الواقع متماثلًا تقريبًا.

06:21.390 --> 06:29.430
لذلك أقوم بنسخ هذا السطر ولصقه أدناه ، ولكن ألصقه أدناه مرة أخرى وألصقه مرة أخيرة لأننا سنحصل

06:29.430 --> 06:34.140
على أربعة تلافيف مع عدم وجود أي شيء تقريبًا لتغييره.

06:34.440 --> 06:42.480
لذا يمكننا بالفعل التعويض هنا ، وتحويل واحد عن طريق العد إلى واحد على ثلاثة والتحويل واحدًا على أربعة.

06:42.510 --> 06:44.880
ستكون هذه هي التلافيفات الأربعة.

06:44.880 --> 06:49.320
والآن بالطبع نحتاج إلى تغيير بعض الأشياء هنا ، لكن ليس كثيرًا لأننا سنحتفظ

06:49.320 --> 06:51.780
بسلسلة من اثنين لكل منها وبطانة واحدة.

06:52.200 --> 06:54.930
سيكون لديهم جميعًا 32 جهازًا للكشف عن الميزات.

06:54.930 --> 06:58.530
هذا هو إخراج 32 صورة ملتوية.

06:58.530 --> 07:04.020
ولكن هنا ، تذكر أن هذا يتوافق مع الجزء الأيسر من الالتواء.

07:04.020 --> 07:08.520
إذن هذا في الواقع يتوافق مع ما كان في الجزء الصحيح من الالتواء السابق.

07:08.520 --> 07:10.200
كما تعلم ، تذكر أنها مثل الدومينو.

07:10.200 --> 07:11.280
لذا فهي سهلة حقًا.

07:11.280 --> 07:16.080
وبالتالي علينا هنا إدخال 32 وهنا أيضًا.

07:17.070 --> 07:21.870
سنرى بسهولة 32 و 32.

07:22.170 --> 07:22.500
حسنا.

07:22.500 --> 07:28.680
باختصار ، نبدأ بصور المدخلات التي تحتوي على أبعاد المدخلات.

07:29.190 --> 07:35.520
مع الالتفاف الأول ، نحصل على 32 صورة معقدة ، كل واحدة تكتشف ميزة معينة.

07:35.550 --> 07:43.170
ثم من هذه الصور الملتفة البالغ عددها 32 صورة ، نطبق الالتفاف الثاني للحصول على 32 صورة معقدة جديدة.

07:43.170 --> 07:46.290
ثم نفس الشيء من هذه الصور الملتفة الـ 32 الجديدة.

07:46.290 --> 07:50.880
نطبق الالتفاف الثالث للحصول على 32 صورة معقدة جديدة مرة أخرى.

07:50.880 --> 07:57.060
ثم في النهاية من هذه الصور الملتفة البالغ عددها 32 صورة ، نطبق الالتفاف الرابع للحصول على الصور.

07:57.300 --> 07:57.780
حسنا.

07:57.780 --> 08:01.440
وسيكون هذا كافيًا مع هذا وإلا سأكون هناك إشراف.

08:01.440 --> 08:02.970
سوف يكتشف الكرة جيدًا.

08:03.510 --> 08:03.870
حسنا.

08:03.870 --> 08:05.580
هذا كل شيء من أجل الالتواء.

08:05.580 --> 08:07.130
هذا كل شيء للعيون.

08:07.140 --> 08:09.440
والآن دعونا نعتني بالذاكرة.

08:09.450 --> 08:14.220
هذه الميزة الجديدة لهذا الدماغ نطبقها على عكس ما كانت عليه من قبل مع تناغم.

08:14.490 --> 08:20.220
لن يكون لها إشراف فحسب ، بل سيكون لها أيضًا ذاكرة فائقة ، وذاكرة طويلة ، لأننا

08:20.220 --> 08:26.010
سنقوم بتنفيذ ذاكرة STM طويلة المدى ، وهي هذا النوع من الشبكات العصبية العادية

08:26.010 --> 08:33.810
التي تمنح نموذجك نوعًا من ذاكرة طويلة حتى تتمكن من تعلم بعض العلاقات الزمنية الطويلة من الماضي.

08:34.230 --> 08:37.560
لذلك نفس الشيء سننشئ متغيرًا جديدًا.

08:37.560 --> 08:43.440
لذا سأبدأ بالذات وهذا المتغير الجديد ، سنسميه ببساطة lshtm لأن هذا

08:43.440 --> 08:46.950
سيتوافق مع شبكة Lshtm داخل الدماغ.

08:47.040 --> 08:48.360
حتى لشتم.

08:48.690 --> 08:55.230
والآن قبل أن نكتب رمز STM ، دعونا نتأكد من فهمنا لما سيفعله هذا الجزء من الدماغ

08:55.230 --> 08:56.220
lshtm.

08:56.220 --> 09:03.900
لذلك كما فهمنا هذا ، يتم استخدام lshtm لمعرفة الخصائص الزمنية لمدخلات الصور.

09:03.900 --> 09:09.330
على سبيل المثال ، إذا اصطدمت الكرة بلعبة ، فإن lshtm سوف يشفر الارتداد.

09:09.540 --> 09:11.250
لذلك هذا هو أول شيء يجب فهمه.

09:11.250 --> 09:14.790
سوف يشفر نوعًا ما ما يحدث في اللعبة.

09:14.790 --> 09:20.280
ثم الشيء المهم التالي الذي يجب فهمه عند تنفيذ LSHTM هو أننا نحتاج إلى اختيار

09:20.280 --> 09:22.560
ترتيب التبعيات الزمنية.

09:22.680 --> 09:28.590
وهنا ، بما أننا سنقوم بتغذية شبكتنا العصبية بسلسلة من أربع صور ، فهذا يعني أنه

09:28.590 --> 09:32.700
يمكننا بالفعل تعلم بعض التبعيات الزمنية للنظام.

09:32.700 --> 09:39.720
لذلك هناك بعض التبعيات الزمنية حيث يعتمد ما يحدث عند 90 زائد واحد على ما يحدث في الوقت المناسب.

09:39.720 --> 09:42.960
T ناقص واحد ، و t ناقص اثنين ، و t ناقص ثلاثة.

09:42.960 --> 09:45.420
لذلك يمكننا بالتأكيد القيام بذلك.

09:45.420 --> 09:51.360
لكن الخبر السار هو أننا سنستخدم lshtm وبالتالي سنتمكن من تعلم بعض العلاقات

09:51.360 --> 09:53.850
الزمنية الأكثر تعقيدًا.

09:54.270 --> 09:59.160
هذا ، على سبيل المثال ، يمكننا أن نتعلم بعض الخصائص الزمنية حيث سيعتمد ما يحدث في الوقت t زائد واحد

09:59.160 --> 10:00.690
على ما يحدث في ذلك الوقت.

10:00.690 --> 10:05.520
T ناقص واحد ، t ناقص اثنين t ناقص ثلاثة وصولاً إلى t ، ناقص n.

10:05.700 --> 10:10.380
وهذا هو الجزء الطويل في ذاكرة lshtm طويلة وقصيرة المدى.

10:10.380 --> 10:14.610
مع فريق Lshtm هذا ، يمكننا تعلم بعض العلاقات الزمنية المعقدة للغاية.

10:15.360 --> 10:17.580
حسنًا ، دعنا نضيف قائمتنا.

10:17.970 --> 10:25.200
للقيام بذلك ، سنستخدم وحدة RN ثم نضيف خلية Class Lshtm ، والتي ستنشئ كائن

10:25.320 --> 10:31.290
Lshtm هذا ، والذي سيمثل جزء Lshtm من الشبكة الجديدة.

10:31.290 --> 10:37.130
لأن الشيء المهم الآن هو أن نفهم أننا نصنع C و R و n ، كما تعلمون ،

10:37.170 --> 10:39.480
شبكة عصبية تلافيفية.

10:39.480 --> 10:42.780
ويأتي جزء Arden بعد جزء CNN.

10:42.780 --> 10:49.710
وبالتالي ، في الوقت الحالي ، ما نحتاج إلى إدخاله في خلية Lshtm هذه هو أولاً حجم الناتج

10:49.710 --> 10:51.150
بعد الالتواء.

10:51.150 --> 10:55.980
هذا هو 32 مرة ، ثلاثة في ثلاثة.

10:55.980 --> 11:02.610
إذن هذا 32 في ثلاثة في ثلاثة هو في الواقع الناتج بعد التلافيف الأربعة هنا.

11:02.610 --> 11:07.500
لكن هذا يصبح مدخلات شبكة R و Lshtm.

11:07.590 --> 11:13.620
والآن لماذا حجم ناتج التلافيفات الأربعة 32 مرة ، ثلاثة في ثلاثة؟

11:13.620 --> 11:15.900
حسنًا ، لا تقلق ، فالأمر ليس مباشرًا.

11:15.900 --> 11:17.790
إنها في الواقع ليست معادلة بسيطة.

11:17.790 --> 11:24.270
ولكن هناك صيغة لحساب هذا العدد من الخلايا العصبية الناتجة بعد تسطيح الصور المجمعة

11:24.270 --> 11:26.460
والمعقدة للالتفافات.

11:26.460 --> 11:31.920
لكن إذا جمعنا حدود هذه الصيغة الكبيرة ، فسنحصل على 32 مرة ، ثلاثة في ثلاثة.

11:31.950 --> 11:36.000
لم أرغب في قضاء الكثير من الوقت في هذا الأمر لأن لدينا الكثير لنفعله أكثر.

11:36.000 --> 11:39.330
وإلى جانب ذلك ، قمنا بالفعل بعمل دالة لحساب هذا الرقم.

11:39.330 --> 11:42.360
تذكر ، كان من أجل Zoom عندما قمنا بهذا العدد.

11:42.360 --> 11:46.710
تعمل الخلايا العصبية بحيث يمكنك إعادة استخدامها إذا أردت ، إذا لم تكن مقتنعًا.

11:46.710 --> 11:53.250
ولكن هذا هو بالضبط ما نحصل عليه بعد جمع شروط هذه الصيغة الكبيرة ، عدد المخرجات.

11:53.250 --> 11:55.530
إذن هذا للحجة الأولى.

11:55.530 --> 12:00.930
ومن ثم ستكون الحجة الثانية هي عدد الخلايا العصبية الناتجة

12:00.930 --> 12:03.570
لـ lshtm وسنذهب إلى 256.

12:04.510 --> 12:04.890
تمام.

12:05.050 --> 12:06.920
وماذا يعني ذلك الآن؟

12:06.940 --> 12:14.410
هذا يعني أنه لدينا الآن متجه يقوم بترميز كل حدث من أحداث اللعبة ، أو بعبارة أخرى ، لدينا

12:14.410 --> 12:15.640
حالة مشفرة.

12:15.640 --> 12:21.430
وهكذا يمكننا الآن الفصل بين الممثل والناقد ، لأنه ، كما تعلمون ، سنقوم في الواقع

12:21.430 --> 12:27.070
بإنشاء شبكتين عصبيتين منفصلتين ، واحدة للممثل والأخرى للناقد.

12:27.070 --> 12:33.760
ولكن سيكون هناك نفس التشفير للصور والعلاقات الزمنية لهاتين الشبكتين العصبيتين.

12:33.760 --> 12:37.660
لذلك هذا هو الجزء المشترك الذي نقوم به لهاتين الشبكتين العصبيتين.

12:37.660 --> 12:41.260
ستكون هذه هي نفس البداية للشبكتين العصبيتين.

12:41.260 --> 12:46.120
لكن الأمور ستتغير الآن بالنسبة للممثل والناقد لأننا سنقوم

12:46.120 --> 12:51.820
بعمل اتصال خطي واحد كامل للممثل واتصال خطي مختلف كامل للناقد.

12:52.000 --> 12:56.160
لذلك دعونا نأخذ استراحة سريعة ودعنا نفعل ذلك في البرنامج التعليمي التالي.

12:56.170 --> 12:57.400
حتى ذلك الحين ، استمتع.

12:57.400 --> 12:57.880
أنا.
