التعلم العميق / أسس الموترات والتعلم / الدرس 5
النزول المتدرج والفحوص العددية
استخدم دالة تربيعية مضبوطة لتمييز صحة المشتقة عن سلوك حجم الخطوة.
في هذه الصفحة
أهداف الدرس
- توقع انكماش الخطأ بعد تحديث عددي.
- مقارنة مشتقة تحليلية بفروق مركزية.
- تفسير مسار التحسين دون قواعد ضبط عامة.
يستخدم المحسن التدرج لاختيار الخطوة
يطرح النزول المتدرج حاصل ضرب معدل التعلم في التدرج من المعامل. للدالة L(w)=(w-3)^2/2 تكون المشتقة w-3، ويصبح الخطأ بعد التحديث (1-eta) مضروباً في الخطأ السابق. يتحقق التقارب هنا عندما 0<eta<2. نتج هذا المجال عن انحناء هذه الدالة البالغ واحداً، وليس توصية عامة للشبكات. يغير تحجيم الهدف أو انحناؤه المجال المستقر. يحول المحسن المشتقات إلى مسار تحديث؛ ولا تضمن صحة التدرج انخفاض الخسارة مع كل خطوة تختارها.
افحص المسار لا نقطة النهاية فقط
يبدأ المثال من الصفر ويطبق أربعة تحديثات بالمعدل 0.5. تنصف كل خطوة المسافة إلى ثلاثة، فتنخفض الخسارة وفق حساب متوقع. عند المعدل اثنين يتناوب المعامل بين نقطتين متساويتَي البعد، وعند قيمة أكبر يتضخم الخطأ. قد تتباين انحناءات الأهداف الفعلية بين الاتجاهات مع ضجيج الدفعات واللا تحدب. سجل تعريف الهدف ورقم الخطوة ومعدل التعلم وتغيرات الاختزال. قارن المسارات قبل عزو البطء إلى المقياس أو المشتقة أو جدول تعلم غير ملائم.
w = 0.0
for step in range(1, 5):
gradient = w - 3.0
w -= 0.5 * gradient
loss = 0.5 * (w - 3.0)**2
print(f"{step}: w={w:.4f}, loss={loss:.6f}")
1: w=1.5000, loss=1.125000
2: w=2.2500, loss=0.281250
3: w=2.6250, loss=0.070312
4: w=2.8125, loss=0.017578
تسمح الدالة الحتمية بتحليل انكماش دقيق؛ وتقاس الخسارة بعد كل تحديث.
التفاضل العددي فحص مستقل
يقرب الفرق المركزي المشتقة بتقييم f(w+h) وf(w-h) ثم قسمة الفرق على 2h. يفحص الحساب الأمامي كله بصورة مستقلة عن صيغة المشتقة في هدف صغير أملس وحتمي. يقارنه المثال بالمشتقة المعروفة عند w=1. تكلف الفروق العددية كثيراً عند كثرة المعاملات، ولا تمثل طريقة تدريب التفاضل العكسي المعتادة. اختر نقطة بعيدة عن انكسارات التنشيط، وعطل التحويلات العشوائية، واستخدم دقة مناسبة وسماحية مطلقة ونسبية معلنة بدلاً من مساواة عددية تامة.
def loss(w):
return 0.5 * (w - 3.0)**2
w, h = 1.0, 1e-5
finite_difference = (loss(w+h) - loss(w-h)) / (2*h)
analytic = w - 3.0
print(f"analytic={analytic:.6f}")
print(f"central={finite_difference:.6f}")
print(abs(analytic - finite_difference) < 1e-8)
analytic=-2.000000
central=-2.000000
True
تتحقق السماحية من المثال الأملس دون ادعاء مساواة تامة في التمثيل الثنائي.
اختر مقياس اضطراب مفيداً
يقيس الاضطراب الكبير انحناء غير محلي بدلاً من المشتقة المحلية، بينما يطرح الاضطراب الصغير جداً قيمتين متقاربتين فيضخم فقدان الدقة. لا توجد خطوة مثلى لكل نوع عددي ومقياس معامل وهدف. افحص خطوات متجاورة على إحداثيات ممثلة، وقيمتَي الخسارة عند الفشل. قد يختلف الفرق المتماثل عند نقطة غير قابلة للتفاضل عن اصطلاح المشتقة الجزئية في الإطار دون وجود عيب تنفيذي. افصل هذه الحالات الرياضية عن انقطاع المسار أو ضياع إسهام فرع قبل تعديل النموذج.
حالة التحديث جزء من التجربة
تضيف طرق الزخم والتحسين التكيفي حالة إلى المعاملات؛ لذلك قد يغير استرجاع الأوزان وحدها المسار. تعتمد قابلية الإعادة أيضاً على ترتيب العينات والعمليات العشوائية والدقة والبرمجيات. احتفظ بخط أساس حتمي صغير قبل إدخال هذه العوامل. راقب حجم تحديث المعامل قياساً إلى حجمه، ومنتهية التدرجات، ومقياس التحقق المطلوب. قد يكون خفض معدل التعلم تجربة مفيدة عند التباعد، لكنه لا يصلح وسوماً متبادلة أو خسارة خاطئة. غير عاملاً واحداً استناداً إلى فرضية واحفظ الدليل الذي دفعك للتغيير.
الأخطاء الشائعة وإصلاحها
تزداد الخسارة رغم صحة المشتقة
- لماذا يحدث؟
- الخطوة كبيرة بالنسبة إلى الانحناء المحلي أو تغير الهدف.
- كيف تصلحه؟
- أعد مساراً حتمياً واختبر خطوة أصغر مبررة.
- كيف تتجنب تكراره؟
- سجل مقياس الهدف وخسارته بعد التحديث.
يفشل فحص التدرج عند حد ReLU فقط
- لماذا يحدث؟
- النقطة غير قابلة للتفاضل بالمعنى المعتاد.
- كيف تصلحه؟
- افحص نقطة ملساء مجاورة ووثق الاصطلاح المختار.
- كيف تتجنب تكراره؟
- اختبر النقاط الملساء والانكسارات بتوقعات مختلفة.
يختلف التحديث التالي بعد الاستئناف
- لماذا يحدث؟
- لم تُسترجع حالة المحسن أو ترتيب العينات.
- كيف تصلحه؟
- استرجع الحالة اللازمة وموضع قراءة المدخلات.
- كيف تتجنب تكراره؟
- عرّف تكافؤ الاستئناف وافحص التحديث التالي.
اختبر فهمك
1. ماذا يحدث للدالة المذكورة عند eta=1 وعند eta=2؟
اعرض الحل المشروح
عند الواحد يصبح معامل الخطأ صفراً فينتقل المعامل إلى ثلاثة مباشرة في الحساب الحقيقي. عند الاثنين يصبح معامل الخطأ سالب واحد فيتناوب الخطأ غير الصفري دون انكماش. تعتمد النتيجة على هذا الهدف ولا تنتقل كما هي إلى انحناءات أخرى.
2. لماذا قد يسوء فحص المشتقة عند جعل h أصغر بكثير من 1e-5؟
اعرض الحل المشروح
افحص فقدان الدقة عند طرح قيمتَي الخسارة ونوع الأعداد ومقياس المعامل. كرر مجموعة صغيرة من قيم h عند نقطة ملساء وحتمية. لا تفترض أن الاضطراب الأصغر أدق دائماً، ولا تعدل المشتقة التحليلية لمجرد مطابقة ضجيج عددي.
أهم ما تعلمته
- معنى معدل التعلم مرتبط بانحناء الهدف ومقياسه.
- تفحص الفروق العددية حسابات ملساء وحتمية.
- حالة المحسن جزء من مسار التحديث القابل للإعادة.