أساسيات تعلم الآلة2018متوسط13 دقيقة قراءة
Hyperband: نهج مبتكر لضبط المعاملات الفائقة مستوحى من مسائل قطّاع الطريق
Hyperband: A Novel Bandit-Based Approach to Hyperparameter Optimization
Li, L. · Jamieson, K. · DeSalvo, G. · Rostamizadeh, A. · Talwalkar, A. — JMLR
المشكلة
حين تدرّب نموذج تعلّم آلي حديثاً، عليك أن تختار معاملات فائقة كثيرة — معدّل التعلّم، حجم الدُّفعة، شدّة التنظيم، عمق البنية — وأداء مرتبط ارتباطاً وثيقاً بهذه الخيارات. الأساليب المعروفة كالبحث الشبكي والبحث العشوائي تدرّب كل إعداد حتى النهاية، فتُبدَّد موارد حوسبية ضخمة على إعدادات كان واضحاً أنها سيئة بعد حقب قليلة. أساليب أذكى في اختيار الإعدادات، لكنها أيضاً تدرّب كل إعداد بالكامل وتعاني في فضاءات البحث عالية الأبعاد. المشكلة الأساسية أنه لم تكن هناك طريقة منهجية تُقرّر كيف تُوزَّع ميزانية حوسبية محدودة: هل نستكشف إعدادات كثيرة بسرعة، أم نركّز على إعدادات قليلة ونمنحها تدريباً مطوّلاً؟
الإسهام
تقدّم هذه الورقة Hyperband، وهي خوارزمية تتعامل مع ضبط المعاملات الفائقة باعتباره مسألة استكشاف خالص في فضاء لا نهائي من الأذرع ضمن إطار قطّاع الطريق. الفكرة الجوهرية هي توسيع خوارزمية التنصيف المتتالي — التي تدرّب n إعداداً ثم تستبعد الأسوأ وتكرّر — بتشغيلها عند مستويات حدّة مختلفة تُسمّى أقواساً. كل قوس يُجسّد مفاضلة مختلفة بين عدد الإعدادات n ومتوسط الموارد لكل إعداد B/n. المدخلات المطلوبة اثنان فقط: الحدّ الأقصى للموارد R لكل إعداد، ومعامل الاستبعاد η (عادةً 3). لا تحتاج نموذجاً لسطح الخسارة ولا افتراضات عن سرعة التقارب، بل تتكيّف تلقائياً. في التجارب العملية على التعلّم العميق وأساليب النوى، حقّقت Hyperband تسريعاً يتراوح بين 5 و30 ضعفاً مقارنةً بأساليب الأمثَلة البايزية.
الأثر
رسّخت Hyperband فكرة الإيقاف المبكّر بوصفها ركيزة أساسية في ضبط المعاملات الفائقة، وأصبحت المُجدوِل الافتراضي في أُطر عمل رئيسية مثل Ray Tune وOptuna وKeras Tuner وDetermined AI. أسلوبها في تخصيص الموارد بشكل تكيّفي ألهم مباشرةً خوارزميات لاحقة مثل BOHB التي تدمج الأمثَلة البايزية مع Hyperband، وASHA التي تُوسّع التنصيف المتتالي ليعمل بشكل لامتزامن. أما صياغة ضبط المعاملات الفائقة كمسألة قطّاع طريق متعدد الأذرع، مدّت جسراً بين نظرية قطّاع الطريق وتعلّم الآلة التلقائي لا يزال يُغذّي الأبحاث حتى اليوم.
تخيّل أنك كشّاف مواهب أمامك 81 متسابقاً وعندك ميزانية محدودة من الوقت. لو أنفقت كل وقتك على مشاهدة عرض كامل لكل متسابق، فلن تتمكّن من تقييم سوى حفنة منهم. البديل الذكي: امنح كل متسابق دقيقة واحدة على المسرح، ثم استبعد الثلثين الأضعف، وامنح الناجين ثلاث دقائق، ثم استبعد مجدّداً، وهكذا حتى يبقى واحد فقط.
قد تبدو هذه الطريقة محفوفة بالمخاطر: ماذا لو كان أحد المتسابقين بطيء البداية وأُقصي ظلماً؟ لكن الواقع الإحصائي أنك شاهدت عدداً أكبر بكثير من المتسابقين، والضعفاء فعلاً يفضحون أنفسهم بسرعة. Hyperband تتحوّط لهذا الخطر بتشغيل عملية التصفية عند مستويات حدّة مختلفة في الوقت نفسه — بعض الجولات صارمة (متسابقون كُثر واختبارات قصيرة) وبعضها صبور (متسابقون أقل واختبارات أطول). وبذلك تُغطّى جميع الاحتمالات.
المشكلة: ضبط المعاملات الفائقة يستنزف الحوسبة
يتطلب اختيار عديدة — و وعدد وشدّة — وجودة النموذج النهائي مرهونة بهذه الخيارات. بحلول 2016 كان أمام الممارسين منهجان رئيسيان:
-
البحث العشوائي: سحب إعدادات عشوائياً وتدريب كل واحد منها حتى النهاية. المنهج بسيط وسهل التوزيع على عدة آلات، لكنه يُهدر حوسبة ضخمة على إعدادات يتّضح فشلها بعد قليلة.
-
البايزية (مثل SMAC وTPE وSpearmint): بناء نموذج احتمالي لسطح الخسارة واختيار الإعداد التالي بذكاء. أفضل من البحث العشوائي، لكنها أيضاً تدرّب كل إعداد حتى النهاية، والنموذج البديل يُعاني حين يكون فضاء البحث عالي الأبعاد.
المشكلة الجوهرية أن كلا المنهجين يتعاملان مع كل إعداد بالتساوي: سواء كان الإعداد فاشلاً بوضوح أو واعداً، يحصل على ميزانية التدريب نفسها. والنتيجة أن الجزء الأكبر من الحوسبة يُصرف على إعدادات لم يكن لها أمل من البداية.
المعضلة الجوهرية: هل نتوسّع أم نتعمّق؟
حين تكون أمامك ثابتة ، تقع في مفاضلة جوهرية بين طريقين:
-
التوسّع في : تجرّب عدداً كبيراً من الإعدادات لكن بميزانية ضئيلة لكلٍّ منها. هذا النهج ينجح حين تكشف الإعدادات الرديئة عن نفسها سريعاً — أي أن منحنى الخسارة ينحرف أو يتسطّح بعد خطوات قليلة.
-
التعمّق في : تجرّب إعدادات قليلة لكن تمنح كلاً منها ميزانية كبيرة. هذا ينجح حين يكون بطيئاً وتحتاج تدريباً مطوّلاً لتميّز الجيد من الممتاز.
الاستراتيجية المثلى تتوقّف على مجهولين: (1) سرعة تقارب الإعدادات، وتُعبَّر عنها بدالة الغلاف ، و(2) مدى ندرة الإعدادات الجيدة، ويُعبَّر عنها بـ للخسائر النهائية. بدون معرفة أيٍّ منهما يصبح الممارس في حالة تخمين — والتخمين الخاطئ قد يُهدر مضاعفات هائلة من الحوسبة.
اللبنة الأساسية: التنصيف المتتالي
قبل أن نفهم Hyperband، لا بدّ من فهم اللبنة التي تقوم عليها: التنصيف المتتالي ( المنظَّم). الفكرة بسيطة كما يوحي اسمها:
- ابدأ بـ إعداد معاملات فائقة مسحوبة عشوائياً.
- خصِّص لكلٍّ منها ميزانية صغيرة ودرِّبها جميعاً.
- قِس خسارة التحقُّق لكل إعداد.
- استبعد الشريحة الأسوأ بنسبة (مثلاً الثلثان الأضعف حين ).
- ضاعِف ميزانية الناجين بمعامل .
- كرِّر حتى يبقى إعداد واحد.
في كل جولة يُقصى الأضعف ويحصل الباقون على موارد أكبر بشكل أُسّي — تماماً كبطولة تصفيات: الخاسرون يخرجون والفائزون يترقّون إلى جولات أطول وأصعب.
Hyperband: التحوّط عبر مستويات عدوانية متعددة
الفكرة المحورية في Hyperband بسيطة لكنها فعّالة جداً: بدلاً من تخمين القيمة المثلى لـ، جرّب عدة قيم في آنٍ واحد. تُشغَّل خوارزمية التنصيف المتتالي عدة مرات، كل مرة بمفاضلة مختلفة بين الاستكشاف ( كبير وميزانية ابتدائية صغيرة) والاستثمار ( صغير وميزانية ابتدائية كبيرة). كل تشغيلة من هذه التشغيلات تُسمّى قوساً.
لا تحتاج الخوارزمية إلا مُدخلين اثنين:
- : الحدّ الأقصى للموارد لكل إعداد (مثلاً 81 حقبة)
- : معامل الاستبعاد (القيمة الافتراضية 3 — أي أبقِ الثلث الأفضل في كل جولة)
من هذين المُدخلين تحسب Hyperband عدد الأقواس . القوس الأشدّ حدّةً () يبدأ بأكبر عدد من الإعدادات وأصغر ميزانية ابتدائية. أما القوس الأكثر تحفّظاً () فهو مجرد بحث عشوائي تقليدي — كل إعداد يحصل على كامل الموارد .
لنأخذ مثالاً عملياً: و، فنحصل على أقواس. كل قوس يستهلك تقريباً الميزانية نفسها :
القوس (الأشدّ حدّةً): نبدأ بـ81 إعداداً بـحقبة واحدة لكلٍّ منها. في كل جولة نُبقي الثلث الأفضل ونُضاعف الميزانية ثلاث مرات. في الجولة الأخيرة يبقى ناجٍ واحد بـ81 حقبة. هذا القوس يتوسّع في الاستكشاف.
القوس (الأكثر تحفّظاً): نبدأ بـ5 إعدادات فقط بـ81 حقبة لكلٍّ منها. لا إيقاف مبكِّر هنا على الإطلاق — بحث عشوائي خالص. هذا القوس يُركّز على الاستثمار المعمّق.
الأقواس تتوزّع بين هذين الطرفين. معاً تُغطّي كل مفاضلة معقولة. مهما كان السيناريو — تقارب سريع أو بطيء — سيكون قوس واحد على الأقل قريباً من الأمثل.
الخوارزمية خطوة بخطوة
مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.
import numpy as np
from math import log, ceil, floor
def hyperband(get_config, run_config, R=81, eta=3):
"""
get_config() -> إعداد معاملات فائقة عشوائي
run_config(config, budget) -> خسارة التحقق بعد التدريب لمدة budget
R: الحد الأقصى للموارد لكل إعداد (مثلاً 81 حقبة)
eta: معامل الاستبعاد (3 = أبقِ الثلث الأفضل)
"""
s_max = floor(log(R) / log(eta)) # عدد الأقواس
B = (s_max + 1) * R # الميزانية لكل قوس
best = (float('inf'), None)
for s in range(s_max, -1, -1): # الحلقة الخارجية: الأقواس
n = ceil(B / R * eta**s / (s + 1)) # الإعدادات الأولية
r = R * eta**(-s) # أقل موارد
# --- حلقة التنصيف المتتالي الداخلية ---
configs = [get_config() for _ in range(n)]
for i in range(s + 1):
n_i = floor(n * eta**(-i))
r_i = r * eta**i
losses = [run_config(c, r_i) for c in configs]
# أبقِ أفضل 1/eta
k = max(1, floor(n_i / eta))
ranked = sorted(zip(losses, configs))
configs = [c for _, c in ranked[:k]]
if ranked[0][0] < best[0]:
best = (ranked[0][0], ranked[0][1])
return best # (أفضل_خسارة، أفضل_إعداد)الربط بنظرية قطّاع الطريق: كيف يتحوّل ضبط المعاملات إلى مسألة أذرع متعددة
تصوغ Hyperband عملية ضبط المعاملات الفائقة كـمسألة استكشاف خالص في فضاء لا نهائي من الأذرع ضمن إطار قطّاع الطريق غير العشوائي. والربط بين المفهومين واضح:
- كل ذراع يقابل إعداد معاملات فائقة مسحوباً من فضاء البحث.
- سحب ذراع مرة يعني تدريب ذلك الإعداد لمدّة وحدة موارد (حقب أو عيّنات بيانات أو ).
- الخسارة بعد سحبة هي خطأ التحقُّق لـالنموذج المدرَّب جزئياً.
- الخسارة النهائية هي خطأ التحقُّق عند التقارب الكامل.
- الهدف: إيجاد الذراع ذي أصغر خسارة نهائية بأقل عدد ممكن من السحبات.
الفارق الجوهري عن مسائل قطّاع الطريق التقليدية أن الخسائر هنا غير عشوائية — فخطأ التحقُّق بعد حقبة هو دالة حتمية تعتمد على الإعداد وإجراء التدريب. هذا يزيد صعوبة المسألة لأنه لا يمكن تقدير الخسارة النهائية بمجرّد حساب المتوسط.
الأساس النظري: لماذا تعمل Hyperband؟
يرتكز التحليل النظري لـ Hyperband على كمّيتين مجهولتين تحدّدان صعوبة المسألة:
-
دالة الغلاف : تضع حدّاً أعلى لمقدار ابتعاد الخسارة الوسيطة عن الخسارة النهائية بعد استهلاك وحدة موارد. إذا تلاشت هذه الدالة بسرعة فهذا يعني أن التقارب سريع. تُعبَّر عادةً بصيغة حيث القيمة الكبيرة لـ تدلّ على تقارب بطيء.
-
توزيع الخسائر النهائية : يصف مدى احتمالية أن يكون الإعداد المسحوب عشوائياً جيداً. يُعبَّر بصيغة حيث القيمة الكبيرة لـ تعني أن الإعدادات الجيدة نادرة.
ميزانية التنصيف المتتالي تتناسب مع ، بينما يحتاج البحث العشوائي (التخصيص المنتظم) إلى ميزانية بمقدار لتحقيق الخطأ ذاته . الفرق قد يكون ضخماً. والنتيجة المهمة أن Hyperband — دون أي معرفة مسبقة بـ أو — تحقّق ميزانية لا تزيد سوى بعوامل لوغاريتمية عن التنصيف المتتالي بالقوس الأمثل.
إرشادات عملية
لاستخدام Hyperband عملياً، تحتاج لضبط مُدخلين: و. وفيما يلي توصيات المؤلفين:
-
ضبط : اختر الحدّ الأقصى الطبيعي لميزانية تدريب إعداد واحد. بالنسبة لـالشبكات العصبية يكون هذا عادةً عدد الحقب المعتاد. أما في أسلوب أخذ العيّنات الفرعية فيكون حجم الكاملة. قيمة الأصغر تعطي نتائج أسرع، والأكبر تعطي ضمانات أقوى.
-
ضبط : يُنصح بقيمة 3 أو 4. القيمة الأكبر تعني استبعاداً أشدّ حدّةً (جولات أقل وسرعة أكبر، لكن مع خطر أعلى في إقصاء إعدادات جيدة). نظرياً القيمة المثلى هي ، لكن 3 تؤدي الغرض جيداً في الممارسة.
-
عدد الأقواس: استهدف نحو 5 أقواس — عدد كافٍ لتغطية طيف المفاضلات دون تكاليف زائدة مبالغ فيها.
-
المعاملات الفائقة المرتبطة بالموارد: إذا كان معامل فائق يتغيّر مع حجم الموارد (مثلاً عمق الشجرة يتغيّر بتغيّر حجم البيانات)، فحاول فصل الاثنين. Hyperband تواجه صعوبة حين يكون الإعداد الأمثل عند موارد قليلة مختلفاً جذرياً عنه عند موارد كبيرة.
ليس فقط الحقب: أنواع مختلفة من الموارد
من أقوى جوانب Hyperband أن مفهوم «المورد» لا يقتصر على عدد الحقب. أي كمّية ترتبط بجودة النموذج ويمكن التحكّم في تكلفتها تصلح مورداً:
-
التكرارات/الحقب: الخيار الأكثر شيوعاً. درّب لمدّة حقبة ثم قيّم النتيجة وقرّر.
-
أخذ عيّنات فرعية من البيانات: درّب على جزء عشوائي من مجموعة البيانات. فعّال بشكل خاص مع النماذج ذات وقت التدريب فوق الخطي (كأساليب )، حيث تقليص البيانات 8 مرات قد يقلّص الحوسبة 64 مرة.
-
أخذ عيّنات فرعية من السمات: في تقريبات السمات العشوائية لأساليب النوى، يصبح عدد السمات العشوائية هو المورد.
-
الزمن: خصِّص وقت التدريب الفعلي مباشرةً. مفيد حين تختلف تكلفة الحقبة من إعداد لآخر.
الشرط الوحيد أن جودة النموذج يجب أن تتحسّن عموماً — أو على الأقل لا تسوء — مع زيادة الموارد. Hyperband لا تفترض شيئاً عن سرعة هذا التحسّن، بل تتكيّف مع أي معدّل تصادفه.
النتائج: تسريع بأضعاف مضاعفة
أجرى المؤلفون مقارنات بين Hyperband وكلٍّ من SMAC وTPE وSpearmint والبحث العشوائي على طيف متنوّع من المسائل:
-
على CIFAR-10 (فضاء بحث من 8 أبعاد): حقّقت Hyperband تسريعاً يتجاوز 10 أضعاف مقارنةً بجميع الأساليب البايزية. بل إن أول نتيجة بعد ميزانية فقط كانت مكافئة لنتائج الأساليب الأخرى بعد .
-
بأساليب النوى (6 أبعاد): قيّمت Hyperband أكثر من 250 إعداداً في الوقت الذي لم يُقيّم فيه المنافسون سوى 3 إعدادات، محقّقةً تسريعاً بـ30 ضعفاً على الأساليب البايزية و70 ضعفاً على البحث العشوائي.
-
117 مجموعة بيانات (فضاء من 110 أبعاد): على المجموعة الفرعية من 21 مجموعة بيانات حيث كان أخذ العيّنات الفرعية فعّالاً، تفوّقت Hyperband على جميع الأساليب بما فيها البحث العشوائي بضعفَي الميزانية.
-
تقريب نوى بـسمات عشوائية: حقّقت Hyperband تسريعاً بـ6 أضعاف — وهو رقم أقل لأن فضاء البحث (3 أبعاد فقط) كان صغيراً بما يكفي ليُغطّيه البحث العشوائي.
ومن أبرز الملاحظات أن أول نتيجة من Hyperband (بعد القوس الأول) كانت في الغالب مكافئة للنتائج النهائية لأساليب عملت عشرة أضعاف المدة. فضلاً عن ذلك، كانت النتائج أقل تقلّباً بين التجارب المتكرّرة، وهذا أمر ذو قيمة عملية كبيرة.
الأثر: من البحث الأكاديمي إلى الاستخدام الإنتاجي
2015
تحليل التنصيف المتتالي
حلّل جاميسون وتالوالكار خوارزمية التنصيف المتتالي ضمن الإطار غير العشوائي، وقدّما ضمانات نظرية تُثبت فعاليتها في ضبط المعاملات الفائقة. هذه الخوارزمية أصبحت لاحقاً اللبنة الأساسية التي بُنيت عليها Hyperband.
2017
Hyperband في ICLR
قدّم لي وزملاؤه النسخة الأولية من ورقة Hyperband في مؤتمر ICLR، حيث طرحوا نظام الأقواس الذي يعالج معضلة الموازنة بين n وB/n.
2018
ورقة Hyperband الكاملة في JMLR
نُشرت الورقة بنسختها الكاملة في JMLR، متضمّنةً التحليل النظري الشامل والنسخة ذات الأفق اللانهائي وتجارب مكثّفة على 117 مجموعة بيانات.
2018
BOHB يجمع الأمثَلة البايزية مع Hyperband
دمج فالكنر وزملاؤه بين اختيار الإعدادات بأسلوب TPE وآلية الإيقاف المبكّر من Hyperband، فحصلوا على مزايا المنهجين معاً. سرعان ما أصبح BOHB من أكثر أساليب ضبط المعاملات الفائقة انتشاراً.
2020
ASHA للأنظمة الموزّعة
طرح لي وزملاؤه ASHA (خوارزمية التنصيف المتتالي اللامتزامن) التي توسّع Hyperband لتعمل على عناقيد حوسبة موزّعة ضخمة، حيث تُنهي الآلات المختلفة مهامّها بسرعات متفاوتة.
2023
PriorBand في NeurIPS
وسّع ماليك وزملاؤه Hyperband بإضافة أسبقيات مستمدّة من التعلّم التلوي (Meta-learning)، مما زاد من عمليّتها في عصر التعلّم العميق واسع النطاق.
اليوم أصبحت Hyperband المُجدوِل الافتراضي لـالإيقاف المبكِّر في Ray Tune وOptuna وKeras Tuner وDetermined AI. والخوارزميات التي تفرّعت منها — BOHB وASHA وPriorBand — لا تزال تتطوّر. أما الجسر الذي مدّته بين نظرية قطّاع الطريق وتعلّم الآلة التلقائي فيظلّ من أخصب نقاط التلاقي في الحديث.
المرجعLi, Jamieson, DeSalvo, Rostamizadeh, Talwalkar. Hyperband: A Novel Bandit-Based Approach to Hyperparameter Optimization. JMLR, 2018.
مصطلحات هذه الورقة
- المعلمة الفائقةHyperparameter
- الإيقاف المبكر للتدريبEarly Stopping
- قطّاع الطريق متعدد الأذرعMulti-Armed Bandit
- الأمثَلة البايزيةBayesian Optimization
- اختيار النموذجModel Selection
- معدل التعلمLearning Rate
- التقارب الحسابيConvergence