それらの違いは、モデル内のグループ化変数が固定効果またはランダム効果として推定されるかどうかに関連することを理解していますが、なぜ同じではないのかは分かりません(同じでない場合)。
小面積推定を使用する場合、これが関連する場合、これがどのように機能するかに特に興味がありますが、質問は固定効果とランダム効果の適用に関連していると思われます。
それらの違いは、モデル内のグループ化変数が固定効果またはランダム効果として推定されるかどうかに関連することを理解していますが、なぜ同じではないのかは分かりません(同じでない場合)。
小面積推定を使用する場合、これが関連する場合、これがどのように機能するかに特に興味がありますが、質問は固定効果とランダム効果の適用に関連していると思われます。
回答:
BLUPから取得する値は、固定効果の青の推定値と同じ方法では推定されません。慣例でBLUPsは予測と呼ばれます。混合効果モデルを近似する場合、最初に推定されるのは、ランダム効果の平均と分散(および場合によっては共分散)です。与えられた学習単位(学生など)の変量効果は、推定された平均と分散、およびデータから計算されます。単純な線形モデルでは、平均が推定されます(残差分散と同様)が、観測されたスコアは、それと誤差(ランダム変数)の両方で構成されていると見なされます。混合効果モデルでは、特定のユニットの効果は同様にランダム変数です(何らかの意味で既に実現されていますが)。
必要に応じて、そのようなユニットを固定効果として扱うこともできます。その場合、そのユニットのパラメーターは通常どおり推定されます。ただし、このような場合、ユニットの抽出元の人口の平均(たとえば)は推定されません。
さらに、ランダム効果の背後にある仮定は、それらがいくつかの母集団からランダムにサンプリングされたということであり、それはあなたが気にする母集団です。固定効果の根底にあるのは、それらのユニットがあなたが気にしている唯一のユニットだからです。
向きを変えて混合効果モデルを近似し、それらの同じ効果を予測すると、それらは固定効果の推定値と比較して母平均に対して「縮小」する傾向があります。これは、推定平均と分散が正常な事前分布を指定し、BLUPが事前分布とデータを最適に結合することで得られる事後分布の平均のようなベイズ分析に類似していると考えることができます。
収縮の量は、いくつかの要因に基づいて異なります。変量効果の予測が固定効果の推定値からどれだけ離れているかの重要な決定要因は、変量効果の分散と誤差分散の比です。ここに、R
平均(切片)のみをもつ5つの「レベル2」ユニットを使用した最も単純なケースの簡単なデモを示します。(これはクラス内の学生のテストスコアと考えることができます。)
library(lme4) # we'll need to use this package
set.seed(1673) # this makes the example exactly reproducible
nj = 5; ni = 5; g = as.factor(rep(c(1:nj), each=ni))
##### model 1
pop.mean = 16; sigma.g = 1; sigma.e = 5
r.eff1 = rnorm(nj, mean=0, sd=sigma.g)
error = rnorm(nj*ni, mean=0, sd=sigma.e)
y = pop.mean + rep(r.eff1, each=ni) + error
re.mod1 = lmer(y~(1|g))
fe.mod1 = lm(y~0+g)
df1 = data.frame(fe1=coef(fe.mod1), re1=coef(re.mod1)$g)
##### model 2
pop.mean = 16; sigma.g = 5; sigma.e = 5
r.eff2 = rnorm(nj, mean=0, sd=sigma.g)
error = rnorm(nj*ni, mean=0, sd=sigma.e)
y = pop.mean + rep(r.eff2, each=ni) + error
re.mod2 = lmer(y~(1|g))
fe.mod2 = lm(y~0+g)
df2 = data.frame(fe2=coef(fe.mod2), re2=coef(re.mod2)$g)
##### model 3
pop.mean = 16; sigma.g = 5; sigma.e = 1
r.eff3 = rnorm(nj, mean=0, sd=sigma.g)
error = rnorm(nj*ni, mean=0, sd=sigma.e)
y = pop.mean + rep(r.eff3, each=ni) + error
re.mod3 = lmer(y~(1|g))
fe.mod3 = lm(y~0+g)
df3 = data.frame(fe3=coef(fe.mod3), re3=coef(re.mod3)$g)
誤差分散にランダム効果の分散の比率が1/5のためにあるのでmodel 1
、ために5/5 model 2
のため、および5/1 model 3
。ここで使用したレベルは、固定効果モデルのコーディングを意味します。これらの3つのシナリオについて、推定固定効果と予測変量効果がどのように比較されるかを調べることができます。
df1
# fe1 re1
# g1 17.88528 15.9897
# g2 18.38737 15.9897
# g3 14.85108 15.9897
# g4 14.92801 15.9897
# g5 13.89675 15.9897
df2
# fe2 re2
# g1 10.979130 11.32997
# g2 13.002723 13.14321
# g3 26.118189 24.89537
# g4 12.109896 12.34319
# g5 9.561495 10.05969
df3
# fe3 re3
# g1 13.08629 13.19965
# g2 16.36932 16.31164
# g3 17.60149 17.47962
# g4 15.51098 15.49802
# g5 13.74309 13.82224
固定効果の推定に近いランダム効果の予測になる別の方法は、より多くのデータがある場合です。model 1
ランダム効果の分散とエラーの分散の比率が低い上model 1b
で、同じ比率でより多くのデータを持つバージョン()と比較することができます(ni = 500
代わりに注意してくださいni = 5
)。
##### model 1b
nj = 5; ni = 500; g = as.factor(rep(c(1:nj), each=ni))
pop.mean = 16; sigma.g = 1; sigma.e = 5
r.eff1b = rnorm(nj, mean=0, sd=sigma.g)
error = rnorm(nj*ni, mean=0, sd=sigma.e)
y = pop.mean + rep(r.eff1b, each=ni) + error
re.mod1b = lmer(y~(1|g))
fe.mod1b = lm(y~0+g)
df1b = data.frame(fe1b=coef(fe.mod1b), re1b=coef(re.mod1b)$g)
効果は次のとおりです。
df1
# fe1 re1
# g1 17.88528 15.9897
# g2 18.38737 15.9897
# g3 14.85108 15.9897
# g4 14.92801 15.9897
# g5 13.89675 15.9897
df1b
# fe1b re1b
# g1 15.29064 15.29543
# g2 14.05557 14.08403
# g3 13.97053 14.00061
# g4 16.94697 16.92004
# g5 17.44085 17.40445
多少関連する注意事項として、Doug Bates(Rパッケージlme4の作成者)は「BLUP」という用語を好まず、代わりに「条件付きモード」を使用します(lme4本のpdfの 22〜23ページを参照)。特に、セクション1.6では、「BLUP」は線形混合効果モデルにのみ意味のある使用が可能であると指摘しています。