우리가 글머를 다시 장착하면 모델이 수렴하기 어려운 시간을 찾고 있다는 경고를받을 수 있습니다 ... 예 :
>Warning message:
In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
Model failed to converge with max|grad| = 0.00389462 (tol = 0.001)
@Ben Bolker 가이 스레드 에서 설명한 수렴을 확인하는 다른 방법 은 다음과 같습니다.
relgrad <- with(model@optinfo$derivs,solve(Hessian,gradient))
max(abs(relgrad))
#[1] 1.152891e-05
만약 max(abs(relgrad))
에<0.001
다음이 경우에 우리가 충돌하는 결과가 그래서 일이 ... 확인 될 수 있을까요? 모델에 맞는 방법을 선택하고 안전하다고 생각해야합니까?
반면에 다음과 같은 극단적 인 가치를 얻을 때
>Warning message:
In checkConv(attr(opt, "derivs"), opt$par, ctrl = control$checkConv, :
Model failed to converge with max|grad| = 35.5352 (tol = 0.001)
relgrad <- with(model@optinfo$derivs,solve(Hessian,gradient))
max(abs(relgrad))
#[1] 0.002776518
이는 모델 결과 / 추정 / p- 값을 무시해야한다는 의미입니까? 진행하기에 0.0027이 너무 큽니까?
다른 옵티마이 저가 다른 결과를 제공하고 변수의 중심을 맞추거나 매개 변수를 제거 (모형을 최소로 줄임)하는 것이 도움이되지 않지만 VIF가 낮고, 모델이 과도하게 분산되지 않으며, 모델 결과가 사전 예상에 따라 논리적으로 의미가있는 경우, 알기 어려운 것 같습니다 해야 할 일.
컨버전스 문제를 해석하는 방법에 대한 조언, 실제로 우리를 걱정하게 만드는 데 필요한 극단과 언급 된 것 이상으로 문제를 관리하는 방법은 매우 도움이 될 것입니다.
사용 :
R version 3.1.0 (2014-04-10)
및lme4_1.1-6
lme4
(버전 1.1-7)은 저자가 "거짓 경보"경고를 줄 가능성이 적다고 생각하는 경고 동작이 다릅니다.lme4
최신 버전으로 업데이트 하고 모델을 다시 맞추고 적어도 첫 번째 경우에는 여전히 비슷한 경고가 표시되는지 확인할 수 있습니다.