রিগ্রেশনে রৈখিক পরীক্ষার অসুবিধা


21

ইন পরিসংখ্যানগত মডেলিং: দুই সংস্কৃতি লিও Breiman লিখেছেন

বর্তমান প্রয়োগ অনুশীলন হ'ল ধার্মিকতা-ফিট-টেস্ট এবং অবশিষ্ট বিশ্লেষণগুলি ব্যবহার করে ডেটা মডেল ফিট fit এক পর্যায়ে, কয়েক বছর আগে, আমি নিয়ন্ত্রিত পরিমাণে অন-লাইনের সাথে সাতটি মাত্রায় একটি সিমুলেটেড রিগ্রেশন সমস্যা সেট আপ করেছি। ননলাইনারিটি চূড়ান্ত না হওয়া পর্যন্ত ধার্মিকতার মানক পরীক্ষাগুলি লিনিয়ারিকে প্রত্যাখ্যান করে না।

ব্রেম্যান তার অনুকরণের বিশদটি দেয় না। তিনি একটি কাগজ উল্লেখ করেছেন যা তিনি বলেছেন যে তার পর্যবেক্ষণের জন্য তাত্ত্বিক ন্যায়সঙ্গততা দেয় তবে কাগজটি অপ্রকাশিত।

কেউ কি ব্রিমেনের দাবির সমর্থনে কোনও প্রকাশিত সিমুলেশন ফলাফল বা তাত্ত্বিক কাগজ দেখেছেন?


1
চূড়ান্ত বিচার করা কঠিন, প্রতিটি ফাংশন কিছু পরিসরের উপরে লিনিয়ারের কাছে আসে; যেমনটি আমরা টেলর সিরিজের পচন থেকে জানি। মডেল নির্বাচনের বিষয়ে বার্নহ্যাম এবং অ্যান্ডারসনের তথ্যের মানদণ্ড কেন এই সমস্যাটি ভালভাবে পরিবেশন করবে না?
প্যাট্রিক ম্যাকক্যান

উত্তর:


11

আমি একটি সিমুলেশন তৈরি করেছি যা ব্রেইমানের বর্ণনার জবাব দেবে এবং কেবল স্পষ্টতই খুঁজে পেলাম: ফলাফলটি প্রসঙ্গে এবং "চরম" বলতে কী বোঝায় তার উপর নির্ভর করে।

একটি বিস্ময়কর অনেক কিছুই বলা যেতে পারে, তবে Rআগ্রহী পাঠকদের তাদের নিজস্ব তদন্তে ব্যবহার করার জন্য সহজেই পরিবর্তিত কোডের মাধ্যমে পরিচালিত কেবলমাত্র একটি উদাহরণের মধ্যে সীমাবদ্ধ রাখি । এই কোডটি প্রায় অর্থগোনাল (যাতে আমরা বহুবিশেষের সমস্যায় না পড়ি) প্রায় একইরূপে বিতরণ করা স্বাধীন মানগুলির সমন্বয়ে একটি ডিজাইন ম্যাট্রিক্স স্থাপন করে শুরু হয়। এটি প্রথম দুটি ভেরিয়েবলের মধ্যে একটি একক চতুর্ভুজ (অর্থাত্ ননলাইনার) মিথস্ক্রিয়াকে গণনা করে: এটি বিভিন্ন ধরণের "ননলাইনারি "গুলির মধ্যে কেবল একটি যা অধ্যয়ন করা যেতে পারে, তবে কমপক্ষে এটি একটি সাধারণ, সু-বোঝা একটি। তারপরে এটি সবকিছুকে মানিক করে তোলে যাতে সহগের তুলনাযোগ্য হয়:

set.seed(41)
p <- 7                                            # Dimensions
n <- 2^p                                          # Observations
x <- as.matrix(do.call(expand.grid, lapply(as.list(1:p), function(i) c(-1,1))))
x <- x + runif(n*p, min=-1, max=1)
x <- cbind(x, x.12 = x[,1]*x[,2])                 # The nonlinear part
x <- apply(x, 2, function(y) (y - mean(y))/sd(y)) # Standardization

বেস ওএলএস মডেলের জন্য (অ-লাইন ছাড়াই) আমাদের অবশ্যই কিছু সহগ এবং অবশিষ্টাংশের ত্রুটির মানক বিচ্যুতি নির্দিষ্ট করতে হবে। এখানে ইউনিট সহগের একটি সেট এবং তুলনীয় এসডি রয়েছে:

beta <- rep(c(1,-1), p)[1:p]
sd <- 1

1/41-1

gamma = 1/4          # The standardized interaction term
df <- data.frame(x)
df$y <- x %*% c(beta, gamma) + rnorm(n, sd=sd)
summary(df)
cor(df)*100
plot(df, lower.panel=function(x,y) lines(lowess(y~x)), 
     upper.panel=function(x,y) points(x,y, pch=".", cex=4))
summary(lm(df$y ~ x))

এখানে সমস্ত আউটপুট ওয়েড না করে কমান্ডের আউটপুট ব্যবহার করে এই ডেটাগুলি দেখুনplot :

SPM

নিম্ন ত্রিভুজটিতে নিম্নমানের চিহ্নগুলি মূলত ইন্টারঅ্যাকশন ( x.12) এবং নির্ভরশীল ভেরিয়েবল ( y) এবং অন্যান্য ভেরিয়েবল এবং এর মধ্যে মাঝারি লিনিয়ার সম্পর্কের মধ্যে কোনও লিনিয়ার সম্পর্ক প্রদর্শন করে না y। ওএলএসের ফলাফলগুলি নিশ্চিত করে যে; মিথস্ক্রিয়া খুব কমই গুরুত্বপূর্ণ:

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   0.0263     0.0828    0.32    0.751    
xVar1         0.9947     0.0833   11.94   <2e-16 ***
xVar2        -0.8713     0.0842  -10.35   <2e-16 ***
xVar3         1.0709     0.0836   12.81   <2e-16 ***
xVar4        -1.0007     0.0840  -11.92   <2e-16 ***
xVar5         1.0233     0.0836   12.24   <2e-16 ***
xVar6        -0.9514     0.0835  -11.40   <2e-16 ***
xVar7         1.0482     0.0835   12.56   <2e-16 ***
xx.12         0.1902     0.0836    2.27    0.025 *  

আমি অরৈখিকতার পরীক্ষা হিসাবে ইন্টারঅ্যাকশন শব্দটির পি-মান নেব: যখন এই পি-মানটি যথেষ্ট কম হয় (আপনি ঠিক কতটা কম বেছে নিতে পারেন), আমরা অরৈখিকতাটি সনাক্ত করব।

(আমরা ঠিক কীটি সন্ধান করছি সে সম্পর্কে এখানে একটি সূক্ষ্মতা রয়েছে practice বাস্তবে আমাদের কোনও term * / / ২ = ২১ টি সম্ভাব্য চতুষ্কোণ ইন্টারঅ্যাকশনগুলি পাশাপাশি একক শর্তের উপর মনোনিবেশ করার চেয়ে আরও 7 টি চতুর্ভুজ শর্তাদি পরীক্ষা করতে হবে practice যেমনটি এখানে করা হয়েছে। আমরা এই 28 আন্তঃ সম্পর্কিত পরীক্ষাগুলির জন্য একটি সংশোধন করতে চাই I আমি এখানে স্পষ্টভাবে এই সংশোধন করব না, পরিবর্তে আমি পি-মানগুলির সিমুলেটেড বিতরণ প্রদর্শন করি You আপনি সরাসরি সনাক্তকরণের হারগুলি পড়তে পারেন উপর ভিত্তি করে শেষে histograms আপনার তাত্পর্য প্রান্তিক মান।)

তবে আসুন একবার এই বিশ্লেষণটি না করে; yএকই মডেল এবং একই ডিজাইনের ম্যাট্রিক্স অনুযায়ী প্রতিটি পুনরাবৃত্তির নতুন মান উত্পন্ন করে অনেক সময় এটি করা যাক । এটি সম্পাদন করার জন্য, আমরা একটি পুনরাবৃত্তি চালিয়ে ফাংশনটি ব্যবহার করি এবং মিথস্ক্রিয়া শব্দটির পি-মানটি ফিরিয়ে আনি:

test <- function(gamma, sd=1) {
  y <- x %*% c(beta, gamma) + rnorm(n, sd=sd)
  fit <- summary(lm(y ~ x))
  m <- coef(fit)
  n <- dim(m)[1]
  m[n, 4]
}

আমি আন্তঃসংযোগ gammaশব্দটির মানক সহগের পরিবর্তিত, পি-মানগুলির হিস্টোগ্রাম হিসাবে সিমুলেশন ফলাফলগুলি উপস্থাপন করতে পছন্দ করি । প্রথমত, হিস্টোগ্রামগুলি:

h <- function(g, n.trials=1000) {
  hist(replicate(n.trials, test(g, sd)), xlim=c(0,1), 
       main=toString(g), xlab="x1:x2 p-value")
}
par(mfrow=c(2,2)) # Draw a 2 by 2 panel of results

এখন কাজ করতে। সিমুলেশন প্রতি 1000 ট্রায়ালগুলির জন্য এটি কয়েক সেকেন্ড সময় নেয় (এবং চারটি স্বতন্ত্র সিমুলেশন, ইন্টারঅ্যাকশন শব্দটির প্রদত্ত মান দিয়ে শুরু করে এবং প্রতিটি সময় এটি ক্রমান্বয়ে অর্ধেক করে):

temp <- sapply(2^(-3:0) * gamma, h)

ফলাফলগুলো:

Histograms

xsdbeta1/41/81/16gamma1/2

1/32 থেকে 1/4, "চরম" হতে পারে আবার নাও আপনার দৃষ্টিকোণ উপর নির্ভর করবে রিগ্রেশন পরিস্থিতির উপর (যেমন দ্বারা প্রকাশ x, sdএবং beta), nonlinearity কত স্বাধীন পরীক্ষার আপনি পরিচালনার কল্পনা উপর, এবং, গতি Breiman, যাঁকে আমি অতিশয় সম্মান করি, সম্ভবত উপর আপনার পিঠে কুড়াল আছে কিনা। আপনি অনাবলম্বতা সনাক্ত করতে ওএলএসের পক্ষে অবশ্যই এটি কঠিন করে তুলতে পারেন: কেবল স্ফীত করুন sdযাতে এটি অরৈখিকতা জলাবদ্ধ করে এবং একসাথে ফিটের সচ্ছলতার জন্য বিভিন্ন পরীক্ষা চালায়।

সংক্ষেপে, এর মতো একটি সিমুলেশন আপনি যা পছন্দ করেন তা প্রমাণ করতে পারে যদি আপনি কেবল এটি সেট আপ করেন এবং সঠিকভাবে ব্যাখ্যা করেন। এটি সুপারিশ করে যে পৃথক পরিসংখ্যানবিদরা তাদের ব্যবহার করা পদ্ধতিগুলির দক্ষতা এবং দুর্বলতাগুলির জন্য ব্যক্তিগত এবং গভীর বোঝার জন্য, তারা যে বিশেষ সমস্যার মুখোমুখি হন তাদের উপযুক্ত, তাদের নিজস্ব অনুসন্ধান চালানো উচিত।


+1, শুধু এফআইআই, আমি লক্ষ্য করেছি যে আপনি নিজের ডেটা মানক করার জন্য আপনার নিজের ফাংশনটি লিখেছেন, আপনি এটি পেতে পারেন স্কেল সহায়ক?
গুং - মনিকা পুনরায়

ধন্যবাদ, @ গুং আমি নিশ্চিত যে এই জাতীয় ফাংশনটি প্রায় ছিল তবে এর নামটি ভাবতে পারেনি। আমি এই Rজাতীয় পয়েন্টার থেকে বেশ নতুন এবং সর্বদা প্রশংসা করি।
whuber

1

নিশ্চিত নন এটা প্রশ্নের একটি চূড়ান্ত উত্তর দেয়, কিন্তু আমি কটাক্ষপাত দিতে হবে এই । বিশেষত পয়েন্ট ২. কাগজের পরিশিষ্ট এ 2 এও আলোচনাটি দেখুন ।


দেখার জন্য ধন্যবাদ, তবে এগুলি ওএলএস প্রতিরোধের চেয়ে বিতরণ-ফিটিং অ্যাপ্লিকেশন বলে মনে হচ্ছে।
whuber
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.