WEBVTT

00:00.960 --> 00:03.270
أهلا ومرحبا بكم مرة أخرى في دورة التعلم العميق.

00:03.270 --> 00:06.540
نتحدث اليوم عن النسب المتدرج العشوائي.

00:07.020 --> 00:14.430
لقد تعلمنا سابقًا عن النسب المتدرج واكتشفنا أنه طريقة فعالة للغاية لحل

00:14.430 --> 00:19.410
مشكلة التحسين حيث نحاول تقليل دالة التكلفة.

00:19.410 --> 00:29.160
يستغرق الأمر منا في الأساس من عشرة إلى قوة 57 عامًا لحل مشكلة في غضون دقائق أو ساعات أو في غضون يوم

00:29.370 --> 00:30.840
أو نحو ذلك.

00:30.840 --> 00:37.440
وهو يساعد حقًا في تسريع الأمور لأنه يمكننا أن نرى أي طريق ينحدر ويمكننا فقط السير في هذا الاتجاه

00:37.440 --> 00:41.340
واتخاذ الخطوات والوصول إلى الحد الأدنى بشكل أسرع.

00:41.340 --> 00:49.950
لكن الشيء الذي يتعلق بالعصا مع النسب المتدرج هو أن هذه الطريقة تتطلب أن تكون دالة التكلفة

00:49.950 --> 00:50.940
محدبة.

00:50.940 --> 00:55.200
وكما ترى هنا ، اخترنا على وجه التحديد دالة تكلفة محدبة.

00:55.200 --> 01:03.180
تعني محدبة بشكل أساسي أن الوظيفة تبدو مشابهة لما نراه الآن ، وأنها محدبة في

01:03.180 --> 01:11.010
اتجاه واحد وأنها في جوهرها لها حد أدنى عالمي واحد وهذا هو الذي سنجده.

01:11.430 --> 01:13.980
ولكن ماذا لو كانت وظيفتنا ليست محدبة؟

01:13.980 --> 01:15.900
ماذا لو كانت دالة التكلفة لدينا ليست محدبة؟

01:16.290 --> 01:17.730
ماذا لو بدا شيئًا كهذا؟

01:17.730 --> 01:19.590
حسنًا ، أولاً وقبل كل شيء ، كيف يمكن أن يحدث ذلك؟

01:19.590 --> 01:27.390
حسنًا ، يمكن أن يحدث ذلك لأننا إذا اخترنا ، أولاً وقبل كل شيء ، دالة تكلفة ، وهي ليست الفرق التربيعي

01:27.390 --> 01:34.380
بين y hat و y ، أو إذا اخترنا دالة التكلفة ، والتي هي من هذا القبيل ، ولكن بعد ذلك في أبعاد متعددة

01:34.380 --> 01:39.060
الفضاء ، يمكن أن يتحول في الواقع إلى شيء غير محدب.

01:39.570 --> 01:44.670
وماذا سيحدث في هذه الحالة إذا حاولنا فقط تطبيق طريقة الانحدار العادي؟

01:44.970 --> 01:46.290
شيء من هذا القبيل يمكن أن يحدث.

01:46.290 --> 01:51.150
يمكننا إيجاد حد أدنى محلي لدالة التكلفة بدلاً من الدالة العالمية.

01:51.150 --> 01:54.540
لذلك كان هذا هو الأفضل ووجدنا الخطأ.

01:54.540 --> 01:57.660
وبالتالي ليس لدينا الأوزان الصحيحة.

01:57.660 --> 02:02.310
ليس لدينا شبكة عصبية محسنة ، لدينا شبكة عصبية دون المستوى.

02:02.310 --> 02:04.410
فماذا سنفعل في هذه الحالة؟

02:04.410 --> 02:09.930
حسنًا ، الإجابة هنا هي النسب المتدرج العشوائي.

02:09.930 --> 02:15.120
واتضح أن الانحدار العشوائي لا يتطلب أن تكون دالة التكلفة محدبة.

02:15.120 --> 02:20.070
لذلك دعونا نلقي نظرة على الفروقين بين الانحدار الطبيعي الذي تحدثنا عنه والتدرج

02:20.070 --> 02:21.150
العشوائي.

02:21.540 --> 02:27.540
لذا فإن الانحدار الطبيعي هو عندما نأخذ كل صفوفنا ، نقوم بتوصيلها بشبكتنا العصبية.

02:27.540 --> 02:33.270
ومرة أخرى ، تم نسخ الشبكة العصبية عدة مرات ، لكن الصفوف يتم توصيلها بنفس

02:33.270 --> 02:35.820
الشبكة العصبية في كل مرة.

02:35.820 --> 02:37.140
لذلك هناك شبكة عصبية واحدة فقط.

02:37.140 --> 02:39.030
هذا فقط لأغراض التصور.

02:39.030 --> 02:42.990
وبمجرد أن نعوضهم ، قمنا بحساب دالة التكلفة الخاصة بنا بناءً على الصيغة

02:42.990 --> 02:47.130
الموجودة على اليمين وننظر إلى الرسم البياني في الأسفل ثم نعدل الأوزان.

02:47.250 --> 02:54.390
ثم يسمى هذا بطريقة نزول التدرج أو أنه أيضًا المصطلح المناسب هو طريقة نزول الدُفعة.

02:54.390 --> 03:00.330
لذلك نأخذ الدفعة الكاملة من العينة الخاصة بنا ، ونطبقها ثم نقوم بتشغيلها.

03:00.840 --> 03:04.170
طريقة الانحدار العشوائي مختلفة قليلاً هنا.

03:04.170 --> 03:11.460
نأخذ الصفوف واحدة تلو الأخرى ، لذلك نأخذ هذا الصف ، وندير شبكتنا العصبية ثم نضبط الأوزان.

03:11.760 --> 03:17.040
ثم ننتقل إلى الصف الثاني ، نأخذ الصف الثاني ، ونشغل شبكتنا العصبية ، وننظر إلى دالة

03:17.040 --> 03:19.710
التكلفة ، ثم نعدل الأوزان مرة أخرى.

03:19.980 --> 03:22.170
ثم نأخذ صفًا آخر ، نأخذ الصف الثالث.

03:22.560 --> 03:23.670
نحن ندير شبكتنا العصبية.

03:23.670 --> 03:24.660
سننظر في دالة التكلفة.

03:24.660 --> 03:25.350
نحن مجرد الوزن.

03:25.350 --> 03:32.580
لذلك نحن في الأساس ننظر إلى أننا نعدل الأوزان بعد كل صف بدلاً من القيام بكل شيء معًا ثم

03:32.610 --> 03:35.970
نضبط الأوزان وفقًا للطرق المختلفة.

03:35.970 --> 03:39.630
والآن سنقارن الاثنين جنبًا إلى جنب.

03:39.630 --> 03:40.530
لذا ها هم.

03:40.560 --> 03:42.660
هذه هي الطريقة التي نتذكرها بصريًا.

03:42.660 --> 03:49.020
إذاً لديك نزول متدرج للدفعة حيث تقوم بتعديل الأوزان بعد تشغيلها ، بعد

03:49.020 --> 03:52.290
تشغيل كل الصفوف في شبكتك العصبية.

03:52.800 --> 03:56.760
ثم تقوم في الأساس بضبط الأوزان وتشغيل كل شيء مرة أخرى ، التكرار ، التكرار ،

03:56.760 --> 03:57.360
التكرار.

03:57.360 --> 04:03.840
في طريقة الانحدار العشوائي ، تقوم بتشغيل صف واحد في كل مرة وتضبط الأوزان ، وتضبط الأوزان

04:03.840 --> 04:07.500
، وتضبط الأوزان ، ثم تفعل كل شيء مرارًا وتكرارًا.

04:07.500 --> 04:09.990
وتلك تسمى هذه الفئة.

04:09.990 --> 04:10.770
بهذه الطريقة.

04:10.980 --> 04:19.200
يتمثل الاختلافان الرئيسيان في أن طريقة نزول التدرج العشوائي تساعدك على تجنب المشكلة

04:19.200 --> 04:28.410
حيث تجد تلك الحدود القصوى المحلية أو الحدود الدنيا المحلية بدلاً من الحد الأدنى الشامل العام.

04:28.800 --> 04:35.460
والسبب في ذلك بعبارات بسيطة هو أن طريقة SGD أو طريقة الانحدار العشوائي بها تقلبات أعلى

04:35.460 --> 04:38.160
بكثير لأنها يمكن أن تتحملها.

04:38.160 --> 04:43.620
إنها تقوم بتكرار واحد أو صف واحد في كل مرة ، وبالتالي فإن التقلبات أعلى بكثير

04:43.620 --> 04:49.320
ومن المرجح أن تجد الحد الأدنى العالمي بدلاً من الحد الأدنى المحلي فقط.

04:49.320 --> 04:55.650
والشيء الآخر حول طريقة النسب العشوائية للتدرج مقارنةً بالتدرج اللوني للدفعة هو أنها

04:55.740 --> 04:56.430
أسرع.

04:56.430 --> 04:59.700
مثل الانطباع الأول الذي قد يكون لديك لأنه يفعل كل شيء.

04:59.960 --> 05:00.740
بالدور.

05:00.740 --> 05:07.280
إنها أبطأ ، لكنها في الواقع أسرع لأنها لا تحتاج إلى تحميل جميع البيانات في الذاكرة

05:07.760 --> 05:12.530
وتشغيلها والانتظار حتى تدور كل هذه البيانات معًا.

05:12.530 --> 05:14.150
يمكنه فقط تشغيلهم واحدًا تلو الآخر.

05:14.150 --> 05:15.470
لذا فهي خوارزمية أخف بكثير.

05:15.470 --> 05:16.730
إنه أسرع بكثير بهذا المعنى.

05:16.730 --> 05:24.410
لذلك على الرغم من أنه يحتوي على الكثير وهذا في هذه المعاني ، إلا أنه يتمتع بمزايا أكثر على طريقة نزول

05:24.410 --> 05:25.190
الدُفعة.

05:25.190 --> 05:31.040
الميزة الرئيسية أو النوع الرئيسي من مثل المحترفين لطريقة نزول الدُفعات هي أنها

05:31.040 --> 05:36.890
خوارزمية حتمية أو بدلاً من أن تكون نزول التدرج العشوائي خوارزمية عشوائية ، مما

05:36.890 --> 05:43.610
يعني أنها عشوائية وأفضل طريقة نزول التدرج طالما لديك نفس أوزان البداية لشبكتك العصبية ،

05:44.210 --> 05:49.940
في كل مرة تقوم فيها بتشغيل طريقة الانحدار الدفعي ، ستحصل على نفس التكرارات ،

05:50.690 --> 05:55.580
ونفس النتائج بالنسبة للطريقة التي يتم بها تحديث أوزانك.

05:55.790 --> 05:58.220
الأول بالنسبة لطريقة الانحدار العشوائي.

05:58.220 --> 06:01.100
لن تحصل على ذلك لأنها طريقة عشوائية.

06:01.100 --> 06:07.880
أنت تختار صفوفك ربما بشكل عشوائي وتقوم بتحديث شبكتك العصبية بطريقة عشوائية.

06:07.880 --> 06:12.950
وبالتالي ، ستنتقل إلى كل مرة تقوم فيها بتشغيل طريقة الانحدار العشوائي

06:12.950 --> 06:19.070
، حتى لو كان لديك نفس الأوزان في البداية ، فستكون لديك عملية مختلفة وتكرارات مختلفة

06:19.070 --> 06:20.480
للوصول إلى هناك.

06:20.480 --> 06:25.460
هذا باختصار ما هو الانحدار العشوائي.

06:25.970 --> 06:31.190
أيضًا ، هناك طريقة بين الاثنين تسمى طريقة نزول الدُفعة المصغرة حيث يمكنك الجمع

06:31.190 --> 06:38.660
بين الاثنين وتشغيل بشكل أساسي بدلاً من تشغيل مجموعة كاملة أو تشغيل دفعة واحدة في كل مرة ، تقوم بتشغيل مجموعات من الصفوف

06:38.660 --> 06:41.340
، ربما من 5 إلى 10 ، 100 منهم المعادن.

06:41.390 --> 06:45.080
عليك أن تقرر التعيين ، وتقوم بتشغيل ذلك العدد من الصفوف في الوقت الحالي.

06:45.080 --> 06:47.630
ثم تقوم بتحديث الأوزان الخاصة بك وتقوم بتحديث الأوزان الخاصة بك وما إلى ذلك.

06:47.630 --> 06:50.300
وهذا ما يسمى طريقة نزول الدفعة المصغرة.

06:50.330 --> 06:56.570
إذا كنت ترغب في معرفة المزيد عن Gradient Descent ، فهناك مقال رائع يمكنك إلقاء نظرة عليه.

06:56.570 --> 07:04.880
يطلق عليه A Neural Network و 13 Lines of Python Part II Gradient Descent بواسطة Andrew Trask والروابط

07:04.880 --> 07:05.750
أدناه.

07:05.750 --> 07:12.500
إنه على GitHub 2015 مقال مكتوب بشكل جيد للغاية بعبارات بسيطة للغاية.

07:12.770 --> 07:21.410
يحتوي على بعض الأفكار الفلسفية المثيرة للاهتمام أو مجرد أفكار مثيرة للاهتمام حول كيفية تطبيق النسب المتدرج

07:21.410 --> 07:28.070
، وما هي المزايا والعيوب وكيف تكون كيفية القيام بالأشياء في مواقف معينة؟

07:28.070 --> 07:32.000
لذا فقد حصل على بعض النصائح والحيل والخدع الرائعة ، سهلة القراءة للغاية.

07:32.000 --> 07:33.500
لذا تأكد من ذلك.

07:33.500 --> 07:36.900
وأخرى ، قراءة أثقل قليلاً.

07:36.920 --> 07:42.260
بالنسبة لأولئك الذين يهتمون بالرياضيات ويريدون الوصول إلى جوهر الرياضيات ، لماذا يكون الانحدار

07:42.260 --> 07:44.420
المتدرج محددًا إلى هذا الحد؟

07:45.230 --> 07:48.770
ما هي الصيغ التي تقود التدرجات وكيف يتم حسابها وما إلى ذلك؟

07:49.130 --> 07:51.440
تحقق من المقال أو في الواقع الكتاب.

07:51.530 --> 07:57.080
إنه كتاب مجاني على الإنترنت يسمى الشبكات العصبية والتعلم العميق من تأليف مايكل نيلسن 2015 كتاب.

07:57.080 --> 07:59.510
كل شيء موجود على الإنترنت.

07:59.510 --> 08:02.120
يمكنك المضي قدما والتحقق من ذلك هناك.

08:02.240 --> 08:05.780
وهناك مرة أخرى ، مقدمة ناعمة جدًا للرياضيات.

08:05.780 --> 08:07.160
ولكن بعد ذلك للرياضيات.

08:07.160 --> 08:13.220
لكن الرياضيات ثقيلة جدًا مع تقدمك ، أثناء قراءة المقال.

08:13.430 --> 08:17.260
ولكن في نفس الوقت ، فإنه يجعلك في هذا المزاج.

08:17.270 --> 08:22.610
أعتقد أنه يشبه فصل الإحماء حيث تقوم بالإحماء أولاً بالرياضيات ثم تقفز إليها.

08:22.610 --> 08:27.170
مهتم جدًا بالرياضيات ، فهذه هي المقالة التي نذهب إليها وهناك نذهب.

08:27.170 --> 08:36.260
هذا باختصار الفرق بين النسب الكبير والانحدار العشوائي وكيفية العمل.

08:36.260 --> 08:39.770
وفي هذه الملاحظة ، سنختتم درس اليوم.

08:39.770 --> 08:41.930
أتطلع إلى رؤيتك في المرحلة التالية.

08:41.930 --> 08:44.240
وحتى ذلك الحين ، استمتع بالتعلم العميق.
