lmer(来自R包lme4)如何计算对数似然率?

炖的

我正在尝试了解lmer功能。我已经找到了很多有关如何使用该命令的信息,但是却没有太多关于它实际上在做什么的信息(这里保存了一些神秘的注释:http : //www.bioconductor.org/help/course-materials/2008/PHSIntro/ lme4Intro-handout-6.pdf)。我正在玩以下简单示例:

library(data.table)
library(lme4)
options(digits=15)

n<-1000
m<-100
data<-data.table(id=sample(1:m,n,replace=T),key="id")
b<-rnorm(m)
data$y<-rand[data$id]+rnorm(n)*0.1
fitted<-lmer(b~(1|id),data=data,verbose=T)
fitted

我知道lmer拟合的模型形式为Y_ {ij} = beta + B_i + epsilon_ {ij},其中epsilon_ {ij}和B_i是独立的法线,分别具有方差sigma ^ 2和tau ^ 2。如果theta = tau / sigma是固定的,我用正确的均值和最小方差来计算beta的估计为

c = sum_{i,j} alpha_i y_{ij}

哪里

alpha_i = lambda/(1 + theta^2 n_i)
lambda = 1/[\sum_i n_i/(1+theta^2 n_i)]
n_i = number of observations from group i

我还计算了sigma ^ 2的以下无偏估计:

s ^ 2 = \ sum_ {i,j} alpha_i(y_ {ij}-c)^ 2 / /(1 + theta ^ 2-lambda)

这些估计似乎与lmer生产的产品相符。但是,我不知道如何在这种情况下定义对数似然。我计算出的概率密度为

pd(Y_{ij}=y_{ij}) = \prod_{i,j}[f_sigma(y_{ij}-ybar_i)]
    * prod_i[f_{sqrt(sigma^2/n_i+tau^2)}(ybar_i-beta) sigma sqrt(2 pi/n_i)]

哪里

ybar_i = \sum_j y_{ij}/n_i (the mean of observations in group i)
f_sigma(x) = 1/(sqrt{2 pi}sigma) exp(-x^2/(2 sigma)) (normal density with sd sigma)

但是上述日志不是lmer产生的。在这种情况下,如何计算对数似然度(对于奖励分数,为什么)?

编辑:更改了表示法的一致性,删除了用于标准偏差估计的错误公式。

炖的

评论中的链接包含答案。下面,我将公式简化为这个简单的示例,因为结果有些直观。

lmer拟合形式的模型Y_ {ij} = \ beta + B_i + \ epsilon_ {ij},其中\ epsilon_ {ij}双分别具有方差\ sigma ^ 2和的独立法线\你的^ 2的联合概率分布Y_ {ij}双因此是

\ left(\ prod_ {i,j} f _ {\ sigma ^ 2}(y_ {ij}-\ beta-b_i)\ right)\ left(\ prod_i f _ {\ tau ^ 2}(b_i)\ right)

哪里

f _ {\ sigma ^ 2}(x)= \ frac {1} {\ sqrt {2 \ pi \ sigma ^ 2}} e ^ {-\ frac {x ^ 2} {2 \ sigma ^ 2}}

通过将其相对于双(未观察到)积分来获得可能性

\ left(\ prod_ {i,j} f _ {\ sigma ^ 2}(y_ {ij}-\ bar y_i)\ right)\ left(\ prod_i f _ {\ sigma ^ 2 / n_i + \ tau ^ 2}(\ y_i- \ beta)\ sqrt {2 \ pi \ sigma ^ 2 / n_i} \右)

其中,你是来自组的观察次数一世\栏y_i是来自组的观察平均值一世这有点直观,因为第一个术语捕获了每个组内的差异\ sigma ^ 2,第二个术语捕获了组之间的差异。请注意,\ sigma ^ 2 / n_i + \ tau ^ 2是的方差\栏y_i

但是,默认情况下(REML = T),lmer不会使可能性最大化,而是使“ REML准则”最大化,而该“ REML准则”是通过附加积分来\ beta获得的

\ left(\ prod_ {i,j} f _ {\ sigma ^ 2}(y_ {ij}-\ bar y_i)\ right)\ left(\ prod_i f _ {\ sigma ^ 2 / n_i + \ tau ^ 2}(\ y_i- \ hat \ beta)\ sqrt {2 \ pi \ sigma ^ 2 / n_i} \ right)\ sqrt {\ frac {2 \ pi \ sigma ^ 2} {\ sum_i \ frac {n_i} {1 + n_i \\ theta ^ 2}}}

\帽子\ Beta下面给出。

最大化可能性(REML = F)

如果\ theta = \ tau / \ sigma是固定的,我们可以显式地找到\ beta\ sigma,使可能性最大化。他们原来是

\ hat \ beta = \ frac {\ sum_ {i,j} y_ {ij} /(1 + n_i \ theta ^ 2)} {\ sum_i n_i /(1 + n_i \ theta ^ 2)}

\ hat \ sigma ^ 2 = \ frac {1} {n} \ left(\ sum_ {i,j}(y_ {ij}-\ bar y_i)^ 2 + \ sum_i \ frac {n_i} {1 + n_i \ theta ^ 2}(\ bar y_i- \ hat \ beta)^ 2 \ right)

注意\帽子\西格玛^ 2在组内和组之间有两个变化项,并且\帽子\ Beta在的平均值y_ {ij}和的平均值之间,\栏y_i取决于的值\ theta

将这些替换为可能性,我们可以仅用以下升形式表达对数可能性\ theta

-2l = \ sum_i \ log(1 + n_i \ theta ^ 2)+ n(1+ \ log(2 \ pi \ hat \ sigma ^ 2))

lmer反复查找以将其值\ theta最小化。在输出中,-2升并且升分别在字段“ deviance”和“ logLik”(如果REML = F)中显示。

最大化受限可能性(REML = T)

由于REML标准不依赖\ beta,因此我们使用与上述相同的估算值\ beta我们估计\ sigma以最大化REML标准:

\ hat \ beta = \ frac {\ sum_ {i,j} y_ {ij} /(1 + n_i \ theta ^ 2)} {\ sum_i n_i /(1 + n_i \ theta ^ 2)}

\ hat \ sigma ^ 2 = \ frac {1} {n-1} \ left(\ sum_ {i,j}(y_ {ij}-\ bar y_i)^ 2 + \ sum_i \ frac {n_i} {1+ n_i \ theta ^ 2}(\ bar y_i- \ hat \ beta)^ 2 \ right)

受限制的对数似然l_R由下式给出

-2l_R = \ sum_i \ log(1 + n_i \ theta ^ 2)+(n-1)(1+ \ log(2 \ pi \ hat \ sigma ^ 2))+ \ log \ left(\ sum_i \ frac { n_i} {1 + n_i \ theta ^ 2} \右)

11聚物中的输出,-2l_R并且l_R被示出在字段“REMLdev”和(REML = T IF)分别为“logLik”。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何修改插槽lme4> 1.0

来自分类Dev

在optwrap中使用lmer掩盖了警告lme4

来自分类Dev

如何在R中编码多参数对数似然函数

来自分类Dev

lme4软件包安装在Ubuntu 12.04上失败

来自分类Dev

statsmodels与pymc中的对数似然

来自分类Dev

具有“似然”方法的R调查包函数Svyciprop

来自分类Dev

R:对数似然优化产生的NaN

来自分类Dev

从lmer对象(lme4,R)中提取随机效应的原始模型矩阵

来自分类Dev

lme4 :: lmer报告“固定效应模型矩阵秩不足”,我是否需要修复以及如何解决?

来自分类Dev

lme4计算协方差的置信区间

来自分类Dev

如何使用broom :: tidy()从lme4 :: lmer()创建的线性混合效果模型中计算p值?

来自分类Dev

使用R计算从两个正态分布的混合物中采样的一组观测值的对数似然

来自分类Dev

从R中的lme4摘要中提取列

来自分类Dev

在R中绘制对数似然函数

来自分类Dev

从R中的lme4包捕获收敛消息

来自分类Dev

R从plm对象提取对数似然

来自分类Dev

在lme4包中获得两个回归斜率之差的输出

来自分类Dev

具有lme4或其他软件包的稀疏混合模型

来自分类Dev

lme4 :: lmer永远花费(48小时以上),并且意外中止而没有报告任何警告或错误

来自分类Dev

R:使用新的lme4软件包的bootMer()进行自举二进制混合模型逻辑回归

来自分类Dev

R中的频率权重(使用lme4的多级)

来自分类Dev

R:计算最大似然估计器

来自分类Dev

在optwrap中使用lmer掩盖了警告lme4

来自分类Dev

如何在R中编写多参数对数似然函数

来自分类Dev

计算对数似然(MATLAB)时避免使用-inf

来自分类Dev

从lmer对象(lme4,R)中提取随机效应的原始模型矩阵

来自分类Dev

lme4 :: lmer摘要对象包含带字符串的双精度对象

来自分类Dev

对数似然性:R中的NA Flexmix软件包

来自分类Dev

R lme4图lmer残差〜通过ggplot中的因子水平拟合

Related 相关文章

  1. 1

    如何修改插槽lme4> 1.0

  2. 2

    在optwrap中使用lmer掩盖了警告lme4

  3. 3

    如何在R中编码多参数对数似然函数

  4. 4

    lme4软件包安装在Ubuntu 12.04上失败

  5. 5

    statsmodels与pymc中的对数似然

  6. 6

    具有“似然”方法的R调查包函数Svyciprop

  7. 7

    R:对数似然优化产生的NaN

  8. 8

    从lmer对象(lme4,R)中提取随机效应的原始模型矩阵

  9. 9

    lme4 :: lmer报告“固定效应模型矩阵秩不足”,我是否需要修复以及如何解决?

  10. 10

    lme4计算协方差的置信区间

  11. 11

    如何使用broom :: tidy()从lme4 :: lmer()创建的线性混合效果模型中计算p值?

  12. 12

    使用R计算从两个正态分布的混合物中采样的一组观测值的对数似然

  13. 13

    从R中的lme4摘要中提取列

  14. 14

    在R中绘制对数似然函数

  15. 15

    从R中的lme4包捕获收敛消息

  16. 16

    R从plm对象提取对数似然

  17. 17

    在lme4包中获得两个回归斜率之差的输出

  18. 18

    具有lme4或其他软件包的稀疏混合模型

  19. 19

    lme4 :: lmer永远花费(48小时以上),并且意外中止而没有报告任何警告或错误

  20. 20

    R:使用新的lme4软件包的bootMer()进行自举二进制混合模型逻辑回归

  21. 21

    R中的频率权重(使用lme4的多级)

  22. 22

    R:计算最大似然估计器

  23. 23

    在optwrap中使用lmer掩盖了警告lme4

  24. 24

    如何在R中编写多参数对数似然函数

  25. 25

    计算对数似然(MATLAB)时避免使用-inf

  26. 26

    从lmer对象(lme4,R)中提取随机效应的原始模型矩阵

  27. 27

    lme4 :: lmer摘要对象包含带字符串的双精度对象

  28. 28

    对数似然性:R中的NA Flexmix软件包

  29. 29

    R lme4图lmer残差〜通过ggplot中的因子水平拟合

热门标签

归档