Сравнение аддитивной и мультипликативной регрессий с помощью AIC в R

Один из основных принципов, которому учат студентов в курсе статистикик заключается в том, что сравнение регрессионных моделей с помощью информационных критериев возможно только в том случае, когда выходная переменная в моделях одинаковая. Например, модель с выходной переменной \(\log(y_t)\) не может быть сравнена с моделью с \(y_t\) с помощью AIC. Причина в том, что переменные имеют разный масштаб, а значит и значение функции правдоподобия у моделей будет разное. Но есть метод, позволяющий таки провести сравнение. Всё, что нужно сделать — это понять, как распределены обе перемемнные в исходной шкале. В нашем примере мы фактически допускаем, что \(\log(y_t) \sim \mathcal{N}(0, \sigma^2_{l}) \) (где \(\sigma^2_{l}\) — это дисперсия остатков модели в логарифмах), а значит экспонента этой переменной будет распределена лог-нормально:
\begin{equation}
y_t \sim \text{log}\mathcal{N}(0, \sigma^2_{l})
\end{equation}
В качестве напоминания, все информационные критерии основаны на значения функции правдоподобия. Вот, например, формуля для AIC:
\begin{equation} \label{eq:AIC}
AIC = 2k -2\ell ,
\end{equation}
где \(k\) — число оценённых параметров, а \(\ell\) — значение функции правдоподобия.

Если использовать функцию правдоподобия лог-нормального распределения вместо нормального в \eqref{eq:AIC} для переменной \(y_t\) в логарифмах, тогда и информационные критерии будут сравнимы. Для того, чтобы понять, что нужно сделать для получения лог-нормального распределения, обратимся к соответствующим функциями. Вот нормальное для переменной \(\log y_t\):
\begin{equation} \label{eq:normal}
f(y_t | \theta, \sigma^2_{l}) = \frac{1}{\sqrt{2 \pi \sigma^2_{l}}} e ^{-\frac{\left(\log y_t -\log \mu_{t} \right)^2}{2 \sigma^2_{l}}}
\end{equation}
а вот лог-нормальное для переменной \(y_t = \exp(\log(y_t))\) (мультипликативная модель с выходной переменной в исходной шкале):
\begin{equation} \label{eq:log-normal}
f(y_t | \theta, \sigma^2_{l}) = \frac{1}{y_t} \frac{1}{\sqrt{2 \pi \sigma^2_{l}}} e ^{-\frac{\left(\log y_t -\log \mu_{t} \right)^2}{2 \sigma^2_{l}}} ,
\end{equation}
где \(\theta\) — это вектор параметров модели. Разница между \eqref{eq:normal} и \eqref{eq:log-normal} заключается в части \(\frac{1}{y_t}\). логарифм функции правдоподобия для всей выборки на основе \eqref{eq:log-normal} выглядит так:
\begin{equation} \label{eq:loglikelihoodlognormal}
\ell(\theta, \sigma^2_{l} | Y) = -\frac{1}{2} \left(T \log \left( 2 \pi {\sigma}^2_{l} \right) +\sum_{t=1}^T \frac{\left(\log y_t -\log \mu_{t} \right)^2}{2\sigma^2_{l}} \right) -\sum_{t=1}^T \log y_t ,
\end{equation}
где \(Y\) — это вектор всех фактических значений выходной перменной. Когда мы извлекаем значение функции правдоподобия модели в логарифмах, мы фактически обращаемся только к первой части \eqref{eq:loglikelihoodlognormal}, до «\(-\sum_{t=1}^T \log y_t \)», что соответствует нормальному распределению. Таким образом, для того, чтобы прийти к функции правдоподобия в исходной шкале для переменной в логарифмах, нам нужно вычесть сумму логарифмов выходной переменной.

Функция AIC() в R, применённая к модели в логарифмах, даст нам значение на основе первой части \eqref{eq:loglikelihoodlognormal}. Чтобы «починить» информационный критерий нам нужно учесть тот самый хвост из \eqref{eq:loglikelihoodlognormal} в формуле \eqref{eq:AIC}:
\begin{equation} \label{eq:AICNew}
AIC^{\prime} = 2k -2\ell + 2 \sum_{t=1}^T \log y_t = AIC + 2 \sum_{t=1}^T \log y_t,
\end{equation}

Обратимся к R. Для нашего примера мы будем использовать данные longley из пакета datasets. Для начала оценим две простые модели (аддитивную и мультипликативную):

Теперь посмотрим на информационные критерии:

Как видим, значения не сравнимы. Скорректируем второй информационный критерий:

Теперь стало намного лучше! Можем заключить, что по информационному критерию первая модель (аддитивная) лучше второй.

Эти принципы преобразования информационных критериев так же можно применить и для других случаев трансформации (корень из числа или трансформация Бокса-Кокса). Однако в этом случае нужно вывыести более сложные распределения и понять, как они связаны с нормальным, что может быть отдельной нетривиальной задачей.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *