Overfitting
فرط التخصيص
التعريف
حالة يحفظ فيها النموذج تفاصيل بيانات التدريب وضوضاءها فيؤدي جيداً عليها ويضعف على بيانات جديدة.
يحدث فرط التخصيص (ويُسمّى أيضاً الإفراط في الملاءمة) عندما تكون سعة النموذج كبيرة مقارنةً بكمية البيانات أو جودتها، فيتعلّم أنماطاً عرضية لا تتكرر خارج عينة التدريب. علامته المعتادة: خطأ تدريب منخفض جداً مع خطأ تحقق (Validation) مرتفع أو آخذ في الارتفاع.
من طرق الحد منه: جمع بيانات أكثر، وزيادة البيانات (Data Augmentation)، والتنظيم (Regularization)، والإسقاط (Dropout)، والإيقاف المبكر (Early Stopping)، وتبسيط النموذج، والتحقق المتقاطع لاختيار المعاملات الفائقة.
Definition
Overfitting occurs when a model fits the training data, including its noise, so closely that it fails to generalise to unseen data; it shows as low training error but high validation or test error.
شرح مبسّط للمبتدئين
طالب يحفظ إجابات أسئلة الكتاب حرفياً دون أن يفهمها، فينجح في الأسئلة نفسها ويرسب إن تغيّرت صياغتها قليلاً.
شرح أكاديمي متخصص
يرتبط فرط التخصيص بالمفاضلة بين الانحياز والتباين (Bias–Variance Trade-off): النموذج عالي السعة منخفض الانحياز لكنه عالي التباين، أي أن تقديراته تتغير كثيراً بتغير عينة التدريب. يقاس التعميم بالفرق بين خطر التدريب التجريبي والخطر المتوقع على التوزيع الحقيقي.
أمثلة عملية
- كثيرة حدود من الدرجة 15 تمر بكل نقاط تدريب قليلة ثم تتذبذب بشدة بينها.
- شجرة قرار بلا حد للعمق تعطي دقة 100% على التدريب و70% على الاختبار.
- شبكة عصبية كبيرة تُدرَّب طويلاً على مئات الصور فقط.
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
X, y = load_breast_cancer(return_X_y=True)
X_tr, X_te, y_tr, y_te = train_test_split(X, y, test_size=0.3, random_state=0)
for depth in [None, 3]:
m = DecisionTreeClassifier(max_depth=depth, random_state=0).fit(X_tr, y_tr)
print(depth, round(m.score(X_tr, y_tr), 3), round(m.score(X_te, y_te), 3))شرح الكود
الشجرة غير المقيّدة تحقق دقة تدريب 1.0، والفجوة بين دقة التدريب والاختبار مؤشر على فرط التخصيص. تقييد العمق يقلّص هذه الفجوة.
النتيجة المتوقعة
None 1.0 0.912 3 0.967 0.947
التطبيقات والاستخدامات
- تشخيص مشكلات التدريب عبر منحنيات التعلم (Learning Curves).
- اختيار تعقيد النموذج والمعاملات الفائقة.
القيود والعيوب
- يصعب اكتشافه دون مجموعة تحقق مستقلة.
- تسرّب البيانات (Data Leakage) قد يخفيه فيبدو النموذج أفضل مما هو عليه.
المعادلات الرياضية
تفكيك الخطأ المتوقع (الانحياز والتباين)
\mathbb{E}\big[(y-\hat f(x))^2\big] = \mathrm{Bias}\big[\hat f(x)\big]^2 + \mathrm{Var}\big[\hat f(x)\big] + \sigma^2الخطأ المتوقع على نقطة جديدة يساوي مربع الانحياز زائد التباين زائد الضوضاء غير القابلة للاختزال. فرط التخصيص يعني تبايناً كبيراً.
| الرمز | المعنى |
|---|---|
| \(\hat f(x)\) | تنبؤ النموذج المدرَّب |
| \(\mathrm{Bias}\) | الفرق بين متوسط التنبؤ والقيمة الحقيقية |
| \(\mathrm{Var}\) | تشتت التنبؤ عند تغيير عينة التدريب |
| \(\sigma^2\) | تباين الضوضاء في البيانات |
المصادر العلمية
مراجع ومصادر علمية
-
مقالةA Few Useful Things to Know About Machine Learning مقالة عن فرط التخصيص وهندسة الخصائص وتعميم النماذج.
-
كتابThe Elements of Statistical Learning (2nd ed.) مرجع إحصائي في التعلم الآلي، متاح مجاناً من موقع المؤلفين.
-
بحث علميDropout: A Simple Way to Prevent Neural Networks from Overfitting تقنية الإسقاط (Dropout) للحد من فرط التخصيص.
