Saya telah mencoba menghitung AIC dari regresi linier dalam R tetapi tanpa menggunakan AIC
fungsi, seperti ini:
lm_mtcars <- lm(mpg ~ drat, mtcars)
nrow(mtcars)*(log((sum(lm_mtcars$residuals^2)/nrow(mtcars))))+(length(lm_mtcars$coefficients)*2)
[1] 97.98786
Namun, AIC
memberikan nilai berbeda:
AIC(lm_mtcars)
[1] 190.7999
Bisakah seseorang memberi tahu saya apa yang saya lakukan salah?
r
aic
information-theory
luciano
sumber
sumber
AIC
digunakan fungsi adalah-2*as.numeric(logLik(lm_mtcars))+2*(length(lm_mtcars$coefficients)+1)
.logLik
mengatakan bahwa untuklm
model itu termasuk 'semua konstanta' ... jadi akan adalog(2*pi)
di sana di suatu tempatJawaban:
Perhatikan bahwa bantuan pada fungsiσ2
logLik
dalam R mengatakan bahwa untuklm
model itu termasuk 'semua konstanta' ... sehingga akan adalog(2*pi)
di sana di suatu tempat, serta istilah konstan lain untuk eksponen dalam kemungkinan. Juga, Anda tidak bisa lupa untuk menghitung fakta bahwa adalah parameter.tetapi perhatikan bahwa untuk model dengan 1 variabel independen, p = 3 (koefisien x, konstanta dan )σ2
Yang artinya ini adalah bagaimana Anda mendapatkan jawaban mereka:
sumber
AIC
sumber