حساب IBM الخاص بي تسجيل الدخول اشترك

ما المقصود بالانحدار التدرجي؟

ما المقصود بالانحدار التدرجي؟

الانحدار التدرجي هو خوارزمية تحسين تُستخدَم عادةً لتدريب نماذج التعلم الآلي والشبكات العصبية. تعمل هذه الخوارزمية على تدريب نماذج التعلم الآلي من خلال تقليل الأخطاء بين النتائج المتوقعة والفعلية.

تساعد بيانات التدريب هذه النماذج على التعلم بمرور الوقت، وتعمل دالة التكلفة في الانحدار التدرجي كأداة قياس لتحديد دقة النماذج مع كل تكرار لتحديث المَعلمات. ستستمر النماذج في تعديل معلماتها حتى تصبح قيمة الدالة قريبة من الصفر أو مساوية له، بهدف تقليل الخطأ إلى أدنى حد ممكن. بمجرد تحسين نماذج التعلم الآلي لتحقيق الدقة، يمكن أن تصبح أدوات قوية لتطبيقات الذكاء الاصطناعي وعلوم الحاسوب.

كيف تعمل خوارزمية الانحدار التدرجي؟

قبل التعمق في الانحدار التدرجي، قد يكون من المفيد مراجعة بعض المفاهيم من الانحدار الخطي. الصيغة الشهيرة لمعادلة الخط المستقيم هي: y = mx + b، حيث m تمثل الميل، وb تمثل الجزء المقطوع من المحور y.

قد تتذكر أيضًا رسم مخطط التبعثر في الإحصائيات وتحديد خط الانحدار الأفضل، الذي يتطلب حساب الخطأ بين المخرجات الفعلية والمخرجات المتوقعة (y-hat) باستخدام معادلة متوسط مربع الخطأ. تعمل خوارزمية الانحدار التدرجي بطريقة مشابهة، لكنها تعتمد على دالة محدبة.

تُعَد نقطة البداية مجرد نقطة عشوائية نستخدمها لتقييم الأداء. من تلك النقطة، سنحسب المشتقة (أو الميل)، ومن خلالها يمكننا استخدام خط المماس لتحديد مدى انحدار الميل. سيحدِّد الميل التحديثات للمعاملات، أي الأوزان والانحياز. سيكون الميل عند نقطة البداية أكثر انحدارًا، ولكن مع توليد مَعلمات جديدة، يجب أن يقل الانحدار تدريجيًا حتى يصل إلى النقطة الأدنى على المنحنى، والمعروفة بنقطة التقارب.

وعلى نحو مشابه لإيجاد خط أفضل مطابقة في الانحدار الخطي، فإن هدف الانحدار التدرجي هو تقليل دالة التكلفة، أو الخطأ بين القيم المتوقعة والفعلية للقيمة y. وكي يتم ذلك، يتطلب الأمر نقطتين من البيانات، اتجاهًا ومعدل تعلم. وتُحدِّد هذه العوامل الحسابات المشتقة الجزئية للتكرارات المستقبلية، ما يُتيح لها الوصول تدريجيًا إلى الحد الأدنى المحلي أو العالمي (أي نقطة التقارب).

  • معدل التعلم (الذي يُشار إليه أيضًا بحجم الخطوة أو ألفا) هو حجم الخطوات التي يتم اتخاذها للوصول إلى الحد الأدنى. عادةً ما تكون هذه القيمة صغيرة، ويتم تقييمها وتحديثها بناءً على سلوك دالة التكلفة. تؤدي معدلات التعلم العالية إلى خطوات أكبر، ولكنها تعرِّض لخطر تجاوز الحد الأدنى. بالمقابل، معدل التعلم المنخفض له أحجام خطوات صغيرة. رغم أن له ميزة الدقة الأفضل، إلا أن عدد التكرارات يؤثر في الكفاءة العامة؛ لأنه يتطلب وقتًا وحسابات إضافية للوصول إلى الحد الأدنى.
  • تقيس دالة التكلفة (أو الخسارة) الفرق، أو الخطأ، بين y الفعلية وy المتوقعة في موضعها الحالي. يعمل هذا على تحسين فاعلية نموذج التعلم الآلي من خلال توفير التعليقات للنموذج بحيث يمكنه ضبط المَعلمات لتقليل الخطأ وإيجاد الحد الأدنى المحلي أو العالمي. يستمر في التكرار باستمرار، متحركًا في اتجاه الانحدار الأكثر حدة (أو المشتقة السالبة) حتى تصبح دالة التكلفة قريبة من الصفر أو تصل إليها. في هذه المرحلة، سيتوقف النموذج عن التعلم. بالإضافة إلى ذلك، بينما يُعتبر مصطلحا دالة التكلفة ودالة الخسارة مترادفين، هناك فرق طفيف بينهما. تجدر الإشارة إلى أن دالة الخسارة تشير إلى الخطأ في مثال تدريبي واحد، بينما تحسب دالة التكلفة متوسط الخطأ عبر مجموعة التدريب بأكملها.

أنواع الانحدار التدرجي؟

هناك ثلاثة أنواع من خوارزميات التعلم بالانحدار التدرجي: الانحدار التدرجي بالدفعات، والانحدار التدرجي العشوائي، والانحدار التدرجي بالدفعات الصغيرة.

الانحدار التدرجي بالدفعات

الانحدار التدرجي بالدفعات يجمع الخطأ لكل نقطة في مجموعة التدريب، ويحدِّث النموذج فقط بعد تقييم جميع أمثلة التدريب. يُشار إلى هذه العملية باسم حقبة التدريب.

على الرغم من أن هذا التجميع يوفر كفاءة في الحساب، إلا أنه قد يستغرق وقتًا طويلًا في معالجة مجموعات البيانات الكبيرة لأنه لا يزال بحاجة إلى تخزين جميع البيانات في الذاكرة. عادةً ما ينتج عن الانحدار التدرجي بالدفعات أيضًا تدرج ثابت للخطأ والتقارب، ولكن في بعض الأحيان لا تكون نقطة التقارب هذه هي الأكثر مثالية، حيث يتم العثور على الحد الأدنى المحلي مقابل الحد الأدنى العالمي.

الانحدار التدرجي العشوائي

يشغِّل الانحدار التدرجي العشوائي (SGD) دورة تدريبية لكل مثال ضمن مجموعة البيانات ويحدِّث مَعلمات كل مثال تدريبي واحدة تلو الأخرى. ونظرًا لأنك تحتاج إلى الاحتفاظ بمثال تدريبي واحد فقط، فمن الأسهل تخزينها في الذاكرة. ورغم أن هذه التحديثات المتكررة يمكن أن توفر المزيد من التفاصيل والسرعة، إلا أنه من الممكن أن تؤدي إلى خسائر في الكفاءة الحسابية عند مقارنتها بالانحدار التدرجي بالدفعات. يمكن أن تؤدي التحديثات المتكررة إلى تدرجات مشوشة، لكن هذا يمكن أن يكون مفيدًا في الخروج من الحد الأدنى المحلي والبحث عن الحد الأدنى العالمي.

الانحدار التدرجي بالدفعات الصغيرة

يجمع الانحدار التدرجي بالدفعات الصغيرة بين مفاهيم كل من الانحدار التدرجي بالدفعات والانحدار التدرجي العشوائي. فهو يقسِّم مجموعة بيانات التدريب إلى أحجام دفعات صغيرة ويُجري تحديثات على كل من تلك الدفعات. يحقق هذا النهج توازنًا بين الكفاءة الحسابية للانحدار التدرجي بالدفعات وسرعة الانحدار التدرجي العشوائي.

التحديات المتعلقة بالانحدار التدرجي

في حين أن الانحدار التدرجي هو النهج الأكثر شيوعًا لمشكلات التحسين، إلا أنه يأتي مع مجموعة من التحديات الخاصة به. ومنها ما يلي:

الحد الأدنى المحلي ونقاط السرج

بالنسبة إلى المشكلات المحدبة، يمكن للانحدار التدرجي إيجاد الحد الأدنى العالمي بسهولة، ولكن مع ظهور مشكلات غير محدبة، يمكن أن يواجه الانحدار التدرجي صعوبةً في إيجاد الحد الأدنى العالمي، حيث يحقق النموذج أفضل النتائج.

تذكر أنه عندما يكون ميل دالة التكلفة عند الصفر أو قريبًا منه، يتوقف النموذج عن التعلم. يمكن لبعض السيناريوهات التي تتجاوز الحد الأدنى العالمي أن تسفر أيضًا عن هذا الميل، وهو الحد الأدنى المحلي ونقاط السرج. يحاكي الحد الأدنى المحلي شكل الحد الأدنى العالمي، حيث يزداد ميل دالة التكلفة على جانبي النقطة الحالية. ومع ذلك، ومع نقاط السرج، يوجد التدرج السالب فقط على جانب واحد من النقطة، ويصل إلى حد أقصى محلي على جانب واحد والحد الأدنى المحلي على الجانب الآخر. واسمها مستوحى من اسم سرج الخيول.

يمكن للتدرجات الصاخبة أن تساعد التدرج على الهروب من الحدود الدنيا المحلية ونقاط السرج.

التدرجات المتلاشية والمتفجرة

في الشبكات العصبية العميقة، وخاصة الشبكات العصبية المتكررة، يمكننا أيضًا مواجهة مشكلتين أخريين عندما يتم تدريب النموذج باستخدام الانحدار التدرجي والانتشار العكسي.

  • التدرجات المتلاشية: يحدث هذا عندما يكون التدرج صغيرًا جدًا. مع تقدمنا إلى الوراء أثناء الانتشار العكسي، يستمر التدرج في أن يصبح أصغر، ما يسبب تعلم الطبقات المبكرة في الشبكة بشكل أبطأ من الطبقات اللاحقة. عندما يحدث هذا، يتم تحديث مَعلمات الوزن حتى تصبح غير مهمة، أي 0، وينتج عن ذلك خوارزمية لم تَعُد تتعلم.
  • التدرجات المتفجرة: يحدث هذا عندما يكون التدرج كبيرًا جدًا، ما يؤدي إلى إنشاء نموذج غير مستقر. في هذه الحالة، ستنمو أوزان النموذج بشكل كبير جدًا، وسيتم تمثيلها في النهاية على أنها ليست رقمًا (NaN). يتمثل أحد الحلول لهذه المشكلة في الاستفادة من تقنية تقليل الأبعاد، والتي يمكن أن تساعد على تقليل التعقيد داخل النموذج.