فرض کنید 2 بردار y و x به حجم n وجود دارد و به نظر میرسد که بین این دو نمونه رابطهای خطی وجود دارد. با استفاده از تابع ()lm رگرسیون موجود بین این 2 بردار را بدست میآوریم.
برای اینکه بخواهیم رگرسیون به شکل زیر را به دست آوریم:
yi=a+bxi+ei
(lm(y~x
را اجرا میکنیم که براورد عرض از مبدا (intercept) و شیب خط رگرسیون (که در مدل رگرسیونی فوق به ترتیب مقادیر a و b) هستند به صورت زیر نشان داده میشود:
:Call
(lm(formula = y ~ x
:Coefficients
Intercept) x)
0.008005- 3.018635
رگرسیون خطی چندگانه
فرض کنید متغیر پاسخ (y) و چند متغیر پیشگو (برای مثال u، v و w) موجود است و تصور میکنیم که بین این متغیرهای پیشگو و متغیر پاسخ ارتباط خطی وجود دارد.
بطور مثال فرض کنید دو بردار u، v، w و y زیر موجودند:
(set.seed(500
(u<-rnorm(1000,1,1
(v<-rnorm(1000,3,1
(w<-rnorm(1000,1,1
(y<-rnorm(1000,10,1
برای اینکه بخواهیم رگرسیون به شکل زیر را به دست آوریم:
yi=a0+a1ui+ a2vi + a3wi + ei
(lm(y~u+v+w
بدست آوردن آمارههای رگرسیون
فرض کنید درباره رگرسیونی که بدست آوردهایم، میخواهیم اطلاعاتی چون R2، آماره F، فواصل اطمینان برای ضرائب رگرسیون، ماندهها، جدول ANOVA و… را بدست آوریم.
برای این منظور پس از اجرای رگرسیون و نامگذاری دلخواه آن (مثلاً برای راحتی کار نام متغیر را m در نظر میگیریم)، برای
-جدول ANOVA، تابع (anova(m؛
-ضرائب مدل، (coefficient(m یا (coef(m؛
-فواصل اطمینان ضرائب مدل، (confint(m؛
-مجموع مربعات خطا، (deviance(m؛
-بردار اثرات متعامد، (effects(m؛
-بردار مقادیر برازیده شده متغیر پاسخ (y، fitted(m؛
– ماندهها، (residuals(m یا (resid(m؛
-خلاصه آمارهها چون، R2، F و خطای استاندارد ماندهها، (summary(m؛
فرض کنید برای مجموعه دادهای رگرسیون را اجرا کردهایم و میخواهیم کیفیت مدل را تشخیص دهیم.
برای این منظور ابتدا تابع plot را برای مدل مورد نظر اجرا میکنیم که برخی نمودارهای را جهت تشخیص این موضوع ارائه میکند.
بعد از نصب پکیج car میتوان از تابع ()outlierTest برای بررسی ماندههای مدل استفاده کرد.
با در نظر گرفتن مثال زیر به ارائه مختصری از کار فوق میپردازیم.
فرض کنید:
(set.seed(1500
(x<-rnorm(1000,0,1
(y<-rnorm(1000,00,1
(m<- lm(y~x
پس از اجرای تایع:
(plot(m
به طور مثال نمودار اول بیانگر پراکنش مقادیر برازیده شده در برابر ماندههاست. همچنین دومین نمودار بیانگر Q-Q plot است که نشان میدهد آیا ماندهها از تابع توزیع نرمال پیروی میکنند یا خیر.
پیشگویی مقادیر جدید
حال با استفاده از مدل رگرسیونی که تایید مناسب بودن آن در بخش قبل انجام شده بود(تشخیص یک مدل رگرسیون خطی)، میخواهیم مقادیر جدید را با استفاده از مدل رگرسیونی بدست آوریم. این کار را با استفاده از دستور ()predict انجام میدهیم. برای پیشگویی دادههای مورد نظر با استفاده از مدل رگرسیونی فوق، باید دادههای مورد نظر را به صورت چارچوب داده در تابع فوق وارد کرد. به این صورت که در آرگومان تابع ()predict بخش اول، مدل رگرسیونی ودر بخش دوم چارچوب داده مربوط به مقادیری که میخواهیم با استفاده از مدل پیشگویی شوند را وارد میکنیم.
برای مثال اگر:
(set.seed(2500
(x<-rnorm(1000,0,1
(y<-rnorm(1000, 0,1
(m<- lm(y~x
دادههای مدل رگرسیونی باشد و
(u<-rnorm(1000,0,1
دادههایی باشند که میخواهیم با استفاده از مدل مقادیر آن پیشگویی شوند، برای پیشگویی ابتدا چارچوب داده مربوط دادههای فوق را به صورت
دانشآموخته دکترای تخصصی (PhD) کارآفرینی فناوری، بنیانگذار و مدیر گروه بینالمللی کسب و کار ساکوراد با بیش از ۲۰ سال تجربه بعنوان کوچ، مدرس، مشاور و منتور در حوزههای مختلف راهاندازی و توسعه کسبوکار در ۱۵ کشور جهان هستم. در تلاشم تا تجربیات ذیقیمت خود را با شما دوستان عزیزم به اشتراک گذارم.
واژهی بازاریابی عصبی به استفاده از علم مدرن مغز برای اندازهگیری تاثیر بازاریابی و تبلیغات در مصرفکنندگان اشاره دارد. بازاریابی عصبی (نورومارکتینگ) مطالعه چگونگی پاسخ مغز