Hyperparameter Tuning
يحدد ضبط المعلمات الفائقة إعدادات التدريب التي تحقق أقصى أداء على مجموعة التحقق. ويقارن بين البحث الشبكي والعشوائي والبايزي والتطوري.
يبحث ضبط المعلمات الفائقة عن إعدادات التدريب التي تمنح نموذج تعلّم الآلة أفضل أداء على بيانات لم تُستخدم في التدريب. وتُحدَّد المعلمات الفائقة قبل بدء التدريب، بخلاف أوزان النموذج التي يتعلمها التدريب من البيانات. ويجب تقييم كل إعداد مرشح بتدريب نموذج واختباره على بيانات التحقق، لذا يُعد الضبط من أكثر خطوات بناء النموذج استهلاكًا للموارد الحاسوبية، ويكتسب اختيار استراتيجية بحث جيدة أهمية تضاهي أهمية اختيار القيم المراد البحث عنها.
المعلمات الفائقة الشائعة#
في التعلّم العميق للرؤية، تندرج الإعدادات الأكثر احتياجًا إلى الضبط ضمن بضع مجموعات:
- التحسين: معدل التعلّم وجدوله، والزخم، واضمحلال الأوزان، واختيار المحسّن، مثل SGD أو محسّن Adam. عادةً ما يكون لمعدل التعلّم الأثر الأكبر، ويُبحث عنه وفق مقياس لوغاريتمي.
- مدة التدريب وتجميع الدُفعات: عدد العصور، ومدة الإحماء، وحجم الدفعة.
- زيادة البيانات: احتمال كل تحويل وشدته، مثل القلب وتغيير المقياس وتبديل الألوان والتركيب الفسيفسائي.
- أوزان الخسارة: معاملات الموازنة بين حدود دالة الخسارة المركّبة، مثل خسائر الصناديق والتصنيف في كاشف.
طرق البحث#
يستكشف الممارسون فضاء الإعدادات الممكنة باستخدام عدد قليل من الاستراتيجيات:
- البحث الشبكي: يدرّب النموذج على كل تركيبة من قائمة قيم ثابتة. وهو بسيط وشامل، لكن تكلفته تتضاعف مع كل معلمة فائقة إضافية.
- البحث العشوائي: يسحب إعدادات عشوائيًا من النطاقات المسموح بها. وأثبت Bergstra وBengio أنه يعثر على نماذج تضاهي نتائج البحث الشبكي أو تتفوق عليها بجزء ضئيل من الحسابات، لأن عددًا قليلًا من المعلمات الفائقة يؤثر كثيرًا في أي مشكلة بعينها، ولأن السحب العشوائي يجرّب قيمًا مختلفة أكثر لكل منها.
- التحسين البايزي: يلائم نموذجًا بديلًا يبيّن كيفية اعتماد النتيجة على المعلمات الفائقة، ثم يختار التجربة التالية في الموضع الذي يُرجّح أن يحقق أكبر تحسن. وتستخدم مكتبات مثل Optuna هذا النهج افتراضيًا.
- أساليب الإنهاء المبكر: يبدأ Hyperband والتقليص المتعاقب عددًا كبيرًا من الإعدادات بميزانية محدودة، ثم يمنحان العصور الإضافية للإعدادات الواعدة فقط.
- الخوارزميات التطورية: تتعامل مع كل إعداد على أنه جينوم، وتحسّن مجموعة من الإعدادات عبر الانتقاء والطفرات.
البحث التطوري#
يناسب البحث التطوري عمليات التدريب التي تتضمن معلمات فائقة كثيرة ومتفاعلة، لأنه لا يحتاج إلى نموذج لفضاء البحث، بل إلى درجة لياقة لكل تجربة فحسب. وفي كل جولة، يأخذ أحد أفضل الإعدادات التي عُثر عليها حتى الآن، ويغيّر بعض قيمه بالطفرات، ويدرّب النموذج باستخدام الناتج، ثم يحتفظ بالإعداد الجديد ضمن المجموعة إذا حقق نتيجة جيدة.
تنفّذ أداة الضبط من Ultralytics هذه الحلقة لتدريب YOLO: تختار كل دورة أبًا من بين أعلى تسع نتائج لياقة، وتُحدث طفرات في نحو نصف ما يصل إلى 26 معلمة فائقة تشمل معدل التعلّم ومعاملات الخسارة وزيادة البيانات، وتحسب اللياقة باستخدام mAP50-95 لمهمة الكشف. وقد عُثر على معلمات مرحلة COCO الفائقة لنقاط التحقق الرسمية الخاصة بـ YOLO26 عبر هذا البحث التطوري.
from ultralytics import YOLO
# حمّل نموذج YOLO26n مدرّبًا مسبقًا
model = YOLO("yolo26n.pt")
# فضاء البحث: حدود (الحد الأدنى، الحد الأقصى) لكل معلمة فائقة يراد ضبطها
search_space = {"lr0": (1e-5, 1e-2), "degrees": (0.0, 45.0)}
# تُدرّب كل واحدة من التكرارات الثلاثين لمدة 10 عصور باستخدام قيم خضعت لطفرات جديدة
model.tune(data="coco8.yaml", epochs=10, iterations=30, space=search_space, plots=False, save=False, val=False)ينشئ التشغيل best_hyperparameters.yaml، ومخططًا للياقة حسب التكرار، وأوزان أفضل تكرار في دليل tune. ويُدرّب model.tune() باستخدام AdamW ما لم يُحدَّد المحسّن، لأن optimizer="auto" الافتراضي سيتجاوز lr0 الذي خضع للضبط.
ضبط المعلمات الفائقة ومصطلحات ذات صلة#
- تدريب النموذج: يتعلم التدريب الأوزان لمجموعة واحدة ثابتة من المعلمات الفائقة باستخدام الانتشار العكسي. أما الضبط فهو الحلقة الخارجية التي تشغّل التدريب مرات عديدة وتقارن النتائج.
- الضبط الدقيق: على الرغم من تشابه الاسم، يواصل الضبط الدقيق تدريب أوزان نموذج مدرّب مسبقًا على بيانات جديدة. وله معلماته الفائقة الخاصة التي تحتاج إلى ضبط، مثل خفض معدل التعلّم وعدد الطبقات المجمّدة.
- البحث عن البنية العصبية (NAS): يبحث في بنية الشبكة، مثل أنواع الطبقات وعروضها، بدلًا من إعدادات التدريب.
- تعلّم الآلة المؤتمت (AutoML): يؤتمت مسار العمل الأوسع، بما في ذلك اختيار النموذج والمعالجة المسبقة للبيانات، ويُعد ضبط المعلمات الفائقة أحد مكوّناته.
- فرط التكيّف مع مجموعة التحقق: قد تؤدي مئات تجارب الضبط التي تُقيّم على تقسيم التحقق نفسه إلى اختيار إعدادات تلائم ذلك التقسيم مصادفةً، لذا ينبغي قياس النتائج النهائية على مجموعة اختبار منفصلة لم يمسّها الضبط.










