পরিসংখ্যানগতভাবে গুরুত্বপূর্ণ ইন্টারসেপ্ট শব্দটি অপসারণ রৈখিক মডেলগুলিতে


101

একটি একক ব্যাখ্যামূলক চলক সহ একটি সাধারণ লিনিয়ার মডেলটিতে,

αi=β0+β1δi+ϵi

আমি দেখতে পেলাম যে ইন্টারসেপ্ট শব্দটি অপসারণ করলে ফিটের ব্যাপক উন্নতি হয় ( মান R20.3 থেকে 0.9 হয়)। তবে ইন্টারসেপ্ট শব্দটি পরিসংখ্যানগতভাবে তাৎপর্যপূর্ণ বলে মনে হয়।

বিরতি সহ:

Call:
lm(formula = alpha ~ delta, data = cf)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.72138 -0.15619 -0.03744  0.14189  0.70305 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  0.48408    0.05397    8.97   <2e-16 ***
delta        0.46112    0.04595   10.04   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

Residual standard error: 0.2435 on 218 degrees of freedom
Multiple R-squared: 0.316,    Adjusted R-squared: 0.3129 
F-statistic: 100.7 on 1 and 218 DF,  p-value: < 2.2e-16

বাধা ছাড়াই:

Call:
lm(formula = alpha ~ 0 + delta, data = cf)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.92474 -0.15021  0.05114  0.21078  0.85480 

Coefficients:
      Estimate Std. Error t value Pr(>|t|)    
delta  0.85374    0.01632   52.33   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

Residual standard error: 0.2842 on 219 degrees of freedom
Multiple R-squared: 0.9259,   Adjusted R-squared: 0.9256 
F-statistic:  2738 on 1 and 219 DF,  p-value: < 2.2e-16

আপনি এই ফলাফলগুলি কীভাবে ব্যাখ্যা করবেন? মডেলটিতে একটি ইন্টারসেপ্ট টার্ম অন্তর্ভুক্ত করা উচিত কি না?

সম্পাদন করা

এখানে স্কোয়ারের অবশিষ্টাংশগুলি রয়েছে:

RSS(with intercept) = 12.92305
RSS(without intercept) = 17.69277

14
আমি কে কেবলমাত্র বিরতিতে অন্তর্ভুক্ত করা থাকলে কেবলমাত্র সম্পূর্ণ বৈকল্পিকের জন্য ব্যাখ্যা করা অনুপাতের কথা স্মরণ করি । অন্যথায় এটি উত্পন্ন করা যায় না এবং এর ব্যাখ্যাটি হারাতে পারে। আর2
মোমো

@ মোমো: ভালো কথা। আমি প্রতিটি মডেলের জন্য স্কোয়ারের অবশিষ্টাংশের পরিমাণগুলি গণনা করেছি, যা বলে মনে হয় যে শব্দটি নির্বিশেষে ইন্টারসেপ্ট টার্ম সহ মডেলটি আরও ভাল ফিট । আর2
আর্নেস্ট এ

4
ঠিক আছে, আপনি যখন অতিরিক্ত প্যারামিটার অন্তর্ভুক্ত করবেন তখন আরএসএসকে নীচে (বা কমপক্ষে বৃদ্ধি না) করতে হবে। আরও গুরুত্বপূর্ণ, লিনিয়ার মডেলগুলিতে স্ট্যান্ডার্ড অনুমানের বেশিরভাগ প্রয়োগ হয় না যখন আপনি ইন্টারসেপটকে দমন করেন (এমনকি এটি যদি পরিসংখ্যানগতভাবে তাৎপর্যপূর্ণ নাও হয়)।
ম্যাক্রো

14
কি যখন কোনো পথিমধ্যে জন্যই করেন এটি হিসাব করা হয় আর 2 = 1 - Σ আমি ( Y আমি - Y আমি ) 2আর পরিবর্তে (নোটিশ, হর পদ মানে কোন বিয়োগ)। এটি ডিনোমিনেটরকে বৃহত্তর করে তোলে যা একই বা অনুরূপ এমএসইর জন্যআর2বৃদ্ধি করে।
আর2=1-Σআমি(Yআমি-Y^আমি)2ΣআমিYআমি2
আর2
কার্ডিনাল

5
নয় অগত্যা বড় করা হয়েছে। উভয় ক্ষেত্রেই ফিটের এমএসই সমান হওয়া পর্যন্ত এটি কোনও বিরতি ছাড়াই কেবল বড়। কিন্তু মনে রাখবেন যেমন @Macro নির্দিষ্ট, লব যে এছাড়াও কোন পথিমধ্যে তাই এটি নির্ভর করে জেতেন যার উপর দিয়ে ক্ষেত্রে বৃহত্তর পায়! আপনি সঠিক যে এগুলির একে অপরের সাথে তুলনা করা উচিত নয় তবে আপনি এটিও জানেন যে বিরতিযুক্ত এসএসই সর্বদা বিরতি ছাড়াই এসএসইয়ের চেয়ে ছোট হবে । এটি রিগ্রেশন ডায়াগনস্টিক্সের জন্য নমুনা ব্যবস্থাগুলি ব্যবহার করে সমস্যার অংশ। এই মডেলটি ব্যবহারের জন্য আপনার শেষ লক্ষ্যটি কী? আর2
কার্ডিনাল

উত্তর:


131

প্রথমত, আমাদের Rযখন বুঝতে হবে যে কোনও মডেলটিতে কোনও ইন্টারসেপ্ট অন্তর্ভুক্ত করা হয়নি তখন সফ্টওয়্যারটি কী করছে। মনে করে দেখুন যে স্বাভাবিক গণনার একটি পথিমধ্যে উপস্থিত যখন আর 2 = Σ আমি ( Y আমি - ˉ Y ) 2আর2 প্রথম সাম্যতাটিকেবলমাত্রমডেলটিতে ইন্টারসেপ্ট অন্তর্ভুক্তির কারণেই ঘটেযদিওএটি সম্ভবত এটি লেখার দুটি উপায়েই বেশি জনপ্রিয়। দ্বিতীয়সমতা আসলে আরও সাধারণ ব্যাখ্যা প্রদান করে! এই বিষয়টিএই সম্পর্কিত প্রশ্নেরওঠিকানা।

আর2=Σআমি(Y^আমি-Y¯)2Σআমি(Yআমি-Y¯)2=1-Σআমি(Yআমি-Y^আমি)2Σআমি(Yআমি-Y¯)2

তবে, মডেলটিতে কোনও বাধা না থাকলে কী ঘটে?

R

আর02=ΣআমিY^আমি2ΣআমিYআমি2=1-Σআমি(Yআমি-Y^আমি)2ΣআমিYআমি2

আর2আর02

আর2আর02

তবে, তারা কীভাবে আলাদা এবং কখন?

আসুন কিছু রৈখিক বীজগণিতের জন্য একটি সংক্ষিপ্ত দিকনির্দেশ নেওয়া যাক এবং কী চলছে তা আমরা খুঁজে বের করতে পারি কিনা তা দেখুন। প্রথম সব, এর মডেল থেকে লাগানো মান কল দিন সঙ্গে পথিমধ্যে এবং লাগানো মান বিনা বাধা ছাড়াই মডেল থেকে । ~ YY^Y~

আমরা এবং এর এক্সপ্রেশনগুলি নতুন হিসাবে আবার এবং যথাক্রমে ।আর2আর02

আর2=1-Y-Y^22Y-Y¯122,
আর02=1-Y-Y~22Y22,

এখন থেকে, , তারপরে যদি এবং কেবল যদি Y22=Y-Y¯122+ +এনY¯2আর02>আর2

Y-Y~22Y-Y^22<1+ +Y¯21এনY-Y¯122

বাম-হাতের দিকটি একের চেয়ে বেশি, যেহেতু সাথে সম্পর্কিত মডেলটি মধ্যে । ডানদিকে দ্বিতীয় শব্দটি হ'ল একটি বিরতি-কেবল মডেলটির গড় বর্গ ত্রুটি দ্বারা বিভক্ত প্রতিক্রিয়াগুলির স্কোয়ার-গড়। সুতরাং, অন্যান্য প্রকরণের তুলনায় প্রতিক্রিয়ার গড় যত বড় হবে, আমাদের তত বেশি "স্ল্যাক" হবে এবং প্রভাব এর বৃহত্তর সম্ভাবনা ।Y~Y^আর02আর2

লক্ষ্য করুন যে সমস্ত মডেল নির্ভর স্টাফগুলি বাম দিকে রয়েছে এবং মডেলবিহীন নির্ভর স্টাফগুলি ডানদিকে রয়েছে।

ঠিক আছে, তাহলে আমরা কীভাবে বাম দিকের অনুপাতটিকে ছোট করব?

স্মরণ করুন যে এবং যেখানে এবং এবং সাথে প্রজেকশন ম্যাট্রিক রয়েছে যেমন ।Y~=পি0YY^=পি1Yপি0পি1এস0এস1এস0এস1

সুতরাং, অনুপাতটি একের কাছাকাছি হওয়ার জন্য, আমাদের খুব বেশি জন্য - এবং প্রয়োজন । এখন এবং কিনা কেবলমাত্র ভিন্ন , একটি ভিত্তি ভেক্টর বা না তাই তার মানে তাদের ভাল একটি subspace ইতিমধ্যে খুব পাসে এই ব্যবস্থার সবচেয়ে গুরত্বপূর্ণ হতে ছিল ।এস0এস1এস0এস11এস01

সংক্ষেপে, এর অর্থ আমাদের ভবিষ্যদ্বাণীকারীর কাছে আরও শক্তিশালী গড় অফসেট ছিল এবং এর অর্থ অফসেটটি ভবিষ্যদ্বাণীটির পরিবর্তনের উপর নির্ভর করতে পারে।

একটি উদাহরণ

এখানে আমরা মডেলটিতে স্পষ্টভাবে একটি বাধা দিয়ে একটি উদাহরণ উত্পন্ন করার চেষ্টা করি যা প্রশ্নের ক্ষেত্রে মামলার কাছাকাছি আচরণ করে। নীচে Rপ্রদর্শন করার জন্য কয়েকটি সাধারণ কোড দেওয়া আছে।

set.seed(.Random.seed[1])

n <- 220
a <- 0.5
b <- 0.5
se <- 0.25

# Make sure x has a strong mean offset
x <- rnorm(n)/3 + a
y <- a + b*x + se*rnorm(x)

int.lm   <- lm(y~x)
noint.lm <- lm(y~x+0)  # Intercept be gone!

# For comparison to summary(.) output
rsq.int <- cor(y,x)^2
rsq.noint <- 1-mean((y-noint.lm$fit)^2) / mean(y^2)

এটি নিম্নলিখিত আউটপুট দেয়। আমরা বাধা দিয়ে মডেল দিয়ে শুরু ।

# Include an intercept!
> summary(int.lm)

Call:
lm(formula = y ~ x)

Residuals:
      Min        1Q    Median        3Q       Max
-0.656010 -0.161556 -0.005112  0.178008  0.621790

Coefficients:
            Estimate Std. Error t value Pr(>|t|)
(Intercept)  0.48521    0.02990   16.23   <2e-16 ***
x            0.54239    0.04929   11.00   <2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.2467 on 218 degrees of freedom
Multiple R-squared: 0.3571,     Adjusted R-squared: 0.3541
F-statistic: 121.1 on 1 and 218 DF,  p-value: < 2.2e-16

তারপরে, যখন আমরা ইন্টারসেপটি বাদ দিই তখন কী ঘটে তা দেখুন ।

# No intercept!
> summary(noint.lm)

Call:
lm(formula = y ~ x + 0)

Residuals:
     Min       1Q   Median       3Q      Max
-0.62108 -0.08006  0.16295  0.38258  1.02485

Coefficients:
  Estimate Std. Error t value Pr(>|t|)
x  1.20712    0.04066   29.69   <2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.3658 on 219 degrees of freedom
Multiple R-squared: 0.801,      Adjusted R-squared: 0.8001
F-statistic: 881.5 on 1 and 219 DF,  p-value: < 2.2e-16

নীচে লাল রঙে মডেল-সাথে-বাধা এবং নীল রঙে মডেল-বিনা বাধাদির সাথে ডেটাগুলির একটি প্লট রয়েছে।

রিগ্রেশন লাইন সহ ডেটা প্লট


4
এটি সত্যিই দর্শনীয়, +1। একটি প্রশ্ন: প্রায়শই যখন আমরা বি / টি 2 মডেলকে বিচার করতে চাই, আমরা একটি নেস্টেড মডেল পরীক্ষা করি, এটি কি এটিকে আগে থেকেই বোঝায় যে, বা হ্রাসকৃত মডেল ডাব্লু / ও সম্পূর্ণ মডেল ডাব্লু / এর বিপরীতে পরীক্ষা করা বৈধ হবে? ?
গাং

5
@ গুং: না, আমি বিশ্বাস করি না যে সাধারণত টিপিকাল টেষ্ট থেকে আমাদের অন্তর্ভুক্ত করে । পরীক্ষাটি কোনও বিরতি উপস্থিতির উপর নির্ভর করে না, এবং সত্যই আমি বিশ্বাস করি যে স্ট্যাটাস্টিক এ ক্ষেত্রে । এটি আমাদের তাতে কিছুটা পরিমাণগত তথ্য দেয়, যদি সত্যই , তবে আমরা জানি যে ধরে নিচ্ছি অবশ্যই, আমি বীজগণিতটি সঠিকভাবে করেছি। এফএফআর 2 0 >আর 2 1 এফ<(এন-2) ˉ y 2
এফ=(এন-2)(\ Y-\ ytilde22\ Y-\ yhat22-1)
আর02>আর12
এফ<(এন-2)Y¯2এন-1\ Y-Y¯\এক22,
কার্ডিনাল

1
আমি অভিব্যক্তি পছন্দআর02=ওয়াই~2ওয়াই2
Stéphane লরেন্ট

3
@ ননট ১০১১: আমি এটি আরও সত্য বলে বলব না , তবে এটি সাধারণভাবে বলতে গেলে এটি একটি সমান যুক্তিযুক্ত দৃষ্টিভঙ্গি। বর্তমান প্রকাশের জন্য, এটিকে অনুপস্থিত হিসাবে বিবেচনা করা সুবিধাজনক যে আমরা চূড়ান্তভাবে এবং - মধ্যে সম্পর্কের বিষয়ে আগ্রহী । উভয়ের মধ্যে পার্থক্য হ'ল বেস ভেক্টর এর উপস্থিতি বা এর অভাব । এস 0 1এস1এস01
কার্ডিনাল

1
আমি কিছু মিস করছি আর কি করে, সঠিক ? আমি বলতে চাইছি যে আর ^ 2 মানটি রিপোর্ট করা হয়েছে, এমনকি এমনকি বিরতিযুক্ত মামলাগুলির সাথে এবং ছাড়াই দূরবর্তীভাবে তুলনাযোগ্য?
অ্যান্ডি ক্লিফটন

1

আমি আমার সিদ্ধান্তকে আর ^ 2 এর পরিবর্তে আকাইকে বা বয়েস-শোয়ার্জের মানদণ্ডের মতো তথ্যের মানদণ্ডের ভিত্তিতে রাখব; তবুও আমি এগুলিকে পরম হিসাবে দেখতে চাই না।

আপনার যদি এমন কোনও প্রক্রিয়া থাকে যেখানে slাল শূন্যের কাছাকাছি থাকে এবং সমস্ত ডেটা উত্স থেকে অনেক দূরে থাকে তবে আপনার সঠিক আর ^ 2 কম হওয়া উচিত কারণ ডেটাতে সর্বাধিক প্রকরণের শব্দটি শোনাবে। আপনি যদি কোনও সংবিঘ্ন ছাড়াই কোনও মডেলের সাথে এই জাতীয় ডেটা ফিট করার চেষ্টা করেন তবে আপনি একটি বৃহত এবং ভুল opeালু শব্দ তৈরি করতে পারবেন এবং যদি ইন্টারসেপ্ট ফ্রি সংস্করণটি ব্যবহার করা হয় তবে সম্ভবত আরও ভাল দেখানো আর ^ 2 উত্পন্ন করবে।

নিম্নলিখিত চিত্রে এই চরম ক্ষেত্রে কী ঘটে তা দেখায়। এখানে উত্পাদনের প্রক্রিয়াটি হ'ল x = 100,100.1, .... এবং y কেবল 0 এবং স্ট্যান্ডার্ড বিচ্যুতি .1 সহ 100+ র্যান্ডম শোরগোল। পয়েন্টগুলি হল কালো বৃত্ত, ইন্টারসেপ্ট ছাড়াই ফিট নীল রেখা এবং ইন্টারসেপ্টের সাথে ফিট (slালটি জিরো করা) লাল রেখা:

[দুঃখিত এটি গ্রাফ পোস্ট করতে দেয় না; এটি তৈরি করতে নীচের আর-কোডটি চালান। এটি নীচের বাম কোণে উত্স দেখায়, উপরের ডান কোণে পয়েন্টগুলির ক্লাস্টার। খারাপ নন-ইন্টারসেপ্ট ফিটটি নীচের বাম থেকে উপরের ডানদিকে যায় এবং সঠিক ফিটটি এক্স-অক্ষের সমান্তরাল একটি লাইন]

এর জন্য সঠিক মডেলের শূন্যের আর ^ 2 হওয়া উচিত --- একটি ধ্রুবক প্লাস এলোমেলো গোলমাল হতে হবে। আর আপনাকে এবং আর .99 দিতে হবে না কোনও বাধা ছাড়াই ফিটের জন্য .99। আপনি যদি কেবলমাত্র প্রশিক্ষণের ডেটার সীমার মধ্যে এক্স-মানগুলির সাথে পূর্বাভাসের জন্য মডেলটি ব্যবহার করেন তবে এটি খুব বেশি গুরুত্ব পাবে না, তবে এক্স ট্রেনিং সেটের সংকীর্ণ সীমার বাইরে চলে গেলে বা আপনি সত্য অন্তর্দৃষ্টি অর্জন করার চেষ্টা করছেন শুধু অনুমানের বাইরে।

এআইসি সঠিকভাবে দেখায় যে ইন্টারসেপ্ট সহ মডেলটি পছন্দ করা হয়। এর জন্য আর কোডটি হ'ল:

 Nsamp=100
x=seq(1,100,1)*.1+100 # x=101.1,101.2,....
y=rnorm(n=length(x))+100 # random noise +100 (best model is constant)

model_withint=lm(y~x)
print(summary(model_withint))
flush.console()
model_noint=lm(y~x+0) 
print(summary(model_noint))
print (AIC(model_withint))
print(sprintf ('without intercept  AIC=%f',AIC(model_noint)))
print(sprintf ('with intercept  AIC=%f',AIC(model_withint)))
print(sprintf ('constant model  AIC=%f',AIC(lm(y~1))))
plot(x,y,ylim=c(0,105),xlim=c(0,105))
lines( c(0,105),c(0,105)*model_noint$coefficients['x'],col=c('blue'))
lines( c(0,105),c(1,1)*(lm(y~1)$coefficients['(Intercept)']),col=c('red'))

এআইসি আউটপুট হয়

   "without intercept  AIC=513.549626"
    "with intercept  AIC=288.112573"
    "constant model  AIC=289.411682"

মনে রাখবেন যে সত্যিকারের মডেলটি ধ্রুবক মডেল হিসাবে এআইসি এখনও এই ক্ষেত্রে ভুল মডেল পায়; তবে অন্যান্য এলোমেলো নম্বরগুলি এমন ডেটা দেবে যার জন্য এআইসি ধ্রুবক মডেলের জন্য সর্বনিম্ন। মনে রাখবেন যে আপনি যদি slালটি বাতিল করেন তবে আপনার এটি ছাড়াই মডেলটি রিফিট করা উচিত, মডেল থেকে ইন্টারসেপটি ব্যবহার করার চেষ্টা করবেন না এবং opeাল উপেক্ষা করুন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.