مسرد المصطلحات

نزول التدرج العشوائي (SGD)

اكتشف كيف يعمل التدرج العشوائي على تحسين نماذج التعلُّم الآلي من خلال تحسين نماذج التعلُّم الآلي، مما يتيح التدريب الفعّال لمجموعات البيانات الكبيرة ومهام التعلُّم العميق.

تدريب YOLO النماذج
ببساطة مع Ultralytics HUB

التعرف على المزيد

تُعد خوارزمية "نزول التدرج العشوائي"، والمعروفة باسم SGD، خوارزمية تحسين شائعة وفعالة تُستخدم على نطاق واسع في التعلم الآلي (ML) وخاصةً التعلم العميق (DL). وهي تعمل كتنوع من خوارزمية نزول التدرج القياسية ولكنها مصممة خصيصًا لتحقيق السرعة والكفاءة عند التعامل مع مجموعات البيانات الكبيرة جدًا. بدلاً من حساب التدرج (الاتجاه الأكثر انحدارًا لدالة الخسارة) باستخدام مجموعة البيانات بأكملها في كل خطوة، تقوم خوارزمية SGD بتقريب التدرج بناءً على عينة بيانات واحدة مختارة عشوائيًا أو مجموعة فرعية صغيرة تسمى دفعة صغيرة. يقلل هذا النهج بشكل كبير من التكلفة الحسابية ومتطلبات الذاكرة، مما يجعل من الممكن تدريب نماذج معقدة على كميات هائلة من البيانات.

الملاءمة في التعلم الآلي

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

المفاهيم الرئيسية

ينطوي فهم SGD على بعض الأفكار الأساسية:

  • الطبيعة العشوائية: يشير مصطلح "العشوائية" إلى العشوائية التي يتم إدخالها باستخدام عينة واحدة أو بضع عينات فقط لتقدير التدرج في كل خطوة. تضيف هذه العشوائية ضوضاء إلى عملية التحسين، والتي يمكن أن تساعد النموذج في بعض الأحيان على الهروب من الحد الأدنى المحلي الضعيف وإيجاد حلول أفضل بشكل عام.
  • دفعات مصغرة: على الرغم من أن أسلوب SGD النقي يستخدم عينة واحدة لكل تحديث، إلا أنه من الشائع عمليًا استخدام "مجموعة صغيرة" صغيرة من العينات (على سبيل المثال، 32، 64، 128). يوازن هذا النهج، الذي لا يزال يُشار إليه غالبًا باسم SGD، بين كفاءة التحديثات أحادية العينة والثبات المكتسب من متوسط التدرجات على دفعة صغيرة. يتم التحكم في حجم هذه الدُفعة بواسطة البارامتر الزائد " حجم الدُفعة ".
  • معدل التعلم: تحدد هذه المعلمة الفائقة الحاسمة حجم الخطوات المتخذة أثناء عملية التحسين. يعد معدل التعلم الذي يتم اختياره بشكل جيد أمرًا حيويًا للتقارب؛ إذا كان مرتفعًا جدًا، فقد تتجاوز العملية الحد الأدنى، وإذا كان منخفضًا جدًا، يصبح التدريب بطيئًا للغاية. غالبًا ما يتم استخدام تقنيات مثل جدولة معدل التعلم جنبًا إلى جنب مع SGD.
  • دالة الخسارة: يهدف SGD إلى تقليل دالة الخسارة، والتي تقيس الفرق بين تنبؤات النموذج والقيم المستهدفة الفعلية في بيانات التدريب.

الاختلافات عن المفاهيم ذات الصلة

إن SGD هي إحدى خوارزميات التحسين المتعددة، ومن المهم تمييزها عن غيرها:

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

التطبيقات الواقعية

تُمكِّن كفاءة SGD من استخدامه في العديد من تطبيقات الذكاء الاصطناعي واسعة النطاق:

مثال 1: تدريب نماذج اللغات الكبيرة (LLMs)

غالبًا ما تتضمن نماذج التدريب مثل تلك المستخدمة في معالجة اللغات الطبيعية (NLP) مجموعات بيانات نصية ضخمة (مليارات الكلمات). ويُعدّ تصميم قواعد البيانات النصية ومتغيراته ضروريًا لتكرار هذه البيانات بكفاءة، مما يسمح للنماذج بتعلم القواعد والسياق والدلالات. منصات مثل Hugging Face بشكل كبير على هذه المُحسِّنات لتدريب نماذج المحولات.

مثال 2: التدريب على اكتشاف الأجسام في الوقت الحقيقي

بالنسبة لنماذج مثل Ultralytics YOLO المصممة للاستدلال في الوقت الفعلي، يجب أن يكون التدريب فعالاً. يسمح SGD للمطوّرين بتدريب هذه النماذج على مجموعات بيانات الصور الكبيرة مثل COCO أو مجموعات البيانات المخصصة التي تتم إدارتها عبر منصات مثل Ultralytics HUB. وتتيح التحديثات السريعة تقاربًا أسرع مقارنةً بـ Batch GD، وهو أمر بالغ الأهمية للتكرار السريع أثناء تطوير النموذج وضبط المعلمات الفائقة.

قراءة الكل