Bias-Variance Tradeoff
مقايضة الانحياز والتباين (Bias-Variance) Bias-Variance Tradeoff
تحت شروط معيّنة (الانحدار الموجه، squared loss) يمكن تفكيك خطأ التعميم المتوقّع إلى Bias² + Variance + Noise. الانحياز من البساطة المفرطة، والتباين من الحساسية المفرطة لبيانات التدريب.
التفكيك الكلاسيكي Bias² + Variance + Noise يطبّق على خطأ التعميم **المتوقّع بمقياس المربعات (MSE)** في إطار التعلّم الموجه للانحدار، تحت افتراضات إحصائية معيّنة (مثلاً: y = f(X) + ε). لا يصف هذا التفكيك "خطأ أي نموذج" عمومًا — مقاييس خسارة أخرى (0/1، cross-entropy، أو أطر مثل unbounded أو non-i.i.d. data) لا تتفكّك بالضرورة بنفس الطريقة.
الانحياز (Bias): الخطأ المنهجي من افتراضات النموذج المبسّطة — يسبّب underfitting حين لا يلتقط النموذج الأنماط الحقيقية. التباين (Variance): الحساسية لتغيّر بيانات التدريب — يسبّب overfitting حين يتعلّم النموذج ضوضاء عيّنة التدريب بدل أنماطها العامة. الضوضاء (Noise): جزء من الخطأ لا يمكن لأي نموذج إزالته لأنه موجود في التسمية نفسها.
نموذج بسيط (انحدار خطي على بيانات غير خطية) = انحياز عالٍ وتباين منخفض. نموذج معقّد جدًا (شجرة قرار بعمق غير محدود) = انحياز منخفض وتباين عالٍ. عمليًا: أضف تعقيدًا تدريجيًا وراقب خطأ التحقق (وليس خطأ التدريب). حين يبدأ خطأ التحقق بالارتفاع مع زيادة التعقيد، وصلت لمنطقة فرط التعلّم.
الصياغة
Expected MSE = Bias² + Variance + Noise (تحت افتراضات: انحدار موجّه، squared loss، i.i.d.) • Bias عالٍ + Variance منخفض = underfitting • Bias منخفض + Variance عالٍ = overfitting • الحل الأمثل = أقل مجموع ممكن
📄 مثال
from sklearn.preprocessing import PolynomialFeatures
from sklearn.linear_model import LinearRegression
from sklearn.pipeline import make_pipeline
from sklearn.model_selection import cross_val_score
# تعقيد متغير: درجة متعددة الحدود
for degree in [1, 3, 15]:
model = make_pipeline(PolynomialFeatures(degree), LinearRegression())
score = cross_val_score(model, X, y, cv=5).mean()
print(f"الدرجة {degree:2d} → متوسط R²: {score:.3f}")
# الدرجة المنخفضة = انحياز عالٍ
# الدرجة العالية جدًا = تباين عالٍ وفرط تعلّمأهم النقاط
| النقطة | الوظيفة |
|---|---|
| Bias | خطأ افتراضات النموذج — كلما زاد، ابتعدنا عن الحقيقة |
| Variance | حساسية النموذج لتغيّر بيانات التدريب — كلما زاد، تذبذب أكثر |
| Noise (Irreducible) | جزء من الخطأ لا يمكن لأي نموذج إزالته |
| Sweet Spot | نقطة التوازن حيث مجموع Bias² + Variance أقل ما يمكن |
💡 نصائح عملية
- حين ترى خطأ تدريب منخفضًا وخطأ تحقق عاليًا، التباين هو المشكلة — الحل: جمع بيانات أو تبسيط النموذج
- حين يكون خطأ التدريب والاختبار كلاهما عاليًا، الانحياز هو المشكلة — الحل: نموذج أعقد أو ميزات أفضل
⚠️ أخطاء شائعة
- الخلط بين "نموذج معقّد" و"نموذج جيد" — في بيانات قليلة، المعقّد أكثر عرضة للتباين العالي
- تطبيق صيغة Bias² + Variance + Noise على مقاييس خسارة غير تربيعية أو خارج الانحدار الموجه — لا تنطبق بالضرورة
خصائص ذات صلة
🎓 تريد فهم الصورة الكاملة خطوة بخطوة؟ ابدأ من مسار AI-ML الكامل بالعربي.
📚 للتعمق التقني الكامل بالإنجليزية: scikit-learn Documentation