R語(yǔ)言如何解決線(xiàn)性混合模型中畸形擬合(Singular fit)的問(wèn)題
原文鏈接:http://tecdat.cn/?p=14506
?
?
假設(shè)我們有一個(gè)模型
mod <- Y ~ X*Condition + (X*Condition|subject)
# Y = logit variable
# X = continuous variable
# Condition = values A and B, dummy coded; the design is repeated
# ? ? ? ? ? ? so all participants go through both Conditions
# subject = random effects for different subjects
summary(model)
Random effects:
Groups ?Name ? ? ? ? ? ? Variance Std.Dev. Corr
subject (Intercept) ? ? ?0.85052 ?0.9222
X ? ? ? ? ? ? ? ?0.08427 ?0.2903 ? -1.00
ConditionB ? ? ? 0.54367 ?0.7373 ? -0.37 ?0.37
X:ConditionB ? ? 0.14812 ?0.3849 ? ?0.26 -0.26 -0.56
Number of obs: 39401, groups: ?subject, 219
Fixed effects:
Estimate Std. Error z value Pr(>|z|)
(Intercept) ? ? ? 2.49686 ? ?0.06909 ? 36.14 ?< 2e-16 ***
X ? ? ? ? ? ? ? ?-1.03854 ? ?0.03812 ?-27.24 ?< 2e-16 ***
ConditionB ? ? ? -0.19707 ? ?0.06382 ? -3.09 ?0.00202 **
X:ConditionB ? ? ?0.22809 ? ?0.05356 ? ?4.26 2.06e-05 ***
在這里,我們觀(guān)察到奇異擬合,因?yàn)榻鼐嗪蛒隨機(jī)效應(yīng)之間的相關(guān)性是-1。處理該模型的一種方法是刪除高階隨機(jī)效應(yīng)(例如X:ConditionB),并查看在測(cè)試奇異性時(shí)是否有區(qū)別另一種是使用貝葉斯方法,例如blme軟件包以避免奇異性。
?
什么是首選方法,為什么?
我之所以這樣問(wèn),是因?yàn)槭褂玫谝粋€(gè)或第二個(gè)會(huì)導(dǎo)致不同的結(jié)果-在第一種情況下,我將刪除X:ConditionB隨機(jī)效應(yīng),并且無(wú)法估計(jì)X和X:ConditionB隨機(jī)效應(yīng)之間的相關(guān)性。另一方面,使用blme允許我保留X:ConditionB并估計(jì)給定的相關(guān)性。
通常有以下幾種解決辦法:
?
1.處理此模型的一種方法是刪除高階隨機(jī)效應(yīng)(高Variance?),并查看在測(cè)試奇異性時(shí)是否有所不同。
當(dāng)獲得奇異擬合時(shí),這通常表明模型過(guò)度擬合-也就是說(shuō),隨機(jī)效應(yīng)結(jié)構(gòu)太復(fù)雜而無(wú)法由數(shù)據(jù)支持,這自然導(dǎo)致建議刪除隨機(jī)效應(yīng)中最復(fù)雜的部分結(jié)構(gòu)(通常是隨機(jī)斜率)。這種方法的好處在于,它生成了一個(gè)更加簡(jiǎn)約的模型,但并沒(méi)有過(guò)度擬合
?
2.另一種是使用貝葉斯方法,例如blme軟件包以避免奇異性。
如果希望使用最大隨機(jī)效應(yīng)結(jié)構(gòu)來(lái)擬合模型,并且lme4獲得奇異擬合,那么在貝葉斯框架中擬合相同的模型可能很好地通過(guò)檢查跡線(xiàn)圖以及各種參數(shù)的好壞來(lái)告知lme4為什么會(huì)出現(xiàn)問(wèn)題估計(jì)收斂。采用貝葉斯方法的優(yōu)點(diǎn)是,這樣做可能會(huì)發(fā)現(xiàn)原始模型的問(wèn)題。 (數(shù)據(jù)不支持最大隨機(jī)效應(yīng)結(jié)構(gòu)的原因),或者可能揭示lme4無(wú)法擬合模型的原因。
簡(jiǎn)而言之,以上兩種方法都有其優(yōu)點(diǎn)。
?
3.與其他線(xiàn)性模型一樣,固定效應(yīng)中的共線(xiàn)性可能導(dǎo)致奇異擬合。
那將需要通過(guò)刪除條款來(lái)修改模型。但是,在lmer中,當(dāng)估計(jì)隨機(jī)效應(yīng)方差非常接近零并且(非常寬松地)數(shù)據(jù)不足以拖動(dòng)時(shí),也可以在非常簡(jiǎn)單的模型中觸發(fā)該警告(或“邊界(奇異)擬合”警告)。估計(jì)遠(yuǎn)離零起始值。
兩種方法的正式答案大致相似。刪除估計(jì)為零的字詞。但是有時(shí)候,可以忽略不計(jì)的方差是合理的,但是希望將其保留在模型中。例如,因?yàn)檎诠室鈱ふ铱赡艽嬖谳^小差異的區(qū)間,或者可能正在進(jìn)行多個(gè)類(lèi)似實(shí)驗(yàn),并且希望始終提取所有差異,可以通過(guò)lmerControl禁止顯示這些警告,可以將其設(shè)置為不使用相關(guān)測(cè)試。例如,可以包括
control=glmerControl(check.conv.singular = .makeCC(action = "ignore", ?tol = 1e-4))
這保留了默認(rèn)公差(makeCC需要),但是抑制了奇異擬合測(cè)試。 (默認(rèn)值為action =“ warning”,它將運(yùn)行測(cè)試并發(fā)出警告)。
?
4.嘗試重新調(diào)整預(yù)測(cè)變量x,例如,
lmerfit <- glmer(y~ I(x/10) +
??????????????????(1 + I(x/10) | s), data = d)
?
并且還可以使用nlme :: lme(),即
?lmefit <- lme(y~ x, data = d,
???????????????random = ~ x| s)
?
要么
?
?lmefit <- lme(y~ I(x/10), data = d,
???????????????random = ~ I(x/10) | s)
?
并且還可能將優(yōu)化算法更改為lme()中的最優(yōu)化;
或者
library(GLMMadaptive)
model4 <- mixed_model(fixed = y ~ x, random = ~ 1 | group,
???????????????data = data,
???????????????family = binomial(link="logit"))
library(glmmTMB)
model4 <- glmmTMB(y ~ x + (1 | group),
????????????????data = data,
????????????????family = binomial(link = "logit"))
查看原文:http://tecdat.cn/?p=14506?


參考文獻(xiàn):
1.基于R語(yǔ)言的lmer混合線(xiàn)性回歸模型
2.R語(yǔ)言用Rshiny探索lme4廣義線(xiàn)性混合模型(GLMM)和線(xiàn)性混合模型(LMM)
3.R語(yǔ)言線(xiàn)性混合效應(yīng)模型實(shí)戰(zhàn)案例
4.R語(yǔ)言線(xiàn)性混合效應(yīng)模型實(shí)戰(zhàn)案例2
5.R語(yǔ)言線(xiàn)性混合效應(yīng)模型實(shí)戰(zhàn)案例
6.線(xiàn)性混合效應(yīng)模型Linear Mixed-Effects Models的部分折疊Gibbs采樣
7.R語(yǔ)言L(fǎng)ME4混合效應(yīng)模型研究教師的受歡迎程度
8.R語(yǔ)言中基于混合數(shù)據(jù)抽樣(MIDAS)回歸的HAR-RV模型預(yù)測(cè)GDP增長(zhǎng)
9.使用SAS,Stata,HLM,R,SPSS和Mplus的分層線(xiàn)性模型HLM