الانحدار الخطي التدريجي والمتعدد [مثال خطوة بخطوة]

الانحدار الخطي البسيط في R

يجيب الانحدار الخطي على سؤال بسيط: هل يمكنك قياس العلاقة الدقيقة بين متغيرات مستهدفة واحدة ومجموعة من المتنبئين؟

أبسط نموذج احتمالي هو نموذج الخط المستقيم:

الانحدار الخطي البسيط في R

أين

  • ص = المتغير التابع
  • س = متغير مستقل
  • الانحدار الخطي البسيط في R = مكون الخطأ العشوائي
  • الانحدار الخطي البسيط في R = اعتراض
  • الانحدار الخطي البسيط في R = معامل س

خذ بعين الاعتبار الرسم البياني التالي:

الانحدار الخطي البسيط في R

المعادلة الانحدار الخطي البسيط في R هو الاعتراض. إذا كانت x تساوي 0، فإن y ستكون مساوية للتقاطع، 4.77. هو ميل الخط. إنه يخبرنا بأي نسبة تتغير y عندما يتغير x.

لتقدير القيم المثلى ل الانحدار الخطي البسيط في R و الانحدار الخطي البسيط في R، يمكنك استخدام طريقة تسمى المربعات الصغرى العادية (OLS). تحاول هذه الطريقة العثور على المعلمات التي تقلل مجموع الأخطاء المربعة، وهي المسافة العمودية بين قيم y المتوقعة وقيم y الفعلية. ويعرف الفرق باسم مصطلح خطأ.

قبل تقدير النموذج، يمكنك تحديد ما إذا كانت العلاقة الخطية بين y وx معقولة من خلال رسم مخطط التشتت.

مبعثر

سوف نستخدم مجموعة بيانات بسيطة للغاية لشرح مفهوم الانحدار الخطي البسيط. سوف نقوم باستيراد متوسط ​​الارتفاعات والأوزان للمرأة الأمريكية. تحتوي مجموعة البيانات على 15 ملاحظة. تريد قياس ما إذا كانت الارتفاعات مرتبطة بشكل إيجابي بالأوزان.

library(ggplot2)
path <- 'https://raw.githubusercontent.com/guru99-edu/R-Programming/master/women.csv'
df <-read.csv(path)
ggplot(df,aes(x=height, y =  weight))+
geom_point()

الإخراج:

مبعثر

يشير مخطط التشتت إلى وجود ميل عام لـ y للزيادة مع زيادة x. في الخطوة التالية، سوف تقوم بقياس مقدار الزيادات لكل إضافة إضافية.

تقديرات المربعات الصغرى

في انحدار OLS البسيط، يتم حساب تقديرات المربعات الصغرى و تقديرات المربعات الصغرى هو واضح ومباشر. الهدف ليس إظهار الاشتقاق في هذا البرنامج التعليمي. سوف تكتب الصيغة فقط.

تريد تقدير: تقديرات المربعات الصغرى

الهدف من الانحدار المربعات الصغرى العادية هو تقليل المعادلة التالية:

تقديرات المربعات الصغرى

أين

تقديرات المربعات الصغرى هي القيمة الفعلية و تقديرات المربعات الصغرى هي القيمة المتوقعة.

الحل ل تقديرات المربعات الصغرى is تقديرات المربعات الصغرى

نلاحظ أن تقديرات المربعات الصغرى يعني متوسط ​​قيمة x

الحل ل تقديرات المربعات الصغرى is تقديرات المربعات الصغرى

في لغة R، يمكنك استخدام الدالة cov() وvar() للتقدير تقديرات المربعات الصغرى ويمكنك استخدام الدالة mean() للتقدير تقديرات المربعات الصغرى

beta <- cov(df$height, df$weight) / var (df$height)
beta

الإخراج:

##[1] 3.45
alpha <- mean(df$weight) - beta * mean(df$height)
alpha

الإخراج:

## [1] -87.51667

يشير معامل بيتا إلى أنه مقابل كل ارتفاع إضافي، يزيد الوزن بمقدار 3.45.

تقدير المعادلة الخطية البسيطة يدويًا ليس مثاليًا. R يوفر وظيفة مناسبة لتقدير هذه المعلمات. سترى هذه الوظيفة قريبًا. قبل ذلك، سوف نقدم كيفية حساب نموذج الانحدار الخطي البسيط يدويًا. في رحلتك كعالم بيانات، بالكاد ستقدر نموذجًا خطيًا بسيطًا أو لن تتمكن أبدًا من تقديره. في معظم الحالات، يتم تنفيذ مهام الانحدار على الكثير من المقدرين.

الانحدار الخطي المتعدد في R

تستخدم التطبيقات الأكثر عملية لتحليل الانحدار نماذج أكثر تعقيدًا من نموذج الخط المستقيم البسيط. يسمى النموذج الاحتمالي الذي يتضمن أكثر من متغير مستقل نماذج الانحدار المتعددة. والشكل العام لهذا النموذج هو:

الانحدار الخطي المتعدد في R

في تدوين المصفوفة، يمكنك إعادة كتابة النموذج:

  • الانحدار الخطي المتعدد في R

المتغير التابع y أصبح الآن دالة للمتغيرات المستقلة k. قيمة المعامل الانحدار الخطي المتعدد في R يحدد مساهمة المتغير المستقل الانحدار الخطي المتعدد في R و الانحدار الخطي المتعدد في R.

نقدم بإيجاز الافتراض الذي قمنا به حول الخطأ العشوائي الانحدار الخطي المتعدد في R من عملية شريان الحياة:

  • يعني يساوي 0
  • التباين يساوي الانحدار الخطي المتعدد في R
  • التوزيع الطبيعي
  • الأخطاء العشوائية مستقلة (بالمعنى الاحتمالي)

تحتاج إلى حل ل الانحدار الخطي المتعدد في R، متجه معاملات الانحدار التي تقلل مجموع الأخطاء المربعة بين قيم y المتوقعة والفعلية.

الحل ذو الشكل المغلق هو :

الانحدار الخطي المتعدد في R

مع:

  • يشير إلى تبديل موضع من المصفوفة X
  • الانحدار الخطي المتعدد في R يشير إلى مصفوفة عكسية

نحن نستخدم مجموعة بيانات mtcars. أنت بالفعل على دراية بمجموعة البيانات. هدفنا هو التنبؤ بالميل لكل جالون عبر مجموعة من الميزات.

المتغيرات المستمرة في R

في الوقت الحالي، ستستخدم فقط المتغيرات المستمرة وتضع جانبًا الميزات التصنيفية. المتغير am هو متغير ثنائي يأخذ القيمة 1 إذا كان ناقل الحركة يدويًا و0 للسيارات الأوتوماتيكية؛ vs هو أيضًا متغير ثنائي.

library(dplyr)
df <- mtcars % > %
select(-c(am, vs, cyl, gear, carb))
glimpse(df)

الإخراج:

## Observations: 32
## Variables: 6
## $ mpg  <dbl> 21.0, 21.0, 22.8, 21.4, 18.7, 18.1, 14.3, 24.4, 22.8, 19....
## $ disp <dbl> 160.0, 160.0, 108.0, 258.0, 360.0, 225.0, 360.0, 146.7, 1...
## $ hp   <dbl> 110, 110, 93, 110, 175, 105, 245, 62, 95, 123, 123, 180, ...
## $ drat <dbl> 3.90, 3.90, 3.85, 3.08, 3.15, 2.76, 3.21, 3.69, 3.92, 3.9...
## $ wt   <dbl> 2.620, 2.875, 2.320, 3.215, 3.440, 3.460, 3.570, 3.190, 3...
## $ qsec <dbl> 16.46, 17.02, 18.61, 19.44, 17.02, 20.22, 15.84, 20.00, 2...

يمكنك استخدام الدالة lm() لحساب المعلمات. بناء الجملة الأساسي لهذه الوظيفة هو:

lm(formula, data, subset)
Arguments:
	-formula: The equation you want to estimate	
	-data: The dataset used
	-subset: Estimate the model on a subset of the dataset

تذكر أن المعادلة هي من النموذج التالي

المتغيرات المستمرة في R

في R

  • يتم استبدال الرمز = بـ ~
  • يتم استبدال كل x باسم المتغير
  • إذا كنت تريد إسقاط الثابت، أضف -1 في نهاية الصيغة

على سبيل المثال:

تريد تقدير وزن الأفراد بناءً على طولهم وإيراداتهم. المعادلة هي

المتغيرات المستمرة في R

المعادلة في R مكتوبة على النحو التالي:

y ~ X1+ X2+…+Xn # مع التقاطع

لذلك بالنسبة لمثالنا:

  • الوزن ~ الطول + الإيرادات

هدفك هو تقدير الميل لكل جالون بناءً على مجموعة من المتغيرات. المعادلة المراد تقديرها هي:

المتغيرات المستمرة في R

سوف تقوم بتقدير الانحدار الخطي الأول الخاص بك وتخزين النتيجة في الكائن المناسب.

model <- mpg~.disp + hp + drat + wt
fit <- lm(model, df)
fit

شرح الكود

  • الموديل <- ميلا في الغالون ~. disp + hp + drat+ wt: قم بتخزين النموذج لتقديره
  • lm(model, df): قم بتقدير النموذج باستخدام إطار البيانات df
## 
## Call:
## lm(formula = model, data = df)
## 
## Coefficients:
## (Intercept)         disp           hp         drat           wt  
##    16.53357      0.00872     -0.02060      2.01577     -4.38546  
##        qsec  
##     0.64015	

لا يوفر الناتج معلومات كافية حول جودة الملاءمة. يمكنك الوصول إلى مزيد من التفاصيل مثل أهمية المعاملات ودرجة الحرية وشكل المتبقيات باستخدام دالة summary().

summary(fit)

الإخراج:

## return the p-value and coefficient
## 
## Call:
## lm(formula = model, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3.5404 -1.6701 -0.4264  1.1320  5.4996 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)   
## (Intercept) 16.53357   10.96423   1.508  0.14362   
## disp         0.00872    0.01119   0.779  0.44281   
## hp          -0.02060    0.01528  -1.348  0.18936   
## drat         2.01578    1.30946   1.539  0.13579   
## wt          -4.38546    1.24343  -3.527  0.00158 **
## qsec         0.64015    0.45934   1.394  0.17523   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.558 on 26 degrees of freedom
## Multiple R-squared:  0.8489, Adjusted R-squared:  0.8199 
## F-statistic: 29.22 on 5 and 26 DF, p-value: 6.892e-10

الاستدلال من إخراج الجدول أعلاه

  • يثبت الجدول أعلاه وجود علاقة سلبية قوية بين الوزن والمسافة المقطوعة وعلاقة إيجابية مع الدرات.
  • فقط المتغير بالوزن له تأثير إحصائي على ميلا في الغالون. تذكر، لاختبار الفرضية في الإحصائية، نستخدم:
    • H0: لا يوجد تأثير إحصائي
    • H3: المتنبئ له تأثير ملموس على y
    • إذا كانت قيمة p أقل من 0.05، فهذا يشير إلى أن المتغير ذو دلالة إحصائية
  • R-squared المعدل: التباين الموضح بالنموذج. في النموذج الخاص بك، أوضح النموذج 82 بالمائة من تباين y. يقع مربع R دائمًا بين 0 و1. وكلما ارتفع كلما كان ذلك أفضل

يمكنك تشغيل ANOVA اختبار لتقدير تأثير كل ميزة على التباينات باستخدام دالة Anova().

anova(fit)

الإخراج:

## Analysis of Variance Table
## 
## Response: mpg
##           Df Sum Sq Mean Sq  F value   Pr(>F)    
## disp       1 808.89  808.89 123.6185 2.23e-11 ***
## hp         1  33.67   33.67   5.1449 0.031854 *  
## drat       1  30.15   30.15   4.6073 0.041340 *  
## wt         1  70.51   70.51  10.7754 0.002933 ** 
## qsec       1  12.71   12.71   1.9422 0.175233    
## Residuals 26 170.13    6.54                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1	

الطريقة الأكثر تقليدية لتقدير أداء النموذج هي عرض المتبقي مقابل مقاييس مختلفة.

يمكنك استخدام الدالة مؤامرة () لإظهار أربعة رسوم بيانية:

- القيم المتبقية مقابل القيم المجهزة

- مؤامرة QQ العادية: الربع النظري مقابل المخلفات الموحدة

- موقع المقياس: القيم المجهزة مقابل الجذور التربيعية للبقايا الموحدة

- المخلفات مقابل الرافعة المالية: الرافعة المالية مقابل المخلفات الموحدة

يمكنك إضافة الكود par(mfrow=c(2,2)) قبل المؤامرة(fit). إذا لم تقم بإضافة هذا السطر من التعليمات البرمجية، فسيطالبك R بالضغط على أمر الإدخال لعرض الرسم البياني التالي.

par(mfrow=(2,2))

شرح الكود

  • (mfrow=c(2,2)): قم بإرجاع نافذة بها الرسوم البيانية الأربعة جنبًا إلى جنب.
  • يضيف أول 2 عدد الصفوف
  • ويضيف الثاني 2 عدد الأعمدة.
  • إذا كتبت (mfrow=c(3,2)): ستنشئ نافذة مكونة من 3 صفوف و2 عمود
plot(fit)

الإخراج:

المتغيرات المستمرة في R

تقوم الصيغة lm() بإرجاع قائمة تحتوي على الكثير من المعلومات المفيدة. يمكنك الوصول إليها باستخدام الكائن المناسب الذي قمت بإنشائه، متبوعًا بعلامة $ والمعلومات التي تريد استخراجها.

- المعاملات: `معاملات $fit`

- المخلفات: `صالح $ المخلفات`

– القيمة المجهزة: `fit$fitted.values`

عوامل الانحدار في R

في تقدير النموذج الأخير، يمكنك التراجع عن ميل لكل جالون على المتغيرات المستمرة فقط. من السهل إضافة متغيرات العوامل إلى النموذج. يمكنك إضافة المتغير am إلى النموذج الخاص بك. ومن المهم التأكد من أن المتغير هو مستوى عامل وليس مستمرا.

df <- mtcars % > %
mutate(cyl = factor(cyl),
    vs = factor(vs),
    am = factor(am),
    gear = factor(gear),
    carb = factor(carb))
summary(lm(model, df))

الإخراج:

## 
## Call:
## lm(formula = model, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3.5087 -1.3584 -0.0948  0.7745  4.6251 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)  
## (Intercept) 23.87913   20.06582   1.190   0.2525  
## cyl6        -2.64870    3.04089  -0.871   0.3975  
## cyl8        -0.33616    7.15954  -0.047   0.9632  
## disp         0.03555    0.03190   1.114   0.2827  
## hp          -0.07051    0.03943  -1.788   0.0939 .
## drat         1.18283    2.48348   0.476   0.6407  
## wt          -4.52978    2.53875  -1.784   0.0946 .
## qsec         0.36784    0.93540   0.393   0.6997  
## vs1          1.93085    2.87126   0.672   0.5115  
## am1          1.21212    3.21355   0.377   0.7113  
## gear4        1.11435    3.79952   0.293   0.7733  
## gear5        2.52840    3.73636   0.677   0.5089  
## carb2       -0.97935    2.31797  -0.423   0.6787  
## carb3        2.99964    4.29355   0.699   0.4955  
## carb4        1.09142    4.44962   0.245   0.8096  
## carb6        4.47757    6.38406   0.701   0.4938  
## carb8        7.25041    8.36057   0.867   0.3995  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.833 on 15 degrees of freedom
## Multiple R-squared:  0.8931, Adjusted R-squared:  0.779 
## F-statistic:  7.83 on 16 and 15 DF,  p-value: 0.000124

يستخدم R مستوى العامل الأول كمجموعة أساسية. تحتاج إلى مقارنة معاملات المجموعة الأخرى بالمجموعة الأساسية.

الانحدار الخطي التدريجي في R

الجزء الأخير من هذا البرنامج التعليمي يتناول الانحدار التدريجي الغرض من هذه الخوارزمية هو إضافة وإزالة المرشحين المحتملين في النماذج والاحتفاظ بالمرشحين الذين لديهم تأثير كبير على المتغير التابع. تكون هذه الخوارزمية مفيدة عندما تحتوي مجموعة البيانات على قائمة كبيرة من المتنبئين. لست بحاجة إلى إضافة وإزالة المتغيرات المستقلة يدويًا. تم بناء الانحدار التدريجي لاختيار أفضل المرشحين لتناسب النموذج.

دعونا نرى في العمل كيف يعمل. يمكنك استخدام مجموعة بيانات mtcars مع المتغيرات المستمرة فقط للتوضيح التربوي. قبل البدء في التحليل، من الجيد تحديد الاختلافات بين البيانات باستخدام مصفوفة الارتباط. مكتبة GGally هي امتداد لـ ggplot2.

تتضمن المكتبة وظائف مختلفة لإظهار إحصائيات ملخصة مثل الارتباط والتوزيع لجميع المتغيرات في المصفوفة. سوف نستخدم الدالة ggscatmat، ولكن يمكنك الرجوع إلى المقالة القصيرة لمزيد من المعلومات حول مكتبة GGally.

بناء الجملة الأساسي لـ ggscatmat() هو:

ggscatmat(df, columns = 1:ncol(df), corMethod = "pearson")
arguments:
-df:  A matrix of continuous variables
-columns: Pick up the columns to use in the function. By default, all columns are used
-corMethod: Define the function to compute the correlation between variable. By default, the algorithm uses the Pearson formula

يمكنك عرض الارتباط لجميع متغيراتك وتحديد أي منها سيكون المرشح الأفضل للخطوة الأولى من الانحدار التدريجي. هناك بعض الارتباطات القوية بين متغيراتك والمتغير التابع، ميلا في الجالون.

library(GGally)
df <- mtcars % > %
	select(-c(am, vs, cyl, gear, carb))
ggscatmat(df, columns = 1: ncol(df))

الإخراج:

الانحدار الخطي التدريجي في R

مثال على الانحدار التدريجي خطوة بخطوة

يعد اختيار المتغيرات جزءًا مهمًا لملاءمة النموذج. سيقوم الانحدار التدريجي بإجراء عملية البحث تلقائيًا. لتقدير عدد الخيارات الممكنة في مجموعة البيانات، يمكنك حساب مثال على الانحدار التدريجي خطوة بخطوة مع k هو عدد المتنبئين. يزداد حجم الاحتمالات بزيادة عدد المتغيرات المستقلة. لهذا السبب يجب أن يكون لديك بحث تلقائي.

تحتاج إلى تثبيت حزمة olsrr من CRAN. الحزمة غير متوفرة بعد في اناكوندا. ومن ثم، يمكنك تثبيته مباشرة من سطر الأوامر:

install.packages("olsrr")

يمكنك رسم جميع المجموعات الفرعية من الاحتمالات باستخدام معايير الملاءمة (أي R-square، وR-square المعدلة، والمعايير البايزية). سيكون النموذج ذو أدنى معايير AIC هو النموذج النهائي.

library(olsrr)
model <- mpg~.
fit <- lm(model, df)
test <- ols_all_subset(fit)
plot(test)

شرح الكود

  • ميلا في الغالون ~.: بناء النموذج للتقدير
  • lm(نموذج، مدافع): قم بتشغيل نموذج OLS
  • ols_all_subset(مناسب): أنشئ الرسوم البيانية بالمعلومات الإحصائية ذات الصلة
  • مؤامرة (اختبار): ارسم الرسوم البيانية

الإخراج:

مثال على الانحدار التدريجي خطوة بخطوة

تستخدم نماذج الانحدار الخطي اختبار تي لتقدير التأثير الإحصائي لمتغير مستقل على المتغير التابع. حدد الباحثون الحد الأقصى عند 10 بالمائة، حيث تشير القيم المنخفضة إلى ارتباط إحصائي أقوى. تم بناء استراتيجية الانحدار التدريجي حول هذا الاختبار لإضافة وإزالة المرشحين المحتملين. تعمل الخوارزمية على النحو التالي:

الانحدار الخطي التدريجي في R
الانحدار الخطي التدريجي في R
  • الخطوة الأولى:: تراجع كل متنبئ على y بشكل منفصل. وهي التراجع x_1 على y، x_2 على y إلى x_n. قم بتخزين ف قيمة واحتفظ بالتراجع بقيمة p أقل من العتبة المحددة (0.1 افتراضيًا). سيتم إضافة المتنبئين ذوي الأهمية الأقل من العتبة إلى النموذج النهائي. إذا لم يكن هناك متغير له قيمة p أقل من عتبة الإدخال، فستتوقف الخوارزمية، ويكون لديك النموذج النهائي الخاص بك مع ثابت فقط.
  • الخطوة الأولى::استخدم المتنبئ ذو أقل قيمة p وأضف متغيرًا واحدًا بشكل منفصل. يمكنك إرجاع ثابت وأفضل متنبئ للخطوة الأولى ومتغير ثالث. أضف إلى النموذج التدريجي المتنبئين الجدد بقيمة أقل من عتبة الدخول. إذا لم يكن لأي متغير قيمة p أقل من 0.1، فإن الخوارزمية تتوقف، ولديك النموذج النهائي بمتنبئ واحد فقط. يمكنك إرجاع النموذج التدريجي للتحقق من أهمية أفضل المتنبئين للخطوة الأولى. إذا كان أعلى من عتبة الإزالة، فاحتفظ به في النموذج التدريجي. وإلا، فاستبعده.
  • الخطوة الأولى::يمكنك تكرار الخطوة 2 على أفضل نموذج تدريجي جديد. تضيف الخوارزمية المتنبئين إلى النموذج التدريجي بناءً على القيم المدخلة وتستبعد المتنبئ من النموذج التدريجي إذا لم يلبي حد الاستبعاد.
  • تستمر الخوارزمية في العمل حتى لا يمكن إضافة أو استبعاد أي متغير.

بإمكانك تنفيذ الخوارزمية باستخدام الدالة ols_stepwise() من حزمة olsrr.

ols_stepwise(fit, pent = 0.1, prem = 0.3, details = FALSE)

arguments:
-fit:  Model to fit. Need to use `lm()`before to run `ols_stepwise()
-pent: Threshold of the p-value used to enter a variable into the stepwise model. By default, 0.1
-prem: Threshold of the p-value used to exclude a variable into the stepwise model. By default, 0.3
-details: Print the details of each step

وقبل ذلك نعرض لكم خطوات الخوارزمية. وفيما يلي جدول بالمتغيرات التابعة والمستقلة:

المتغير التابع المتغيرات المستقلة
ميلا في الغالون يمكن التخلص
hp
درات
wt
com.qsec

إبدأ

في البداية، تبدأ الخوارزمية بتشغيل النموذج على كل متغير مستقل على حدة. ويبين الجدول القيمة p لكل نموذج.

## [[1]]
##  (Intercept)         disp 
## 3.576586e-21 9.380327e-10 
## 
## [[2]]
##  (Intercept)           hp 
## 6.642736e-18 1.787835e-07 
## 
## [[3]]
##  (Intercept)         drat 
## 0.1796390847 0.0000177624 
## 
## [[4]]
##  (Intercept)           wt 
## 8.241799e-19 1.293959e-10 
## 
## [[5]
## (Intercept)        qsec 
##  0.61385436  0.01708199

للدخول إلى النموذج، تحافظ الخوارزمية على المتغير ذي القيمة p الأدنى. من الناتج أعلاه، هو بالوزن

خطوة 1

في الخطوة الأولى، تقوم الخوارزمية بتشغيل ميلا في الغالون على الوزن والمتغيرات الأخرى بشكل مستقل.

## [[1]]
##  (Intercept)           wt         disp
## 4.910746e-16 7.430725e-03 6.361981e-02 
## 
## [[2]]
##  (Intercept)           wt           hp 
## 2.565459e-20 1.119647e-06 1.451229e-03 
## 
## [[3]]
##  (Intercept)           wt         drat 
## 2.737824e-04 1.589075e-06 3.308544e-01 
## 
## [[4]]
##  (Intercept)           wt         qsec 
## 7.650466e-04 2.518948e-11 1.499883e-03

كل متغير هو مرشح محتمل لدخول النموذج النهائي. ومع ذلك، فإن الخوارزمية تحتفظ فقط بالمتغير ذي القيمة p الأقل. اتضح أن قيمة HP أقل قليلاً من قيمة qsec. ولذلك، تدخل HP النموذج النهائي

خطوة 2

تكرر الخوارزمية الخطوة الأولى ولكن هذه المرة مع متغيرين مستقلين في النموذج النهائي.

## [[1]]
##  (Intercept)           wt           hp         disp 
## 1.161936e-16 1.330991e-03 1.097103e-02 9.285070e-01 
## 
## [[2]]
##  (Intercept)           wt           hp         drat 
## 5.133678e-05 3.642961e-04 1.178415e-03 1.987554e-01 
## 
## [[3]]
##  (Intercept)           wt           hp         qsec 
## 2.784556e-03 3.217222e-06 2.441762e-01 2.546284e-01

لا يحتوي أي من المتغيرات التي دخلت النموذج النهائي على قيمة p منخفضة بما فيه الكفاية. تتوقف الخوارزمية هنا؛ لدينا النموذج النهائي :

## 
## Call:
## lm(formula = mpg ~ wt + hp, data = df)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -3.941 -1.600 -0.182  1.050  5.854 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 37.22727    1.59879  23.285  < 2e-16 ***
## wt          -3.87783    0.63273  -6.129 1.12e-06 ***
## hp          -0.03177    0.00903  -3.519  0.00145 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.593 on 29 degrees of freedom
## Multiple R-squared:  0.8268, Adjusted R-squared:  0.8148 
## F-statistic: 69.21 on 2 and 29 DF,  p-value: 9.109e-12

بإمكانك استخدام الدالة ols_stepwise() لمقارنة النتائج.

stp_s <-ols_stepwise(fit, details=TRUE)

الإخراج:

وجدت الخوارزمية حلاً بعد خطوتين، وأعادت نفس المخرجات التي حصلنا عليها من قبل.

في النهاية، يمكنك القول أن النماذج موضحة بمتغيرين وتقاطع. يرتبط الميل لكل جالون سلبًا بإجمالي القدرة الحصانية والوزن

## You are selecting variables based on p value...
## 1 variable(s) added....
## Variable Selection Procedure
##  Dependent Variable: mpg 
## 
##  Stepwise Selection: Step 1 
## 
##  Variable wt Entered 
## 
##                         Model Summary                          
## --------------------------------------------------------------
## R                       0.868       RMSE                3.046 
## R-Squared               0.753       Coef. Var          15.161 
## Adj. R-Squared          0.745       MSE                 9.277 
## Pred R-Squared          0.709       MAE                 2.341 
## --------------------------------------------------------------
##  RMSE: Root Mean Square Error 
##  MSE: Mean Square Error 
##  MAE: Mean Absolute Error 
##		ANOVA                                 
## --------------------------------------------------------------------
##                 Sum of                                              
##                Squares        DF    Mean Square      F         Sig. 
## --------------------------------------------------------------------
## Regression     847.725         1        847.725    91.375    0.0000 
## Residual       278.322        30          9.277                     
## Total         1126.047        31                                    
## --------------------------------------------------------------------
## 
##                                   Parameter Estimates                                    
## ----------------------------------------------------------------------------------------
##       model      Beta    Std. Error    Std. Beta      t        Sig      lower     upper 
## ----------------------------------------------------------------------------------------
## (Intercept)    37.285         1.878                 19.858    0.000    33.450    41.120 
##          wt    -5.344         0.559       -0.868    -9.559    0.000    -6.486    -4.203 
## ----------------------------------------------------------------------------------------
## 1 variable(s) added...
## Stepwise Selection: Step 2 
## 
##  Variable hp Entered 
## 
##                         Model Summary                          
## --------------------------------------------------------------
## R                       0.909       RMSE                2.593 
## R-Squared               0.827       Coef. Var          12.909 
## Adj. R-Squared          0.815       MSE                 6.726 
## Pred R-Squared          0.781       MAE                 1.901 
## --------------------------------------------------------------
##  RMSE: Root Mean Square Error 
##  MSE: Mean Square Error 
##  MAE: Mean Absolute Error 
##			ANOVA                                 
## --------------------------------------------------------------------
##                 Sum of                                              
##                Squares        DF    Mean Square      F         Sig. 
## --------------------------------------------------------------------
## Regression     930.999         2        465.500    69.211    0.0000 
## Residual       195.048        29          6.726                     
## Total         1126.047        31                                    
## --------------------------------------------------------------------
## 
##                                   Parameter Estimates                                    
## ----------------------------------------------------------------------------------------
##       model      Beta    Std. Error    Std. Beta      t        Sig      lower     upper 
## ----------------------------------------------------------------------------------------
## (Intercept)    37.227         1.599                 23.285    0.000    33.957    40.497 
##          wt    -3.878         0.633       -0.630    -6.129    0.000    -5.172    -2.584 
##          hp    -0.032         0.009       -0.361    -3.519    0.001    -0.050    -0.013 
## ----------------------------------------------------------------------------------------
## No more variables to be added or removed.

تعلم آلة

تعلم آلة أصبحت منتشرة على نطاق واسع بين علماء البيانات ويتم نشرها في مئات المنتجات التي تستخدمها يوميًا. كان أحد تطبيقات التعلم الآلي الأولى فلتر البريد المزعج.

وفيما يلي تطبيقات أخرى للتعلم الآلي:

  • تحديد رسائل البريد العشوائي غير المرغوب فيها في البريد الإلكتروني
  • تجزئة سلوك العملاء للإعلانات المستهدفة
  • الحد من المعاملات الاحتيالية ببطاقات الائتمان
  • الاستخدام الأمثل للطاقة في المباني المنزلية والمكاتب
  • التعرف على الوجه

التعلم تحت الإشراف

In التعلم تحت الإشراف، فإن بيانات التدريب التي تغذيها للخوارزمية تتضمن تسمية.

تصنيف ربما تكون تقنية التعلم الخاضع للإشراف هي الأكثر استخدامًا. كانت إحدى مهام التصنيف الأولى التي تناولها الباحثون هي مرشح البريد العشوائي. والهدف من التعلم هو التنبؤ بما إذا كان البريد الإلكتروني مصنفًا على أنه بريد عشوائي أو بريد إلكتروني غير مرغوب فيه (بريد إلكتروني جيد). يمكن للآلة، بعد خطوة التدريب، اكتشاف فئة البريد الإلكتروني.

الانحدار تُستخدم بشكل شائع في مجال التعلم الآلي للتنبؤ بالقيمة المستمرة. يمكن لمهمة الانحدار التنبؤ بقيمة a المتغير التابع بناء على مجموعة من المتغيرات المستقلة (وتسمى أيضًا المتنبئين أو الراجعين). على سبيل المثال، يمكن للانحدارات الخطية التنبؤ بسعر السهم، وتوقعات الطقس، والمبيعات، وما إلى ذلك.

فيما يلي قائمة ببعض خوارزميات التعلم الخاضع للإشراف الأساسية.

  • الانحدارالخطي
  • الانحدار اللوجستي
  • أقرب الجيران
  • آلة ناقلات الدعم (SVM)
  • أشجار القرار والغابات العشوائية
  • الشبكات العصبية

تعليم غير مشرف عليه

In تعليم غير مشرف عليهالبيانات التدريبية غير مُسمَّاة. يحاول النظام التعلم دون مرجع. فيما يلي قائمة بخوارزميات التعلم غير الخاضعة للإشراف.

  • ك-يعني
  • الهرمية Cluster تحليل الأداء
  • زيادة التوقعات
  • التخيل وتقليل الأبعاد
  • تحليل المكون الرئيسي
  • نواة PCA
  • التضمين الخطي محليًا

الملخص

  • يجيب الانحدار الخطي على سؤال بسيط: هل يمكنك قياس العلاقة الدقيقة بين متغيرات مستهدفة واحدة ومجموعة من المتنبئين؟
  • تحاول طريقة المربعات الصغرى العادية العثور على المعلمات التي تقلل مجموع الأخطاء التربيعية، أي المسافة الرأسية بين قيم y المتوقعة وقيم y الفعلية.
  • ويسمى النموذج الاحتمالي الذي يتضمن أكثر من متغير مستقل نماذج الانحدار المتعددة.
  • الغرض من خوارزمية الانحدار الخطي التدريجي هو إضافة وإزالة المرشحين المحتملين في النماذج والاحتفاظ بالذين لديهم تأثير كبير على المتغير التابع.
  • يعد اختيار المتغيرات جزءًا مهمًا لملاءمة النموذج. يقوم الانحدار التدريجي بإجراء عملية البحث تلقائيًا.

يمكن تلخيص الانحدار التربيعي العادي في الجدول أدناه:

المكتبة الهدف الوظيفة الحجج
قاعدة حساب الانحدار الخطي لم () الصيغة والبيانات
قاعدة تلخيص النموذج لخص() تناسب
قاعدة استخراج المعاملات معامل lm()$
قاعدة استخراج البقايا lm()$المخلفات
قاعدة استخراج القيمة المجهزة lm()$fitted.values
olsrr تشغيل الانحدار التدريجي ols_stepwise() مناسب، pent = 0.1، prem = 0.3، details = FALSE

ملاحظات: تذكر تحويل المتغير الفئوي إلى عامل قبل أن يناسب النموذج.