تخطَّ إلى المحتوى

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