2

我有一个模型:

lmer(y ~ x + z + (1|g) + (1|dummy) , data = dat)

dummy个人水平随机效应在哪里解释过度分散,即factor(1:nrow(dat))

运行此程序时,我收到以下我不明白的错误。这是否意味着我过度拟合了我的模型?

checkNlevels(reTrms$flist, n = n, control) 中的错误:每个分组因子的水平数必须 < 观察数

但是,当我与家人一起运行此模型时,poisson我没有收到此错误,例如

glmer(y ~ x + z + (1|g) + (1|dummy) , data = dat, family = poisson)

我知道个体水平的随机效应在高斯 GLMM 中甚至可能没有意义,但我想知道泊松示例是否对我隐藏了某些东西,表明模型过度拟合?

4

2 回答 2

3

过度离散在正态模型中并不是一个真正有用的概念,因为它已经拟合了观测级别变异性的方差。因此,错误消息告诉您在观察级别不能有分组因子。从这个意义上说,是的,您正试图过度拟合您的模型。

然而,在泊松(或其他 glm)模型中,它确实有意义,因为观察级别的可变性根据 glm 中的方差项是固定的,因此向模型以考虑观察级别的任何额外可变性。因此glmer不做同样的检查lmer

于 2014-03-26T13:54:15.793 回答
2

这实际上更像是一个CrossValidated问题,但是:

  • 线性混合模型的定义默认包含残差项;换句话说,该模型已经估计了残差中的离散量。如果您在公式中包含观察级别的随机效应,则其方差将与残差方差混淆(这两项将无法共同识别;将有一组同样好的拟合模型,其中两个方差总和为持续的)。这个问题不一定会严重影响模型的其余部分,但是包含这样一个无法识别的术语通常意味着你犯了一个错误/不太明白你在做什么,所以默认行为是返回一个这种情况下的错误。如果您确实有充分的理由适合此模型,则可以使用lmerControl覆盖错误。
  • 最常见的广义线性混合模型(即泊松和二项式)的定义包括残差项——特别是,泊松和二项式模型的“尺度参数”根据定义固定为 1。因此,数据中可能存在过度分散。处理此问题的标准方法之一是添加一个观察级别的随机效应,就像您在上面所做的那样。由于模型中没有默认的残差方差项,因此没有任何可疑之处,glmer也没有抱怨。

有关更多详细信息和参考,请参见例如http://glmm.wikidot.com/faq#overdispersion_est

于 2014-03-26T13:54:40.317 回答