โครงสร้าง G-R คืออะไรใน glmm?


16

ฉันใช้MCMCglmmแพ็กเกจเมื่อเร็ว ๆ นี้ ฉันสับสนกับสิ่งที่อ้างถึงในเอกสารประกอบว่า R-structure และ G-structure สิ่งเหล่านี้ดูเหมือนจะเกี่ยวข้องกับเอฟเฟกต์แบบสุ่มโดยเฉพาะอย่างยิ่งการระบุพารามิเตอร์สำหรับการแจกแจงก่อนหน้านี้ แต่การอภิปรายในเอกสารประกอบดูเหมือนว่าจะถือว่าผู้อ่านรู้ว่าคำเหล่านี้คืออะไร ตัวอย่างเช่น:

รายการตัวเลือกของข้อกำหนดก่อนหน้านี้มี 3 องค์ประกอบที่เป็นไปได้: R (โครงสร้าง R) G (โครงสร้าง G) และ B (ลักษณะพิเศษคงที่) ............ Priors สำหรับโครงสร้างความแปรปรวน (R และ G ) คือรายการที่มีค่าความแปรปรวน (co) (V) และระดับของพารามิเตอร์ความเชื่อ (nu) สำหรับ inverse-Wishart

... นำมาจากจากที่นี่

แก้ไข: โปรดทราบว่าฉันได้เขียนคำถามที่เหลืออีกครั้งตามความคิดเห็นจากสเตฟาน

ทุกคนสามารถให้แสงสว่างในสิ่งที่โครงสร้าง R และโครงสร้าง G ในบริบทของรูปแบบส่วนประกอบความแปรปรวนแบบง่ายโดยที่ตัวทำนายเชิงเส้นคือ

β0+e0ij+u0j
กับe0ijN(0,σ0e2)และu0jN(0,σ0u2)

ฉันทำตัวอย่างต่อไปนี้ด้วยข้อมูลบางอย่างที่มาพร้อมกับ MCMCglmm

> require(MCMCglmm)
> require(lme4)
> data(PlodiaRB)
> prior1 = list(R = list(V = 1, fix=1), G = list(G1 = list(V = 1, nu = 0.002)))
> m1 <- MCMCglmm(Pupated ~1, random = ~FSfamily, family = "categorical", 
+ data = PlodiaRB, prior = prior1, verbose = FALSE)
> summary(m1)


 G-structure:  ~FSfamily

         post.mean l-95% CI u-95% CI eff.samp
FSfamily    0.8529   0.2951    1.455      160

 R-structure:  ~units

      post.mean l-95% CI u-95% CI eff.samp
units         1        1        1        0

 Location effects: Pupated ~ 1 

            post.mean l-95% CI u-95% CI eff.samp  pMCMC    
(Intercept)   -1.1630  -1.4558  -0.8119    463.1 <0.001 ***
---

> prior2 = list(R = list(V = 1, nu = 0), G = list(G1 = list(V = 1, nu = 0.002)))
> m2 <- MCMCglmm(Pupated ~1, random = ~FSfamily, family = "categorical", 
+ data = PlodiaRB, prior = prior2, verbose = FALSE)
> summary(m2)


 G-structure:  ~FSfamily

         post.mean l-95% CI u-95% CI eff.samp
FSfamily    0.8325   0.3101    1.438    79.25

 R-structure:  ~units

      post.mean l-95% CI u-95% CI eff.samp
units    0.7212  0.04808    2.427    3.125

 Location effects: Pupated ~ 1 

            post.mean l-95% CI u-95% CI eff.samp  pMCMC    
(Intercept)   -1.1042  -1.5191  -0.7078    20.99 <0.001 ***
---

> m2 <- glmer(Pupated ~ 1+ (1|FSfamily), family="binomial",data=PlodiaRB)
> summary(m2)
Generalized linear mixed model fit by the Laplace approximation 
Formula: Pupated ~ 1 + (1 | FSfamily) 
   Data: PlodiaRB 
  AIC  BIC logLik deviance
 1020 1029   -508     1016
Random effects:
 Groups   Name        Variance Std.Dev.
 FSfamily (Intercept) 0.56023  0.74849 
Number of obs: 874, groups: FSfamily, 49

Fixed effects:
            Estimate Std. Error z value Pr(>|z|)    
(Intercept)  -0.9861     0.1344  -7.336  2.2e-13 ***

ดังนั้นขึ้นอยู่กับความคิดเห็นจากสเตฟานผมคิดว่าโครงสร้าง G สำหรับยู แต่ความเห็นยังบอกว่าโครงสร้าง R คือสำหรับσ 2 0 Eๆ นี้ดูเหมือนจะไม่ปรากฏในการส่งออกσ0u2σ0e2lme4

โปรดทราบว่าผลที่ได้จากlme4/glmer()มีความสอดคล้องกับตัวอย่างทั้งจาก MCMCglmmMCMC

ดังนั้นเป็นโครงสร้าง R สำหรับและทำไมไม่ได้นี้จะปรากฏในการส่งออกสำหรับ?σ0e2lme4/glmer()


1
ด้วยคำศัพท์ SAS (แต่อาจเป็นคำศัพท์ทั่วไป), G matrix คือเมทริกซ์ความแปรปรวนของเอฟเฟกต์แบบสุ่มและเมทริกซ์ R คือเมทริกซ์ความแปรปรวนของ "เงื่อนไขข้อผิดพลาด" (ในกรณีของคุณอาจเป็นค่าประมาณที่เหลือ ความแปรปรวน ?)σ0e2
Stéphane Laurent

@ StéphaneLaurentขอบคุณ ผมสงสัยว่ามันอาจจะมีประมาณแต่เมื่อครั้งแรกที่ผมได้เรียนรู้เกี่ยวกับรูปแบบเชิงเส้นทั่วไปผมจำได้ว่าσ 2 0 Eไม่ได้ประมาณ - เท่านั้น "เบี่ยงเบน" จะถูกคำนวณ (เช่นเดียวกับ) บางทีฉันอาจจะหายไปบางสิ่งบางอย่าง? σ0e2σ0e2lme4
Joe King

1
บางทีความรู้สึกของความแปรปรวนที่เหลืออาจไม่ชัดเจนเมื่อตระกูลการกระจายไม่ใช่แบบเกาส์
Stéphane Laurent

1
@ Stéphane Laurent ใช่! โปรดดูความคิดเห็นของฉันที่จะตอบของไมเคิลนาทีที่ผ่านมา - สำหรับผลไบนารีก็ควรได้รับการแก้ไข (ในขณะที่รูปแบบของฉันใน OP ของฉัน)
โจคิง

1
เมื่อคุณมีโมเดล ME / หลายระดับจะมีความแปรปรวนหลายอย่าง ลองจินตนาการถึงกรณีที่ง่ายที่สุด: ฉัน มีความแปรปรวนในการดักคือฉันและในระยะข้อผิดพลาดεฉัน Gมักใช้สำหรับเมทริกซ์วาร์โควาร์ของเอฟเฟกต์แบบสุ่ม (ในกรณีนี้คือสเกลาร์, σ 2 b ) และR ฉันสำหรับเมทริกซ์วาร์โควาร์ของผลต่างที่เหลือε ฉันYi=β0+β1X+bi+εibiεiGσb2Riεiหลังจากการบัญชีสำหรับเอฟเฟกต์สุ่มและคงที่ของคลัสเตอร์นั้น มันมักจะคิดว่าเป็นเมทริกซ์แนวทแยงของσ2 's นอกจากนี้ dists ทั้งสองยังถูกพิจารณาว่าเป็นตัวแปรหลายตัวแปรที่มีค่าเฉลี่ย = 0
gung - Reinstate Monica

คำตอบ:


8

ฉันต้องการโพสต์ความคิดเห็นของฉันด้านล่างเป็นความคิดเห็น แต่นี่คงไม่เพียงพอ เหล่านี้เป็นคำถามมากกว่าคำตอบ (คล้ายกับ @ gung ฉันรู้สึกไม่แข็งแรงพอในหัวข้อ)

ฉันอยู่ภายใต้การแสดงผลที่ MCMCglmm ไม่ได้ใช้ "จริง" Bayesian glmm แบบจำลองเบย์จริงอธิบายไว้ในส่วนที่ 2 ของบทความนี้ ในทำนองเดียวกันกับรูปแบบ frequentist หนึ่งมีและมีความจำเป็นก่อนในพารามิเตอร์กระจายφ 1นอกเหนือไปจากพารามิเตอร์คงเบต้าและ "G" ความแปรปรวนของ ผลสุ่มยูg(E(yu))=Xβ+Zuϕ1βu

แต่ตามนี้บทความ MCMCglmmรูปแบบการดำเนินการใน MCMCglmm จะได้รับโดย และมันไม่ได้เกี่ยวข้องกับการกระจายตัวของพารามิเตอร์φ 1 มันไม่ได้คล้ายกับรูปแบบคลาสสิคบ่อยg(E(yu,e))=Xβ+Zu+eϕ1

ดังนั้นฉันจะไม่ประหลาดใจว่ามีอะนาล็อกของไม่มีกับ glmerσe

โปรดขอโทษสำหรับความคิดเห็นคร่าวๆเหล่านี้ฉันเพิ่งดูอย่างรวดเร็วเกี่ยวกับเรื่องนั้น


ขอขอบคุณ. หัวข้อนี้ควรจะยากไหมเพราะฉันพบว่ามันค่อนข้างยาก? ฉันคิดว่าฉันพอใจกับความหมายของโครงสร้าง R และ G ในตอนนี้ ฉันยังคงสับสนเกี่ยวกับการขาดσอี with glmer and I am very curious about your comment that MCMCglmm is not truly Bayesian. I can't honestly say I understand all of the paper that you linked to and I am also struggling with parts of the MCMCglmm vignette, but just purely from the perspective of my example, I believe the dispersion parameter ϕ1should be constant (because the example is binomial). What am I missing ?
Joe King

Sorry, my words were not totally appropriate. MCMCglmm is truly Bayesian, but it does not exactly implement the classical glmm (I think). In addition you have to be aware that it is difficult to set priors yielding an inference on the variance components close to the frequentist inference.
Stéphane Laurent

Thanks again. In my studying I have found that I can use the default inverse-wishart distribution for variance components in MCMCglmm using a variety of parameters, and the 95% credible intervals always contain the variance value for the random effects estimate by glmer so I felt that this was reasonable, but how should I interpret this case, which may not be typical, where the result that the MCMCglmm intervals are not very sensitive to choice of prior ? Maybe I should ask a new question about this ?
Joe King

Maybe you have a big sample size ? In regards to your initial question, I am under the impression that, at least for the binomial case, the glmer model is equivalent to the MCMCglmm model with σe=0. What happens if you set a prior on σe highly concentrated at 0 ?
Stéphane Laurent

Yes, I have a quite large sample size: 50,000 observations in 225 clusters (my own data, not the example in my question). When I set a prior very concentrated near zero on σe, by setting V=0.01 and nu=100 then I obtain 0.25 (CI: 0.16, 0.29) for σe and 0.53 (0.38, 0.73) for σu. When I set a less informative prior, with V=10 and nu=0.01 then I obtain 0.18 (0.12, 0.23) and 0.49 (0.34, 0.63) respectively. This compares with 0.51 from glmer. I even tried an improper flat prior, which gave 0.10 (0.08, 0.13) and 0.47 (0.25, 0.68).
Joe King

11

I am late to the game, but a few notes. The R structure is the residual structure. In your case, the "structure" only has a single element (but this need not be the case). For Gaussian response variable, the residual variance, σe2 is typically estimated. For binary outcomes, it is held constant. Because of how MCMCglmm is setup, you cannot fix it at zero, but it is relatively standard to fix it at 1 (also true for a probit model). For count data (e.g., with a poisson distribution), you do not fix it and this automatically estimates an overdispersion parameter essentially.

The G structure is the random effects structure. Again in your case, just a random intercept, but if you had multiple random effects, they would form a variance-covariance matrix, G.

A final note, because the residual variance is not fixed at zero, the estimates will not match those from glmer. You need to rescale them. Here is a little example (not using random effects, but it generalizes). Note how the R structure variance is fixed at 1.

# example showing how close the match is to ML without separation
m2 <- MCMCglmm(vs ~ mpg, data = mtcars, family = "categorical",
  prior = list(
    B = list(mu = c(0, 0), V = diag(2) * 1e10),
    R = list(V = 1, fix = 1)),
  nitt = 1e6, thin = 500, burnin = 10000)
summary(m2)

Here is the rescaling constant for the binomial family:

k <- ((16*sqrt(3))/(15*pi))^2

Now divide the solution by it, and get the posterior modes

posterior.mode(m2$Sol/(sqrt(1 + k)))

Which should be fairly close to what we get from glm

summary(glm(vs ~mpg, data = mtcars, family = binomial))

would you happen to know how to specify heteroskedasticity on level one in MCMCglmm? Is that the R structure? What is the syntax then?
Maxim.K

@Joshua, can you explain the "rescaling constant for the binomial family"? PS: For seed 123, I get (with the correction) from m2 the values -8.164 and 0.421; and from glm the values -8.833 and 0.430.
Qaswed

The rescaling constant can be found in Diggle et. al. (amazon.de/Analysis-Longitudinal-Oxford-Statistical-Science/dp/…) - according to cran.r-project.org/web/packages/MCMCglmm/vignettes/… eq. 2.14 on page 47.
Qaswed
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.