Rのnls のAIC計算の暗黙の前提

Rのnls のAIC計算の暗黙の前提。
nlsのAICは等分散の正規分布を前提にしているので

分布が異なるときは中止

###
nlsモデルのAICは正規分布の標準偏差一定を仮定。


y<-x^2+rnorm(length(x))

ans<-nls(y~a*x^2+b,start=c(a=1,b=1))

sigma2<-(mean((y-predict(ans))^2))
-length(y)/2*log(2*pi*sigma2)-length(y)/2
#-15.4633

logLik(ans)
#-15.4633

-2*logLik(ans)+2*3
#36.92661 (df=3)
AIC(ans)
#[1] 36.92661

 

y<-x^2+(rexp(length(x))-1)
ans<-nls(y~a*x^2+b,start=c(a=1,b=1))
sigma2<-(mean((y-predict(ans))^2))
-length(y)/2*log(2*pi*sigma2)-length(y)/2
# -17.74635

logLik(ans)
#-17.74635

-2*logLik(ans)+2*3
# 41.4927 (df=3)
AIC(ans)
#41.4927


y<-x^2+(rnorm(length(x),sd=0.05*x^2))
ans<-nls(y~a*x^2+b,start=c(a=1,b=1))
sigma2<-(mean((y-predict(ans))^2))

-length(y)/2*log(2*pi*sigma2)-length(y)/2
-29.48691

logLik(ans)
'log Lik.' -29.48691 (df=3)

-2*logLik(ans)+2*3
'log Lik.' 64.97381 (df=3)

AIC(ans)
64.97381