ML 101
M02 · L03
الوحدة 2

ترويض التعقيد

الـ model بتاعك بيناسب بيانات التدريب بالظبط — بس بيقع مع البيانات الجديدة. ده الـ overfitting (الإفراط في التخصيص). والـ regularization (التنظيم) بيزوّد عقوبة عشان الـ weights تفضل صغيرة، وبيبدّل شوية دقة في التدريب بـ generalization أحسن بكتير.

01 / 13
ML 101
M02 · L03
المشكلة

فخ الـ overfitting

polynomial درجته عالية ممكن يعدّي على كل نقطة تدريب — training error صفر. بس بين النقط دي بيتهز بجنون، ويطلّع predictions فظيعة على البيانات الجديدة.

السبب الأساسي
لما الـ weights تكبر، الـ model بيبقى حسّاس زيادة لتغييرات الـ input الصغيرة. والـ regularization بيخلّي الـ weights صغيرة.
02 / 13
ML 101
M02 · L03
الفكرة

عاقب الـ weights الكبيرة

زوّد حد عقوبة على الـ cost function. دلوقتي الـ optimizer لازم يوازن بين إنه يناسب البيانات وإنه يخلّي الـ weights صغيرة. والـ parameter λ بيتحكم في التوازن.

الإحساس بالموضوع
λ صغيرة ← عقوبة ضعيفة (خطر الـ overfitting). λ كبيرة ← عقوبة قوية (خطر التبسيط الزيادة).
03 / 13
ML 101
M02 · L03
عقوبة L2

الـ ridge regression

الـ L2 regularization بيزوّد مجموع مربعات الـ weights على التكلفة. ده الـ ridge regression (انحدار ريدج): بيقلّص كل الـ weights ناحية الصفر — بنعومة وبالتناسب — بس عمره ما بيوصّلها للصفر بالظبط.

تكلفة الـ ridge
J(\mathbf{w}) = \frac{1}{n}\sum_{i=1}^{n}(\hat{y}_i - y_i)^2 + \lambda \sum_{j=1}^{p} w_j^2
04 / 13
ML 101
M02 · L03
الحل المقفول

حل الـ ridge

زي الـ linear regression العادي، الـ ridge ليه حل مقفول. الحد λI بيخلّي الـ matrix دايمًا ينفع تتعكس — حتى لو عدد الـ features أكتر من عدد الـ samples.

الـ normal equation بتاعة ridge
\mathbf{w} = (\mathbf{X}^T \mathbf{X} + \lambda \mathbf{I})^{-1} \mathbf{X}^T \mathbf{y}
05 / 13
ML 101
M02 · L03
عقوبة L1

الـ lasso regression

الـ L1 regularization بيزوّد مجموع القيم المطلقة للـ weights. ده الـ lasso regression (انحدار لاسو)، وقوته الخارقة: بيزق الـ weights اللي مش مهمة للصفر بالظبط — feature selection أوتوماتيك.

تكلفة الـ lasso
J(\mathbf{w}) = \frac{1}{n}\sum_{i=1}^{n}(\hat{y}_i - y_i)^2 + \lambda \sum_{j=1}^{p} |w_j|
06 / 13
ML 101
M02 · L03
الهندسة

الدايرة قصاد الماسة

منطقة قيد الـ L2 دايرة (ناعمة، من غير زوايا). ومنطقة قيد الـ L1 ماسة (زوايا حادة على المحاور). خطوط تساوي الـ loss بتخبط في زوايا الماسة — وهناك واحد من الـ weights بيبقى صفر بالظبط.

L2 (ridge)
بيقلّص الكل
L1 (lasso)
بيصفّر شوية
07 / 13
ML 101
M02 · L03
أحسن ما في الاتنين

الـ elastic net

ليه تختار؟ الـ elastic net (الشبكة المرنة) بتجمع عقوبتي L1 وL2. بتعمل feature selection زي الـ lasso وفي نفس الوقت بتحافظ على استقرار الـ ridge لما الـ features تبقى مترابطة.

الـ elastic net
J(\mathbf{w}) = \text{MSE} + \lambda_1 \sum |w_j| + \lambda_2 \sum w_j^2
08 / 13
ML 101
M02 · L03
الظبط

اختيار λ

صغيرة أوي ← overfitting. كبيرة أوي ← تبسيط زيادة. استخدم الـ cross-validation (التحقق المتقاطع): جرّب مدى من قيم λ، واختار اللي بتدّي أقل validation error.

الاستراتيجية المعتادة
دوّر في λ = 0.001, 0.01, 0.1, 1, 10, 100 على مقياس لوغاريتمي. والـ cross-validation بـ 5 folds هو المعيار.
09 / 13
ML 101
M02 · L03
نظرة أعمق

الـ Bayesian prior

الـ regularization بيساوي إنك تحط اعتقاد مسبق على الـ weights. الـ L2 = Gaussian prior (الـ weights غالبًا قريبة من الصفر). والـ L1 = Laplace prior (الـ weights غالبًا صفر بالظبط). والبيانات بتحدّث الاعتقاد ده. وده الـ prior (التوزيع القبلي).

prior بتاع L2
Gaussian
prior بتاع L1
Laplace
10 / 13
ML 101
M02 · L03
عمليًا

تستخدم إيه إمتى

ابدأ بسيط. ولو حصل overfitting، زوّد regularization:

  • الـ ridge — features كتير، كلها ممكن تبقى مفيدة
  • الـ lasso — شاكك إن features كتير مالهاش علاقة
  • الـ elastic net — features مترابطة + محتاج تناثر
  • دايمًا اعمل scaling للـ features قبل الـ regularization
11 / 13
ML 101
اختبار سريع

شوف إيه اللي ثبت

أربع أسئلة من الدرس ده. جاوب عشان تشوف السبب — الشرح بيظهر سواء جاوبت صح أو غلط. ونتيجتك مش بتتحفظ.

السؤال 1 من 0
النتيجة 0/0

12 / 13
ML 101
الخلاصة
مراجعة

اتعلّمت إيه

الـ regularization بيحارب الـ overfitting بمعاقبة الـ weights الكبيرة. الـ L2 (ridge) بيقلّص كل الـ weights. الـ L1 (lasso) بيصفّر اللي مش مهمة. والـ elastic net بتجمع الاتنين. وλ بتتحكم في القوة.

الوحدة الجاية
13 / 13