Was sind R-Struktur G-Struktur in einem glmm?

16

Ich habe das MCMCglmmPaket vor kurzem benutzt. Ich bin verwirrt von dem, was in der Dokumentation als R-Struktur und G-Struktur bezeichnet wird. Diese scheinen sich auf die zufälligen Effekte zu beziehen - insbesondere die Angabe der Parameter für die vorherige Verteilung auf sie, aber die Diskussion in der Dokumentation scheint davon auszugehen, dass der Leser weiß, was diese Begriffe sind. Beispielsweise:

optionale Liste der früheren Spezifikationen mit 3 möglichen Elementen: R (R-Struktur) G (G-Struktur) und B (feste Effekte) ............ Die Prioritäten für die Varianzstrukturen (R und G ) sind Listen mit den erwarteten (Co) Varianzen (V) und dem Grad des Glaubensparameters (nu) für den inversen Wishart

... von hier genommen .

EDIT: Bitte beachten Sie, dass ich den Rest der Frage nach den Kommentaren von Stephane neu geschrieben habe.

Kann irgendjemand im Zusammenhang mit einem einfachen Varianzkomponentenmodell, bei dem der lineare Prädiktor mit e 0 i jN ( 0 , σ 2 0 e ) und u 0 jN ( 0 , σ 2 0 u )

β0+e0ij+u0j
e0ijN(0,σ0e2)u0jN(0,σ0u2)

Ich habe das folgende Beispiel mit einigen mitgelieferten Daten erstellt 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 ***

Basierend auf den Kommentaren von Stephane denke ich, dass die G-Struktur für . Die Kommentare besagen aber auch, dass die R-Struktur für σ 2 0 e ist, dies jedoch nicht in der Ausgabe zu erscheinen scheint .σ0u2σ0e2lme4

Beachten Sie, dass die Ergebnisse von lme4/glmer()beiden Beispielen von MCMC übereinstimmen MCMCglmm.

Ist also die R-Struktur für und warum erscheint dies nicht in der Ausgabe für ?σ0e2lme4/glmer()

Joe King
quelle
1
Mit der SAS-Terminologie (aber es ist möglicherweise eine gebräuchlichere Terminologie) ist die G-Matrix die Varianzmatrix der Zufallseffekte und die R-Matrix die Varianzmatrix der "Fehlerterme" (in Ihrem Fall ist es möglicherweise das geschätzte Residuum) Varianz ?)σ0e2
Stéphane Laurent
@ StéphaneLaurent danke. Ich habe mich gefragt, ob es wahrscheinlich aber als ich zum ersten Mal etwas über das verallgemeinerte lineare Modell erfuhr, erinnere ich mich, dass σ 2 0 e nicht geschätzt wird - nur "Abweichung" wird berechnet (wie mit ). Vielleicht fehlt mir etwas? σ0e2σ0e2lme4
Joe King
1
Vielleicht ist der Sinn der
Stéphane Laurent
1
@ Stéphane Laurent Ja! Bitte beachten Sie meinen Kommentar zu Michaels Antwort vor einer Minute - für das binäre Ergebnis sollte es behoben sein (wie in meinen Modellen in meinem OP)
Joe King
1
Wenn Sie ein ME / Multilevel-Modell haben, gibt es mehrere Abweichungen. Stellen Sie sich den einfachsten Fall vor: . Es gibt eine Varianz in den Abschnitten b i und im Fehlerterm ε i . G wird häufig für die Var-Covar-Matrix der Zufallseffekte verwendet (in diesem Fall ein Skalar, σ 2 b ) und R i für die Var-Covar-Matrix der RestvarianzenYi=β0+β1X+bi+εibiεiGσb2Riεinach Berücksichtigung der zufälligen Effekte des festen & dieses Clusters. Es wird normalerweise als eine diagonale Matrix von 's konzipiert. Außerdem werden beide Dists als multivariate Norm mit einem Mittelwert von 0 betrachtet. σ2
gung - Wiedereinsetzung von Monica

Antworten:

8

Ich würde es vorziehen, meine Kommentare unten als Kommentar zu posten, aber das würde nicht ausreichen. Dies sind eher Fragen als eine Antwort (ähnlich wie bei @gung fühle ich mich nicht stark genug für das Thema).

Ich habe den Eindruck, dass MCMCglmm kein "echtes" Bayes'sches glmm implementiert. Das wahre Bayes'sche Modell ist in Abschnitt 2 dieses Aufsatzes beschrieben . Ähnlich wie beim frequentistischen Modell hat man und es istzusätzlich zu den festen Parametern β und der "G" -Varianz derfür den Dispersionsparameter ϕ 1 eine Voreinstellung erforderlichzufälliger Effekt u .g(E(yu))=Xβ+Zuϕ1βu

Nach dieser MCMCglmm - Vignette ist das in MCMCglmm implementierte Modell jedoch gegeben durch , und es ist nichtdem Dispersionsparameter φ 1 . Es ist dem klassischen frequentistischen Modell nicht ähnlich.g(E(yu,e))=Xβ+Zu+eϕ1

Daher wundert es mich nicht, dass es bei glmer kein Analogon von gibt.σe

Bitte entschuldigen Sie diese groben Kommentare, ich habe mir das nur kurz angesehen.

Stéphane Laurent
quelle
Vielen Dank. Soll dieses Thema schwierig sein, weil ich es ziemlich schwer finde? Ich glaube, ich bin jetzt mit der Bedeutung der R- und G-Struktur zufrieden. Ich bin immer noch über den Mangel an verwechselt mit und ich bin sehr gespannt auf Ihre Bemerkung , die nicht wirklich ist Bayesian. Ich kann ehrlich nicht sagen , dass ich die gesamte Papier verstehen , dass Sie verbunden und ich bin auch mit Teilen der kämpfenden Vignette, sondern nur rein aus der Sicht meines Beispiels, glaube ich , der Dispersionsparameter φ 1 sollte konstant sein (weil die Beispiel ist binomial). Was vermisse ich ? σeglmerMCMCglmmMCMCglmmϕ1
Joe King
Entschuldigung, meine Worte waren nicht ganz passend. MCMCglmm ist wirklich Bayesianisch, aber es implementiert nicht genau das klassische glmm (glaube ich). Darüber hinaus müssen Sie sich bewusst sein, dass es schwierig ist, Prioritäten zu setzen, die eine Inferenz auf die Varianzkomponenten nahe der frequentistischen Inferenz ergeben.
Stéphane Laurent
Danke noch einmal. Während meines Studiums habe ich festgestellt, dass ich die Standard-Inverse-Wishart-Verteilung für Varianzkomponenten verwenden kann, indem ich MCMCglmmeine Vielzahl von Parametern verwende, und die zu 95% glaubwürdigen Intervalle enthalten immer den Varianzwert für die Zufallseffektschätzung vonglmer sodass ich dies für angemessen hielt , aber wie soll ich diesen fall interpretieren, der vielleicht nicht typisch ist, wo das resultat, dass die MCMCglmmintervalle nicht sehr empfindlich auf die auswahl von prior sind? Vielleicht sollte ich eine neue Frage dazu stellen?
Joe King
σe=0σe0
σeσeσuglmer
11

Rσe21 (auch für ein Probit-Modell). Bei Zähldaten (z. B. mit einer Poisson-Verteilung) wird diese nicht korrigiert, und es wird im Wesentlichen automatisch ein Überdispersionsparameter geschätzt.

GG

Ein letzter Hinweis: Da die Restvarianz nicht auf Null festgelegt ist, stimmen die Schätzungen nicht mit denen von überein glmer. Sie müssen sie neu skalieren. Hier ist ein kleines Beispiel (keine zufälligen Effekte, aber es verallgemeinert). Beachten Sie, wie die Varianz der R-Struktur auf 1 festgelegt ist.

# 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)

Hier ist die Skalierungskonstante für die Binomialfamilie:

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

Teilen Sie nun die Lösung durch und erhalten Sie die posterioren Modi

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

Welches sollte ziemlich nah an dem sein, was wir bekommen glm

summary(glm(vs ~mpg, data = mtcars, family = binomial))
Joshua
quelle
Würdest du zufällig wissen, wie man Heteroskedastizität auf Stufe 1 in MCMCglmm spezifiziert? Ist das die R-Struktur? Wie lautet dann die Syntax?
Maxim.K.
@Joshua, kannst du die "Reskalierungskonstante für die Binomialfamilie" erklären? PS: Für Saatgut 123bekomme ich (mit der Korrektur) aus m2den Werten -8.164und 0.421; und aus glmden Werten -8.833und 0.430.
Qaswed
Die Reskalierungskonstante finden Sie in Diggle et. al. ( amazon.de/Analysis-Longitudinal-Oxford-Statistical-Science/dp/… ) - gemäß cran.r-project.org/web/packages/MCMCglmm/vignettes/… Gl. 2.14 auf Seite 47.
Qaswed