قراية
وضع العروض

الـ simple linear regression

~28 دقيقة قراية الدرس 1 من 4 في الوحدة 7

من النقط المبعترة للخط المستقيم

نادرًا لما البيانات بتترتب لوحدها بشكل مثالي. المشاهدات بتبقى مبعترة على الرسمة، جزء منها بسبب العلاقة اللي تهمّنا وجزء بسبب noise مش في إيدنا. والـ simple linear regression (الانحدار الخطي البسيط) هو الأداة اللي بتشق البعترة دي وتكشف الاتجاه الخطي اللي تحتها — وبتحدّد بدقة نقدر نثق قد إيه في استخدام variable عشان نتنبأ بالتاني.

كلمة “simple” هنا معناها predictor واحد. عندنا input variable واحد X (اسمه كمان الـ independent variable أو الـ predictor) وoutput variable واحد Y (الـ dependent variable أو الـ response). والهدف إننا نلاقي الخط المستقيم اللي بيوصف علاقتهم بأحسن شكل ممكن ونوضّح “الأحسن” معناه إيه بالظبط.

الـ statistical model

الـ simple linear regression بيعمل model لـ Y كدالة خطية في X ومعاها noise عشوائي مفيش منه مهرب:

model الـ simple linear regression
Y = \beta_0 + \beta_1 X + \varepsilon
Y هو الـ dependent variable، وβ₀ هو الـ intercept، وβ₁ هو الـ slope، وX هو الـ predictor، وε هو الـ error term — بنفترض إنه مستقل والـ mean بتاعه صفر والـ variance بتاعه ثابت σ².

الـ parameters β₀ وβ₁ ثابتين بس مش معروفين، وبيوصفوا العلاقة الحقيقية في الـ population. والـ error term ε بيمسك كل حاجة X مش بيفسّرها: خطأ القياس، والـ variables اللي اتسابت، والعشوائية الأصلية. ولأن ε عشوائي، كل مشاهدة من Y عشوائية هي كمان حتى لقيمة ثابتة من X.

الـ model قايم على 4 افتراضات أساسية: (1) العلاقة بين X وY خطية؛ (2) الأخطاء مستقلة عن بعض؛ (3) الـ mean بتاع الأخطاء صفر؛ (4) الـ variance بتاع الأخطاء ثابت σ² (الـ homoscedasticity). وهنرجع لكل افتراض لما نتكلم عن الـ residual analysis.

التقدير بالـ ordinary least squares

بنشوف n زوج بيانات (x₁, y₁)، …، (xₙ, yₙ). ومن البيانات دي عايزين نقدّر β₀ وβ₁. ومبدأ الـ ordinary least squares (المربعات الصغرى العادية) أو OLS بيختار التقديرات β̂₀ وβ̂₁ اللي بتقلّل مجموع مربعات المسافات الرأسية بين النقط اللي شفناها والخط المتظبّط:

هدف الـ OLS
\text{SSR} = \sum_{i=1}^{n}(y_i - \hat{y}_i)^2
SSR = مجموع مربعات الـ residuals (البواقي). كل residual eᵢ = yᵢ − ŷᵢ هو المسافة الرأسية بين القيمة اللي اتشافت والقيمة اللي الخط بيتوقعها عند xᵢ.

فاضل SSR بالنسبة لـ β₀ وβ₁، وساوي المشتقتين بالصفر، هيطلعلك الـ normal equations. وحلّها هو:

الـ OLS estimator للـ slope
\hat{\beta}_1 = \dfrac{\sum_{i=1}^{n}(x_i-\bar{x})(y_i-\bar{y})}{\sum_{i=1}^{n}(x_i-\bar{x})^2}
β̂₁ بيساوي الـ covariance بين X وY مقسوم على الـ variance بتاع X. البسط بيقيس X وY بيتحركوا مع بعض قد إيه؛ والمقام بيظبّطه على قد انتشار X.
الـ OLS estimator للـ intercept
\hat{\beta}_0 = \bar{y} - \hat{\beta}_1\bar{x}
الخط المتظبّط دايمًا بيعدّي على النقطة (x̄, ȳ) — مركز ثقل البيانات. والـ intercept بيتحدد بالقيد ده والـ slope المتقدّر.

تحت الافتراضات الأربعة، الـ OLS estimators هي أحسن linear unbiased estimators (BLUE) حسب الـ Gauss-Markov theorem (مبرهنة غاوس-ماركوف). يعني هي unbiased — بتساوي الـ parameters الحقيقية في المتوسط — والـ variance بتاعها هو الأصغر بين كل الـ linear unbiased estimators.

تفسير الـ coefficients

إنك تفسّر β̂₀ وβ̂₁ بحرص شرط أساسي قبل ما تطلع بأي نتيجة من الـ regression.

الـ slope β̂₁ هو الكمية الأهم. بيقولنا: لكل زيادة بوحدة واحدة في X، القيمة المتوقعة لـ Y بتتغيّر بمقدار β̂₁ وحدة في المتوسط، مع تثبيت كل حاجة تانية. الإشارة بتقول الاتجاه (ارتباط موجب أو سالب)؛ والمقدار بيقول القوة. وخد بالك إن الـ correlation بيحدّد الاتجاه مش السببية — الـ regression coefficients بتوصف ارتباط إحصائي، مش آلية سببية، إلا لو البيانات جاية من randomized experiment.

الـ intercept β̂₀ هو القيمة المتوقعة لـ Y لما X = 0. وده ليه معنى بس لو X = 0 قيمة معقولة جوه مدى البيانات اللي شفناها. لو بتعمل regression للمرتب على سنين الخبرة ومدى بياناتك من 1 لـ 30 سنة، يبقى الـ intercept (المرتب عند صفر سنين) extrapolation برّه المدى، ولازم يتفسّر بحذر شديد أو يتجاهل خالص.

مثال تطبيقي

افترض إننا عملنا regression لسعر البيت (بآلاف الدولارات) على المساحة (بالقدم المربع) وطلعلنا: السعر̂ = 48.3 + 0.124 × المساحة. الـ slope بيقول إن كل قدم مربع زيادة بيزوّد 124 دولار على السعر المتوقع. والـ intercept (48,300 دولار) هو السعر المتوقع لبيت مساحته صفر — extrapolation مالوش معنى، بس لازم رياضيًا عشان يحدد مكان الخط. والخلاصة المفيدة هنا هي الـ slope.

قياس الـ fit: الـ R²

أول ما يبقى معانا الخط المتظبّط، محتاجين نقيس هو بيوصف البيانات كويس قد إيه. والـ coefficient of determination (معامل التحديد) R² بيعمل ده بإنه يقارن التغيّر اللي الـ model بيفسّره بالتغيّر الكلي في Y:

الـ coefficient of determination
R^2 = 1 - \dfrac{\text{SSR}}{\text{SST}} = 1 - \dfrac{\displaystyle\sum_{i=1}^{n}(y_i-\hat{y}_i)^2}{\displaystyle\sum_{i=1}^{n}(y_i-\bar{y})^2}
SST = مجموع المربعات الكلي = ∑(yᵢ − ȳ)². SSR = مجموع مربعات الـ residuals = ∑(yᵢ − ŷᵢ)². الـ R² بين 0 (الخط مش بيفسّر أي حاجة) و1 (fit مثالي). وفي الـ simple linear regression، الـ R² بيساوي مربع معامل ارتباط Pearson r.

R² = 0.75 معناها إن خط الـ regression بيفسّر 75% من تغيّر Y؛ والـ 25% الباقيين X مش بيفسّرهم. والـ R² العالي بيشاور على fit كويس، بس “الكويس” بيختلف من مجال للتاني: R² = 0.3 ممكن يبقى ممتاز للتنبؤ بعائد سهم لوحده، وكارثة للتنبؤ بإنتاج خط مضبوط على tolerances ضيقة.

الـ R² مش بيثبت الخطية

رباعي أنسكومب مجموعة مشهورة من 4 بيانات ليهم تقريبًا نفس الـ R² ونفس الـ slope ونفس الـ intercept — مع إن شكلهم مختلف خالص لما ترسمهم. واحدة خطية تمامًا، وواحدة قطع مكافئ مثالي اتعمله fit بخط مستقيم، وواحدة الـ fit بتاعها مثالي لولا outlier واحد مبوّظه، والرابعة مفيهاش علاقة أصلًا. ارسم بياناتك دايمًا. الـ R² لوحده مش هيقدر يفرّق بين الحالات دي.

الـ residual analysis: التأكد من الافتراضات

صحة الاستدلال بالـ OLS معتمدة على الافتراضات الأربعة. والـ residual analysis — إنك تبص على النمط في eᵢ = yᵢ − ŷᵢ — هو الأداة التشخيصية الأساسية.

الخطية: ارسم الـ residuals قصاد الـ fitted values ŷ أو قصاد X. لو العلاقة خطية فعلًا، الـ residuals المفروض تتبعتر عشوائي حوالين الصفر من غير أي انحناء أو نمط منهجي. أما النمط اللي على شكل حرف U — أو U مقلوبة — فمعناه إن العلاقة الحقيقية مش خطية وإن الـ linear model متحدد غلط.

الـ normality بتاعة الـ residuals: طرق استدلال كتير (الـ confidence intervals، واختبارات t على الـ coefficients) معتمدة على إن الـ residuals توزيعها normal تقريبًا. اتأكد بـ histogram للـ residuals، أو الأحسن بـ QQ plot. النقط اللي ماشية على القطر بتشاور على الـ normality؛ والبعد المنهجي عنه بيشاور على skew أو heavy tails. وخد بالك إن الـ central limit theorem بتدّي شوية حماية لما n تبقى كبيرة، بس البعد الجامد عن الـ normality لسه يقدر يبوّظ الاستدلال في الـ samples الصغيرة.

الـ homoscedasticity (ثبات التباين): انتشار الـ residuals لازم يبقى قريب من بعضه على كل قيم X. على رسمة الـ residuals قصاد الـ fitted values، دوّر على انتشار رأسي ثابت. نمط “المروحة” — اللي الـ residuals فيه بتكبر كل ما ŷ تزيد — بيشاور على heteroscedasticity (عدم تجانس التباين). وده مش بيعمل bias في تقديرات الـ coefficients، بس بيخلّي الـ standard errors مش موثوقة، فبيبوّظ اختبارات الفرضيات والـ confidence intervals.

افتراض الـ homoscedasticity (تجانس التباين)
\text{Var}(\varepsilon_i \mid X = x) = \sigma^2 \quad \forall\, x
الـ variance بتاع ε بيساوي σ² مهما كانت قيمة X. ولو الافتراض ده اتكسر الـ standard errors بتبوظ مع إن تقديرات الـ coefficients بتفضل unbiased.

الاستقلالية: الـ residuals لازم متبقاش مرتبطة ببعض. وأكتر حتة الافتراض ده بيتكسر فيها هي بيانات الـ time series، اللي المشاهدات المتتالية فيها بتشبه بعض (الـ autocorrelation). والـ Durbin-Watson test بيكشف ده، أو إنك ترسم الـ residuals قصاد ترتيب المشاهدات. والأخطاء المرتبطة ببعض بتقلّل عدم اليقين الظاهر وبتطلّع confidence intervals أضيق من الحقيقة.

الـ confidence intervals قصاد الـ prediction intervals

الخط المتظبّط ŷ = β̂₀ + β̂₁x بيدّينا point estimate لقيمة x معيّنة، بس محتاجين كمان فترة تلخّص عدم اليقين. وفيه فترتين مختلفتين لغرضين مختلفين:

الـ confidence interval للـ mean response عند x = x* بتجاوب: “الـ mean الحقيقي لـ Y فين لما X = x*؟” بتمسك عدم اليقين في تقدير β₀ وβ₁، بس مش بتشمل الـ noise العشوائي ε.

الـ prediction interval لمشاهدة جديدة عند x = x* بتجاوب: “لو شفنا نقطة بيانات جديدة عند X = x*، هتقع فين؟” ولازم تحسب حساب عدم اليقين في تقدير الـ mean response والتشتت الزيادة بسبب ε. والـ prediction intervals دايمًا أوسع من الـ confidence intervals ومش بتصغر لصفر حتى مع بيانات لا نهائية، لأن ε مفيش منه مهرب.

الفترتين بيوسعوا كل ما تبعد عن x̄

الفترتين بيبقوا أضيق حاجة عند x = x̄ (متوسط قيم X اللي اتشافت) وبيوسعوا كل ما x* يبعد عن x̄. وده بيعكس إن الـ extrapolation بيزوّد عدم اليقين: تقديرات خط الـ regression بتبقى أقل موثوقية كل ما تبعد عن مركز البيانات. متعملش extrapolation وإنت مغمّض.

اختبار الـ slope: هل X predictor مفيد؟

أهم سؤال استدلالي في الـ simple linear regression هو هل الـ slope مختلف significantly عن الصفر. لو β₁ = 0، يبقى X مش بيدّي أي معلومة خطية عن Y والـ regression مالوش قيمة كـ predictive model.

بنختبر H₀: β₁ = 0 قصاد H₁: β₁ ≠ 0 بإحصاءة t:

الـ t-test للـ slope
t = \dfrac{\hat{\beta}_1}{\text{SE}(\hat{\beta}_1)} \sim t_{n-2} \text{ under } H_0
تحت H₀، الـ t ماشي على t distribution بـ n−2 degrees of freedom. SE(β̂₁) = s/√∑(xᵢ−x̄)², وs = √(SSR/(n−2)) هو الـ residual standard error.

بنرفض H₀ لو |t| > t_{α/2}(n − 2) عند مستوى الـ significance α. والـ F-test المكافئ (اللي بيتعمّم بسهولة للـ multiple regression) بيدّي F = t² وبيطلّع نفس الـ p-value. والـ slope الـ significant معناه إن X predictor خطي مفيد لـ Y — مش إن العلاقة كبيرة أو سببية أو مهمة عمليًا. اربط الاختبار دايمًا بالـ R² وconfidence interval لـ β₁.

الـ confidence interval 95% لـ β₁ هي β̂₁ ± t_{α/2}(n − 2) × SE(β̂₁). ولو الفترة مفيهاش الصفر، ده مكافئ لرفض H₀ عند α = 0.05. بس الفترة بتعمل أكتر من كده: بتحدّد حجم التأثير المعقول بالأرقام، وده غالبًا أنفع من قرار ثنائي برفض أو عدم رفض.

الـ regression قصاد الـ correlation

معامل ارتباط Pearson r والـ slope β̂₁ مرتبطين بـ β̂₁ = r × (sʏ/sₓ)، وsʏ وsₓ هما الـ sample standard deviations لـ Y وX. الاتنين بيختبروا نفس الـ null hypothesis H₀: ρ = 0 وبيطلّعوا نفس الـ p-value. والفرق في التفسير: الـ correlation متماثل (لو بدّلت X وY الـ r مش بيتغيّر)، بينما الـ regression ليه اتجاه (Y معتمد على X) وبيطلّع خط للتنبؤ.

أهم النقط
  • الـ model Y = β₀ + β₁X + ε بيوصف Y كدالة خطية في X مع خطأ عشوائي الـ mean بتاعه صفر والـ variance ثابت.
  • الـ OLS بيقلّل مجموع مربعات الـ residuals عشان يطلّع estimators unbiased وأقل variance β̂₀ وβ̂₁ (الـ Gauss-Markov theorem).
  • الـ slope β̂₁ هو متوسط التغيّر في Y لكل زيادة بوحدة في X. والـ intercept ليه معنى بس لو X = 0 جوه مدى البيانات.
  • الـ R² = 1 − SSR/SST بيقيس نسبة تغيّر Y اللي الـ model بيفسّرها. قيمته بين 0 و1 ولازم يتفسّر في سياق المجال.
  • رسومات الـ residuals بتشخّص كسر الافتراضات: التبعتر العشوائي كويس؛ والأنماط بتشاور على عدم خطية أو heteroscedasticity أو autocorrelation.
  • الـ prediction intervals دايمًا أوسع من الـ confidence intervals عند نفس x* لأنها بتشمل خطأ ε اللي مش بيختفي حتى مع بيانات لا نهائية.
  • اختبار H₀: β₁ = 0 بإحصاءة t بيحدّد هل X predictor خطي مفيد. وقول دايمًا الـ effect size والـ confidence interval جنب الـ p-value.
اللي بعده الـ multiple regression نظرة عامة على الموديول اللي فات الغلطات المشهورة