सीमांत प्रभावों की मानक त्रुटियों के लिए डेल्टा विधि का उपयोग कैसे करें?


20

मैं एक प्रतिगमन मॉडल के औसत सीमांत प्रभावों की मानक त्रुटियों को समझने के लिए डेल्टा विधि को बेहतर ढंग से समझने में दिलचस्पी रखता हूं जिसमें एक बातचीत शब्द शामिल है। मैंने के अंतर्गत संबंधित प्रश्नों को देखा है, लेकिन किसी ने भी मुझे जो खोजा है वह प्रदान नहीं किया है।

निम्नलिखित उदाहरण के आंकड़ों को एक प्रेरक उदाहरण के रूप में देखें:

set.seed(1)
x1 <- rnorm(100)
x2 <- rbinom(100,1,.5)
y <- x1 + x2 + x1*x2 + rnorm(100)
m <- lm(y ~ x1*x2)

मैं औसत सीमांत प्रभावों (एएमई) x1और में दिलचस्पी रखता हूं x2। इनकी गणना करने के लिए, मैं निम्नलिखित कार्य करता हूं:

cf <- summary(m)$coef
me_x1 <- cf['x1',1] + cf['x1:x2',1]*x2 # MEs of x1 given x2
me_x2 <- cf['x2',1] + cf['x1:x2',1]*x1 # MEs of x2 given x1
mean(me_x1) # AME of x1
mean(me_x2) # AME of x2

लेकिन मैं इन एएमई की मानक त्रुटियों की गणना करने के लिए डेल्टा विधि का उपयोग कैसे करूं?

मैं हाथ से इस विशेष बातचीत के लिए एसई की गणना कर सकता हूं:

v <- vcov(m)
sqrt(v['x1','x1'] + (mean(x2)^2)*v['x1:x2','x1:x2'] + 2*mean(x2)*v['x1','x1:x2'])

लेकिन मुझे समझ नहीं आ रहा है कि डेल्टा विधि का उपयोग कैसे करें।

आदर्श रूप से, मैं किसी भी मनमाने प्रतिगमन मॉडल के एएमई के लिए डेल्टा विधि के बारे में (और कोड) सोचने के बारे में कुछ मार्गदर्शन की तलाश कर रहा हूं। उदाहरण के लिए, यह प्रश्न किसी विशेष इंटरैक्शन प्रभाव के लिए एसई के लिए एक सूत्र प्रदान करता है और मैट गोल्डर का यह दस्तावेज़ विभिन्न इंटरैक्टिव मॉडल के लिए सूत्र प्रदान करता है, लेकिन मैं सूत्र के बजाय एएमई के एसई की गणना के लिए सामान्य प्रक्रिया को बेहतर ढंग से समझना चाहता हूं। किसी विशेष एएमई के एसई।


2
+1 महान प्रश्न (लंबे समय से मुझे भी परेशान कर रहा है)! वहाँ Stata मंच पर एक पोस्ट है: औसत सीमांत के लिए डेल्टा विधि स्टैंडर्ड त्रुटियाँ ... । एसई पर, बूटस्ट्रैप दृष्टिकोण का उपयोग करने के लिए एक उदाहरण है: प्रोबेट रिग्रेशन के लिए सीमांत प्रभावों के लिए mfxboot फ़ंक्शन?
बेरंड वीस

जवाबों:


16

डेल्टा विधि बस यह कहती है कि यदि आप एक सहायक चर का प्रतिनिधित्व कर सकते हैं, तो आप सामान्य रूप से वितरित यादृच्छिक चर के एक कार्य के रूप में प्रतिनिधित्व कर सकते हैं, सहायक चर लगभग सामान्य रूप से भिन्न के साथ वितरित किया जाता है, जो सहायक सामान्य चर के संबंध में भिन्न होता है (EDIT: जैसा कि एलेकोस पापाडोपोलोस द्वारा बताया गया है कि डेल्टा विधि को आम तौर पर इस तरह से अधिक बताया जा सकता है कि इसमें स्पर्शोन्मुख सामान्य अवस्था की आवश्यकता नहीं होती है)। यह सोचने का सबसे आसान तरीका एक टेलर विस्तार है, जहां एक फ़ंक्शन का पहला शब्द माध्य है, और विचरण दूसरे क्रम की शर्तों से आता है। विशेष रूप से, यदि है पैरामीटर के एक समारोह β और एक सुसंगत, कि पैरामीटर के लिए सामान्य रूप से वितरित आकलनकर्ता है: जी (जीβ के बाद से β एक निरंतर है, और के लिए एक सुसंगत आकलनकर्ता है β , हम तो कह सकते हैं:

जी()जी(β)+जी(β)'(-β)
ββ इस मामले में, अपने OLS का अनुमान है, और जी AME है। आप इस विशिष्ट AME को इस प्रकार लिख सकते हैं: g ( b 1 , b 2 ) = b 1 + b 2  माध्य ( x 2 ) यदि आपने इस फ़ंक्शन का ग्रेडिएंट लिया (याद रखें,गुणांकका एक कार्य x का नहीं
n(जी()-जी(β))डीएन(0,जी(β)'Σजी(β))
जी
जी(1,2)=1+2 मतलब(एक्स2)
), यह होगा: [ 1 ,एक्स2 और b के लिए विचरण-सहसंयोजक मैट्रिक्सहो सकता है: [ s 11 s 12 s 12 s 22 ] इसे विचरण सूत्र में बदलना और कुछ मैट्रिक्स बीजगणित करना आपको वही अभिव्यक्ति देता है जो आप चाहते थे।
[1,मतलब(एक्स2)]'
[रों1 1रों12रों12रों22]

जीRnumDeriv

विज्ञापन: इस विशिष्ट मामले में Rकोड होगा:

v <- vcov(m)

# Define function of coefficients. Note all coefficients are included so it 
# will match dimensions of regression coefficients, this could be done more 
# elegantly in principle
g <- function(b){
    return(b[2] + b[4] * mean(x2))
}

require(numDeriv) # Load numerical derivative package

grad_g <-  jacobian(g, m$coef) # Jacobian gives dimensions, otherwise same as
                               # gradient 

sqrt(grad_g%*% v %*% t(grad_g)) # Should be exactly the same 

जी


1
इस बहुत विस्तृत जवाब के लिए धन्यवाद। मुझे लगता है कि मेरे लिए विशेष रूप से ट्रिपिंग थी जो मूल चर की बजाय गुणांक के संबंध में ग्रेडिएंट थी। तुम्हारी मदद के लिए शुक्रिया!
थॉमस

और सिर्फ एक स्पष्ट सवाल। आप mean(x2)एसई की गणना करते समय उपयोग करते हैं। क्या यह मतलब में मामूली प्रभाव के लिए नहीं होगा? मेरा अंतर्ज्ञान यह होगा कि एएमई के लिए, मुझे प्रत्येक अवलोकन के लिए एसई करना होगा और फिर उन्हें किसी तरह से औसत करना होगा।
थॉमस

1
यह लीनियर एएमई के बराबर है, जब आप औसतन औसत से मामूली अंतर के साथ समाप्त होने वाली टिप्पणियों पर औसत लेते हैं। अन्यथा आपको वास्तव में gप्रत्येक व्यक्ति के लिए सीमांत प्रभावों के औसत के रूप में परिभाषित करना होगा , और शायद संख्यात्मक ढाल का उपयोग करना होगा, मुझे यकीन नहीं है कि प्रत्येक के लिए एसई लेना काफी समान होगा।
11

1
मतलब है कि AME और ME रैखिक MEs के बराबर हैं। एसई मुझे नहीं लगता कि समकक्ष होगा क्योंकि विचरण के लिए फॉर्म द्विघात है, इसलिए इसका मतलब सिर्फ पॉप आउट नहीं होगा। मुझे इस बात के लिए अच्छा अंतर्ज्ञान नहीं है कि एसई को केवल टिप्पणियों पर क्यों नहीं जोड़ा जा सकता है, लेकिन मुझे पूरा यकीन है कि यह सच है।
12

2
ध्यान दें कि डेल्टा प्रमेय को सामान्यता की आवश्यकता नहीं है।
एलेकोस पापाडोपोलोस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.