Яка різниця між AIC () та extraAIC () в R?


11

Документація на R не проливає багато світла. Все, що я можу отримати за цим посиланням, - це те, що використання будь-якого з них повинно бути добре. Чого я не отримую, це те, чому вони не рівні.

Факт: функція покрокової регресії в R, step()використовує extractAIC().

Цікаво, що запуск lm()моделі та glm()'null' моделі (лише перехоплення) на наборі даних 'mtcars' R дає різні результати для AICта extractAIC().

> null.glm = glm(mtcars$mpg~1)
> null.lm = lm(mtcars$mpg~1)

> AIC(null.glm)
[1] 208.7555
> AIC(null.lm)
[1] 208.7555
> extractAIC(null.glm)
[1]   1.0000 208.7555
> extractAIC(null.lm)
[1]   1.0000 115.9434

Це дивно, враховуючи, що обидві моделі вище однакові, і AIC()дає однакові результати для обох.

Чи може хтось кинути світло на питання?

Відповіді:


6

Відповідно, на допомогу для цих двох функцій (використання? AIC та? ExtraAIC) цього очікується.

Зауважте, що АПК просто визначена до адитивної константи, оскільки це також стосується ймовірності лог. Це означає, що ви повинні перевірити, чи є

extractAIC(full.modell) - extractAIC(null.modell)

і

AIC(full.modell) - AIC(null.modell)

дають той же результат. Поки вони обидві функції є рівнозначними для всіх практичних цілей.


2
Мені, певно, чогось не вистачає, але я досі не розумію, чому extractAIC(null.lm) != AIC(null.lm), extractAIC(null.glm) == AIC(null.glm)хоча null.lmце та сама модель, як null.glm. Чи можете ви трохи розширити свою відповідь?
smillig

2
@smillig extractAICвикористовує різні методи для lmнападів і glmнападів, тобто, extractAIC.lmі extractAIC.glm. Ви можете використовувати getAnywhereдля вивчення їх коду. AICвикористовує однаковий метод для обох.
Роланд

У мене є кілька пар моделей (з кількома прогнозами), для яких обидві функції дають різні результати. Модель 1: y = x1 + x2, модель 2: y = z + x1 + x2 * z. extractAIC()дає нижче (негативне) значення для моделі 1, тоді як AIC дає нижче (позитивне) значення для моделі 2.
Максим.К

1
@ Maxim.K Ви даєте мало інформації про тип використовуваних змінних та моделей. Якщо у вас є і є деякі відмінності в цьому питанні, можливо, варто поставити це питання як нове запитання. Важко сказати, не знаючи деталей.
Ерік

@Erik Я сумніваюся, що це буде коштувати багато, якщо я скажу, що z є безперервним, а x2 - категоричним (деміфікованим). Одному потрібні дані для відтворення, і я не можу їх опублікувати, боюся.
Максим.К
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.