मैंने एक सिमुलेशन बनाया, जो ब्रेमेन के विवरण का जवाब देगा और केवल स्पष्ट पाया जाएगा: परिणाम संदर्भ पर निर्भर करता है और जो कि "चरम" द्वारा होता है। "
एक भयानक बहुत कुछ कहा जा सकता है, लेकिन मुझे इसे केवल एक उदाहरण तक सीमित रखना चाहिए जो 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
आधार OLS मॉडल (बिना अशुद्धता के) के लिए हमें कुछ गुणांक और अवशिष्ट त्रुटि के मानक विचलन को निर्दिष्ट करना होगा। यहां इकाई गुणांक और एक तुलनीय एसडी का एक सेट है:
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
आदेश:
निचले त्रिकोण पर निचला निशान अनिवार्य रूप से बातचीत ( x.12
) और आश्रित चर ( y
) और अन्य चर के बीच मामूली रैखिक संबंधों के बीच कोई रैखिक संबंध नहीं दिखाता है और y
। OLS परिणाम इसकी पुष्टि करते हैं; बातचीत बहुत महत्वपूर्ण है:
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 *
मैं अशुद्धता के परीक्षण के रूप में इंटरैक्शन शब्द का पी-वैल्यू ले लूंगा: जब यह पी-वैल्यू पर्याप्त रूप से कम है (आप बस कितना कम चुन सकते हैं), हमने नॉनलाइनरिटी का पता लगाया होगा।
(वास्तव में हम जो खोज रहे हैं, उसके बारे में यहां एक सूक्ष्मता है। व्यवहार में हमें सभी 7 * 6/2 = 21 संभव है कि इस तरह के द्विघात इंटरैक्शन की जांच करने की आवश्यकता हो सकती है, साथ ही शायद एक शब्द पर ध्यान केंद्रित करने के बजाय 7 और द्विघात शब्द। जैसा कि यहां किया गया है। हम इन 28 अंतर-संबंधित परीक्षणों के लिए एक सुधार करना चाहते हैं। मैं स्पष्ट रूप से यहां यह सुधार नहीं कर रहा हूं, क्योंकि इसके बजाय मैं पी-मूल्यों के सिम्युलेटेड वितरण को प्रदर्शित करता हूं। आप पता लगाने की दरों को सीधे पढ़ सकते हैं। महत्व की अपनी सीमा के आधार पर अंत में हिस्टोग्राम ।)
लेकिन चलो यह विश्लेषण सिर्फ एक बार नहीं करते हैं; चलो 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)
परिणाम:
निचले दाएं से पीछे की ओर पढ़ना, ये प्लॉट बताते हैं कि इस डिज़ाइन मैट्रिक्स के लिए x
, त्रुटियों के इस मानक विचलन के sd
लिए, और इन मानकीकृत गुणांक के लिए beta
, ओएलएस मानकीकृत इंटरैक्शन का पता लगा सकता है (अन्य गुणांक के आकार का केवल एक-चौथाई ) मज़बूती से, 80% से अधिक समय (पी-मूल्य के लिए 5% सीमा का उपयोग करके - कई तुलनाओं के लिए सही करने के बारे में संक्षिप्त चर्चा को याद करें, जिसे मैं अब अनदेखा कर रहा हूं); यह अक्सर (समय का लगभग 20%) का एक इंटरैक्शन आकार का पता लगा सकता है ; यह कभी-कभी आकार की बातचीत का पता लगाएगा1 / 41 / 81 / 16, और वास्तव में किसी भी छोटे इंटरैक्शन की पहचान नहीं कर सकते हैं। यहां नहीं दिखाया गया हैgamma
बराबर एक हिस्टोग्राम , जो दर्शाता है कि कई तुलनाओं के लिए सही होने पर भी, एक द्विघात बातचीत इस बड़े का लगभग निश्चित रूप से पता लगाया जाता है।1 / 2
चाहे आप इन इंटरैक्शन को लेते हैं, जो आकार में से तक "चरम" हो या नहीं, आपके दृष्टिकोण पर निर्भर करेगा, प्रतिगमन स्थिति (जैसा कि , और ) द्वारा व्यक्त किया गया है , कितने स्वतंत्र परीक्षणों पर nonlinearity की आप के संचालन की कल्पना है, और, गति Breiman, जिन्हें मैं आप पीसने के लिए एक कुल्हाड़ी है या नहीं पर बहुत सम्मान करते हैं, शायद। आप निश्चित रूप से ओएलएस के लिए ग़ैर-हीनता का पता लगाना मुश्किल बना सकते हैं: बस इतना बढ़ाएँ कि वह ग़ैर- क़ानूनी रूप से बदल जाए और साथ ही साथ तंदुरुस्ती के लिए कई अलग-अलग परीक्षणों का आयोजन करे।1 / 321 / 4x
sd
beta
sd
संक्षेप में, इस तरह का एक सिमुलेशन आपको जो भी पसंद है उसे साबित कर सकता है यदि आप इसे बस सेट करते हैं और इसे सही तरीके से व्याख्या करते हैं। यह सुझाव देता है कि व्यक्तिगत सांख्यिकीविद् को अपने स्वयं के अन्वेषणों का संचालन करना चाहिए, विशेष समस्याओं के लिए उपयुक्त हैं, ताकि वे उन प्रक्रियाओं की क्षमताओं और कमजोरियों की व्यक्तिगत और गहरी समझ में आ सकें, जो वे उपयोग कर रहे हैं।