التعلم العميق / دليل حلول تحريري

حدد الخسارة غير المنتهية والتحديثات المتباعدة

اعثر على أول حساب غير صالح قبل تغيير القص أو الدقة أو معدل التعلم.

وقت القراءة التقريبي: 3 دقيقةتاريخ مراجعة المحتوى

قاعدة معرفة للقراءة فقط · بلا تعليقات عامة

تعرّف على الأعراض

تصبح الخسارة NaN أو لا نهائية، أو يقفز معامل فجأة، أو ينهار التدريب عند دفعة معينة. احفظ أول دفعة فاشلة وحالة المعاملات قبل تحديثها. قد يكون التدرج غير الصالح اللاحق مجرد نتيجة لقيمة أمامية غير صالحة سابقة.

افهم الأسباب المحتملة

  • تشمل الأسباب مدخلات غير منتهية أو مشوهة، وحساب احتمال غير مستقر، وفهارس أهداف خاطئة، ومدخل خسارة غير مناسب، واختزالاً غير مقصود، وخطوات كبيرة قياساً إلى الهدف. يضيف فيضان الدقة المنخفضة وتراكم التدرج الخاطئ حدوداً أخرى؛ ولا يحدد عرض واحد سبباً وحيداً.

1. أعد بناء انتقال حتمي واحد

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

2. افصل الاستقرار الحسابي عن مقياس التدرج

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

python حساب حتمي بالمكتبة القياسية
from math import exp, log, isfinite
logits = [1000.0, 998.0]
maximum = max(logits)
loss = maximum + log(sum(exp(z-maximum) for z in logits)) - logits[0]
residual, feature = -3.0, 100.0
gradient = residual * feature
print("finite stable loss", isfinite(loss))
print(f"loss={loss:.6f}, gradient={gradient:.1f}")
print(f"update at 0.1={-0.1*gradient:.1f}")
الناتج المتوقع
finite stable loss True
loss=0.126928, gradient=-300.0
update at 0.1=30.0

قد تجتمع خسارة مستقرة وتدرج كبير منتهٍ وتحديث كبير؛ وتحتاج كل ملاحظة تشخيصاً مستقلاً.

3. دقق المقامات وترتيب الدقة

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

4. تحقق من الفرضية بمسار مضبوط

ينبغي لإصلاح الأسس غير المستقرة أن يعطي خسارة منتهية مفحوصة مستقلاً للدرجات نفسها. وعند كبر التحديث ثبت المشتقة وقارن مسارات خطوات أصغر مبررة. وعند عيب القناع يجب ألا يغير الحشو الهدف الصالح بعد الإصلاح. غير عاملاً واحداً واحفظ الفشل السابق كاختبار تراجع. أعد العشوائية والدفعات الأكبر تدريجياً بعد نجاح الحالة الصغيرة؛ ولا تستنتج جودة نموذج واقعي من نجاح ملاءمة محلية.

تحقق من نجاح الإصلاح

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

امنع تكرار المشكلة

  • احتفظ بحالات درجات منتهية متطرفة وأعداد صالحة متفاوتة وسياسة الصفر وفحص تحديث حتمي. سجل مقياس الهدف والوحدات والتراكم والدقة والمحسن معاً كي لا يغير تعديل لاحق خط التشخيص بصمت.

المراجع الرسمية