التحسين2021متوسط10 دقيقة قراءة

تصغير مُدرك للحِدّة لتحسين التعميم بكفاءة

Sharpness-Aware Minimization for Efficiently Improving Generalization

Foret, P. · Kleiner, A. · Mobahi, H. · Neyshabur, B. — ICLR

المشكلة

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

الإسهام

تطرح SAM آلية أمثَلة من نوع minimax تُصغّر قيمة الخسارة وحِدّتها معاً. في كل خطوة تدريب، تبدأ بحساب أسوأ اضطراب ممكن للأوزان داخل جوار محدود عبر خطوة صعود تدرّجي واحدة، ثم تأخذ خطوة هبوط تدرّجي انطلاقاً من تلك النقطة المُضطربة. هذا الأسلوب يوجّه التقارب نحو حدود دنيا مسطّحة تكون الخسارة فيها منخفضة بشكل منتظم في الجوار بأكمله. تُثبت الورقة حدّاً نظرياً للتعميم مبنياً على إطار PAC-Bayes يربط الحِدّة بفجوة التعميم، وتُبيّن تجريبياً أن SAM تحقّق نتائج رائدة على CIFAR-10/100 وImageNet ومهام ، مع تقديم متانة طبيعية تجاه ضجيج التسميات.

الأثر

بعد نشرها، أصبحت SAM من أكثر تقنيات التدريب استخداماً في التعلّم العميق. ولّدت عائلة كاملة من المتغيّرات — ASAM وLookSAM وEfficient SAM وFisher SAM — ونقلت اهتمام مجتمع الأمثَلة من التركيز على قيمة الخسارة فحسب إلى مراعاة هندسة سطح الخسارة. الفكرة المحورية بأن تُعمّم أفضل، والتي ترجمتها SAM إلى خوارزمية عملية من خطوتين، أثّرت في تصميم مُحسّنات حديثة مثل Lion. واليوم تُعدّ SAM خطوة قياسية في تدريب محوّلات الرؤية والنماذج الكبيرة التي يكون التعميم فيها عاملاً حاسماً.

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

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

SAM هي الشخص الثاني. العادي يجد أي حدّ أدنى. أما SAM فتبحث عن حدّ أدنى مستقرّ — يظل منخفضاً حتى حين تهتزّ الأرض تحتك.

المشكلة: الأودية الحادّة لا تُعمّم جيداً

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

بعض الحدود الدنيا تقع في قاع أودية ضيقة وحادّة — الخسارة منخفضة تماماً عند تلك النقطة، لكنها ترتفع بشكل حادّ في كل اتجاه. هذا النوع هشّ للغاية: أي تحوّل بسيط في توزيع البيانات — كالفرق بين بيانات التدريب وبيانات الاختبار — يُزيح المعاملات قليلاً فتنفجر الخسارة. هذا في جوهره ، لكن بلغة هندسية.

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

السؤال الآن: كيف نجعل المُحسّن يُفضّل الحدود المسطّحة ويتجنّب الحادّة؟

افتح في المختبر
اسحب شريط المعاملات لترى كيف تتغيّر الخسارة حول الحدّ الأدنى الحادّ مقابل المسطّح. لاحظ أن الحدّ الأدنى المسطّح يبقى منخفضاً على نطاق أوسع.
تستيقظ التجربة عند وصولك…

هدف SAM: تصغير الخسارة عند أسوأ جار

التدريب التقليدي يحلّ مسألة أمثَلة مباشرة: أوجد المعاملات ww التي تُصغّر خسارة التدريب LS(w)L_S(w). ما تفعله SAM هو تغيير السؤال نفسه. بدلاً من السؤال «كم تبلغ الخسارة عند ww؟»، تسأل «كم تبلغ أسوأ خسارة ممكنة في محيط صغير حول ww؟»

الفكرة تُشبه اختبار الإجهاد للجسور. المُحسّن العادي يتحقق هل الجسر يتحمّل الحمل الطبيعي. أما SAM فتسأل: هل يتحمّل أسوأ حمل ممكن ضمن نطاق معقول؟ إذا نجح الجسر في اختبار الإجهاد، فهو بالتأكيد سينجح في الظروف العادية.

رسمياً، تستبدل SAM الهدف التقليدي بالصيغة التالية:

minw  maxϵpρ  LS(w+ϵ)\min_{w} \; \max_{\|\epsilon\|_p \leq \rho} \; L_S(w + \epsilon)
هدف SAM — تصغير أسوأ خسارة في جوار نصف قطره ρالتعظيم الداخلي يبحث عن أسوأ اضطراب ϵ\epsilon للأوزان داخل كرة نصف قطرها ρ\rho. ثم يأتي التصغير الخارجي ليُعدّل الأوزان بحيث تصبح حتى تلك الحالة الأسوأ صغيرة قدر الإمكان. المعامل ρ\rho يُحدّد اتّساع الجوار — أي إلى أي مدى يصل «اختبار الإجهاد».

هذه مسألة : تصغير على ww وتعظيم على ϵ\epsilon. الهدفان يتنافسان — ϵ\epsilon يحاول كشف نقطة ضعف، وww يحاول سدّها. المحصّلة هي معاملات لا تملك ثغرة حادّة في أي اتجاه.

المشكلة أن حلّ التعظيم الداخلي بدقّة مُكلف حسابياً. لكن الفكرة العملية المحورية في SAM هي أن تقريباً بخطوة صعود تدرّجي واحدة يُعطي نتائج ممتازة.

الخوارزمية: خطوتان في كل دورة

جمال SAM في بساطتها. كل خطوة تدريب تتألف من مرحلتين — فكّر فيها على أنها «استكشف ثم صحّح».

الخطوة الأولى — الاستكشاف (صعود تدرّجي): احسب عند الأوزان الحالية wtw_t. هذا التدرّج يدلّك على الاتجاه الذي يرفع الخسارة أكثر شيء داخل كرة ρ\rho، وبالتالي يكشف لك أسوأ اضطراب ممكن:

ϵ^(wt)=ρ  wLS(wt)wLS(wt)\hat{\epsilon}(w_t) = \rho \; \frac{\nabla_w L_S(w_t)}{\|\nabla_w L_S(w_t)\|}
أسوأ اضطراب عبر تقريب من الرتبة الأولىالتدرّج يُشير نحو أسرع اتجاه صعود. حين نُقيّسه ونضربه بـρ\rho نحصل على النقطة الواقعة على حدود كرة ρ\rho والتي تكون عندها الخسارة أعلى ما يمكن تقريبياً. هذا تقريب تايلور من الرتبة الأولى — بسيط حسابياً لكنه فعّال جداً.

الخطوة الثانية — التصحيح (هبوط تدرّجي): الآن احسب التدرّج عند النقطة المُضطربة wt+ϵ^w_t + \hat{\epsilon}، واستخدمه لتحديث الأوزان الفعلية:

wt+1=wtη  wLS(w)w=wt+ϵ^(wt)w_{t+1} = w_t - \eta \; \nabla_w L_S(w)\big|_{w = w_t + \hat{\epsilon}(w_t)}
تحديث أوزان SAM — التدرّج عند النقطة المُضطربةالفرق الجوهري عن الانحدار التدريجي العشوائي العادي أن SAM لا تهبط من الموقع الحالي مباشرةً، بل تهبط من أسوأ نقطة مجاورة. بهذا الأسلوب يأخذ التحديث بالاعتبار الانحناء حول النقطة الحالية، وليس فقط الميل عندها. معدل التعلّم η\eta يتحكّم في حجم الخطوة كالمعتاد.
افتح في المختبر
تابع عملية SAM من خطوتين: أولاً الاضطراب نحو أسوأ جار (السهم الأحمر)، ثم حساب التدرّج هناك وتحديث الأوزان (السهم الأزرق). قارن ذلك بالانحدار التدريجي العشوائي الذي يعتمد التدرّج عند النقطة الحالية فقط.
تستيقظ التجربة عند وصولك…

التكلفة الحسابية الإجمالية تقارب ضعف تكلفة العادي و لحساب ϵ^\hat{\epsilon}، ومثلها لحساب التدرّج عند w+ϵ^w + \hat{\epsilon}. هذا يُضاعف تكلفة كل خطوة، لكن النتائج تُبيّن أن المكسب في التعميم يُعوّض هذه التكلفة بسهولة، بل إن SAM كثيراً ما تصل إلى في عدد أقل من .

شبه كود SAM — خطوة التدريب الكاملةpython

مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.

# SAM: تصغير مُدرك للحِدّة (خطوة تدريب واحدة)
# تغلّف أي مُحسّن أساسي (SGD, Adam, إلخ)

def sam_step(model, loss_fn, batch, rho=0.05, base_optimizer):
    # الخطوة 1: احسب التدرّج عند الأوزان الحالية
    loss = loss_fn(model(batch.x), batch.y)
    loss.backward()

    # احسب أسوأ اضطراب epsilon_hat
    with torch.no_grad():
        grad_norm = torch.stack([
            p.grad.norm() for p in model.parameters()
        ]).norm()
        for p in model.parameters():
            # قيّس التدرّج ليقع على حدود كرة rho
            epsilon = rho * p.grad / grad_norm
            p.add_(epsilon)          # w -> w + epsilon

    # الخطوة 2: احسب التدرّج عند النقطة المُضطربة
    model.zero_grad()
    loss_perturbed = loss_fn(model(batch.x), batch.y)
    loss_perturbed.backward()

    # أزل الاضطراب وحدّث بتدرّج SAM
    with torch.no_grad():
        for p in model.parameters():
            epsilon = rho * p.grad / grad_norm
            p.sub_(epsilon)          # w + epsilon -> w
        base_optimizer.step()        # w -> w - eta * grad_perturbed

الأساس النظري: لماذا تُعمّم الحدود المسطّحة أفضل

SAM ليست مجرد حيلة عملية ناجحة — بل تستند إلى ضمان رياضي مُشتقّ من . الفكرة الأساسية في هذا الحدّ النظري واضحة: إذا كانت خسارة التدريب منخفضة وكان سطح الخسارة مسطّحاً حول الحلّ، فإن الفجوة بين خسارة التدريب وخسارة الاختبار تبقى محدودة ومضبوطة.

نظرية PAC-Bayes لا تنظر إلى نقطة واحدة من المعاملات، بل إلى توزيع كامل حولها. تخيّلها وكأنها تسأل: «لو حرّكتُ الأوزان عشوائياً في منطقة صغيرة حول الحلّ، هل يستمر النموذج في العمل بشكل سليم؟» إن كان الجواب نعم، فالنموذج متين أمام الاضطرابات، والنظرية تضمن أنه سيُعمّم.

الملاحظة المفتاحية هنا أن الحدّ الذي يلتقط حِدّة الخسارة داخل المتراجحة هو تحديداً ما تحاول SAM تصغيره — أسوأ خسارة في الجوار:

LD(w)maxϵρLS(w+ϵ)+h ⁣(w22/ρ2)L_\mathcal{D}(w) \leq \max_{\|\epsilon\| \leq \rho} L_S(w + \epsilon) + h\!\left(\|w\|_2^2 / \rho^2\right)
حدّ التعميم من نظرية PAC-Bayes يربط الحِدّة بالتعميمخسارة التعميم LDL_\mathcal{D} (أي الأداء على بيانات الاختبار) لا تتجاوز أسوأ خسارة تدريب في الجوار (وهو هدف SAM) مضافاً إليها حدّ تعقيد hh يتزايد مع نسبة حجم الأوزان إلى نصف قطر الاضطراب. حين نُصغّر الحدّين معاً — نُبقي سطح الخسارة مسطّحاً والأوزان صغيرة — نضبط فجوة التعميم.

قياس الحِدّة: مفهوم m-sharpness

تطرح الورقة مفهوماً مُحسَّناً للحِدّة يُسمى m-sharpness. الفكرة بسيطة: بدلاً من حساب اضطراب أسوأ حالة واحد على مجموعة التدريب بأكملها، نحسبه لكل على حدة. كل دفعة تحصل على اضطراب أسوأ حالة خاصّ بها، ثم نأخذ المتوسط.

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

وجد المؤلفون أن m-sharpness ترتبط بـالتعميم بشكل أقوى من مقياس الحِدّة العالمي، وأن استخدام اضطرابات الدفعات أثناء التدريب — وهو ما تفعله SAM تلقائياً لأنها تعمل أصلاً على دفعات — هو سرّ فعاليتها.

افتح في المختبر
قارن بين الحِدّة العالمية (اضطراب واحد لكل البيانات) وm-sharpness (اضطراب لكل دفعة). m-sharpness تلتقط الهندسة المحلية بدقة أعلى.
تستيقظ التجربة عند وصولك…

النتائج: أداء SAM عبر المعايير القياسية

تُقدّم SAM تحسينات ثابتة عبر مجموعة واسعة من المهام والبنيات المعمارية. على CIFAR-10 مثلاً، تصل الدقة مع ResNet إلى نحو 96.5% مقابل ~95.4% بالتدريب التقليدي — فارق يتجاوز نقطة مئوية كاملة. وعلى CIFAR-100 يكون الفرق أوضح، إذ تقفز الدقة من ~78% إلى ~80%.

على ImageNet مع EfficientNet، تدفع SAM دقة Top-1 لتتجاوز ما تحققه البنية ذاتها مع المُحسّنات التقليدية.

لكن الأكثر لفتاً للنظر هو أداء SAM في مهام الضبط الدقيق — معايير التصنيف البصري الدقيق (FGVC) مثل Oxford Pets وStanford Cars وFlowers. هذه سيناريوهات تختبر قدرة نموذج مُدرَّب مسبقاً على التكيّف مع مجالات جديدة، وSAM تتفوّق فيها باستمرار على الضبط الدقيق التقليدي.

افتح في المختبر
SAM مقابل التدريب التقليدي عبر المعايير القياسية. بدّل بين مجموعات البيانات لترى مقدار التحسّن.
تستيقظ التجربة عند وصولك…

ميزة إضافية: متانة طبيعية تجاه ضجيج التسميات

من النتائج المفاجئة أن SAM تتمتّع بمتانة طبيعية تجاه ، رغم أنها لم تُصمَّم لهذا الغرض. حين تُفسَد نسبة من تسميات التدريب عشوائياً، يسارع الانحدار التدريجي العشوائي إلى فرط التخصيص على الضجيج — أي يحفظ التسميات الخاطئة. أما SAM فتُقاوم هذا الحفظ.

التفسير يعود إلى الحِدّة مجدداً. التسميات المُفسدة تخلق حدوداً دنيا حادّة ومعزولة في سطح الخسارة — لأن النموذج يحتاج إلى الالتواء داخل منطقة ضيقة من فضاء المعاملات كي يتناسب مع التسميات النظيفة والمُفسدة في آنٍ واحد. عقوبة الحِدّة التي تفرضها SAM تُثبّط المُحسّن عن دخول هذه المناطق الحادّة من الأساس.

عند إفساد 80% من التسميات على CIFAR-10، ينهار التدريب التقليدي تماماً بينما تحتفظ SAM بدقة جيدة، على مستوى أساليب مُصمَّمة خصيصاً للتعامل مع التسميات المُشوّشة مثل MentorMix.

افتح في المختبر
زِد نسبة ضجيج التسميات وقارن بين SAM وSGD. تحافظ SAM على الدقة في حين ينهار SGD.
تستيقظ التجربة عند وصولك…

الصورة الأشمل: أمثَلة تُراعي الهندسة

مثّلت SAM نقلة نوعية في تفكيرنا حول تدريب الشبكات العصبية. قبلها، كانت المُحسّنات تهتم فقط بـقيمة الخسارة — المهم أن تجد أخفض نقطة وكفى. ما أظهرته SAM أن شكل سطح الخسارة لا يقلّ أهمية — ليس المهم فقط أين وصلتَ، بل كيف تبدو التضاريس من حولك.

هذه الرؤية فتحت اتجاهاً بحثياً غنياً. ASAM (النسخة التكيّفية من SAM) جعلت الاضطراب مستقلاً عن المقياس بتطبيع كل معامل على حدة. LookSAM خفّضت التكلفة الحسابية بتخطّي خطوة الاضطراب بشكل دوري. Fisher SAM استعانت بمصفوفة معلومات فيشر لتوجيه الاضطرابات بشكل أذكى.

والدرس يتجاوز SAM نفسها: الأمثَلة الواعية بهندسة سطح الخسارة أصبحت اليوم ركيزة أساسية لتدريب النماذج الكبيرة التي تحتاج إلى تعميم جيد. مُحسّنات حديثة مثل Lion تستلهم أفكارها من العائلة ذاتها من الرؤى التي ساعدت SAM في ترسيخها.

الخط الزمني: من نظرية الحِدّة إلى SAM وما بعدها

  1. 1997

    فرضية الحدود الدنيا المسطّحة (Hochreiter & Schmidhuber)

    أول حجة نظرية مُنظّمة بأن الحدود الدنيا المسطّحة لخسارة التدريب تُعمّم أفضل من الحادّة. اعتمدت على مقاربة طول الوصف الأدنى لتحويل التسطّح إلى كمية قابلة للقياس.

  2. 2017

    تدريب الدفعات الكبيرة يكشف مشكلة الحِدّة (Keskar et al.)

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

  3. 2018

    تصوير سطح الخسارة بصرياً (Li et al.)

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

  4. 2021

    SAM (Foret et al.) — هذه الورقة

    طرحت مُحسّناً عملياً من نوع minimax يستهدف الحدود الدنيا المسطّحة بشكل مباشر. أثبتت حدّاً نظرياً عبر PAC-Bayes يربط الحِدّة بالتعميم، وحققت نتائج رائدة على عدة معايير قياسية مع متانة طبيعية تجاه ضجيج التسميات.

  5. 2021

    ASAM — حِدّة مستقلة عن المقياس (Kwon et al.)

    لاحظت أن مقياس الحِدّة في SAM يتأثر بحجم المعاملات. طرحت ASAM التي تُطبّع الاضطراب لكل عنصر على حدة، مما حسّن النتائج في المهام التي تتفاوت فيها مقاييس المعاملات بشكل كبير.

  6. 2022

    SAM لمحوّلات الرؤية (Chen et al.)

    أظهرت أن SAM فعّالة بشكل ملحوظ مع محوّلات الرؤية، التي تميل إلى الاستقرار في حدود دنيا حادّة أكثر من الشبكات الالتفافية. بعد هذه الدراسة أصبحت SAM شبه ضرورية لتدريب ViT.

  7. 2023

    مُحسّن Lion والتدريب الواعي بالهندسة

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

المرجعForet, Kleiner, Mobahi, Neyshabur. Sharpness-Aware Minimization for Efficiently Improving Generalization. ICLR, 2021.

مصطلحات هذه الورقة