Общие линейные модели и гамма-регрессия

Гамма-регрессия — это тип обобщенной линейной модели (GLM), которую можно использовать для моделирования непрерывных неотрицательных данных, и это более гибкая модель, чем линейная регрессия. В модели гамма-регрессии предполагается, что зависимая переменная распределена в соответствии с гамма-распределением. Независимые переменные используются для прогнозирования среднего значения (μ) гамма-распределения.

В контексте GLM функция связи — это функция, которая применяется к прогнозируемому среднему значению и является линейной функцией предикторов. Функция связи в модели гамма-регрессии обычно представляет собой логарифмическую связь, что означает, что если g(µ) является функцией связи, g(µ) = log(µ).

Некоторые преимущества гамма-регрессии по сравнению с типичной линейной регрессией:

  • Его можно использовать для моделирования искаженных данных. Линейная регрессия предполагает, что данные распределены нормально, но это не всегда так. Гамма-регрессия может использоваться для моделирования данных, которые смещены вправо или влево, и может соответствовать более широкому диапазону форм и распределений для переменной отклика, например, экспоненциальной, хи-квадрат или Вейбулла.
  • Гамма-регрессия может обрабатывать гетероскедастичность, поскольку в этом случае дисперсия переменной отклика зависит от ее среднего значения. Линейная регрессия предполагает, что дисперсия постоянна, что может быть нереалистичным для некоторых наборов данных.

Короче говоря, если вы работаете с данными, которые искажены или имеют непостоянную дисперсию, то гамма-регрессия является хорошей альтернативой линейной регрессии.

Данные

Мы будем использовать набор данных MAGIC Gamma Telescope от Kaggle. Вы можете проверить более подробную информацию здесь MAGIC Gamma Telescope Dataset | Каггл.

Мы собираемся предсказать переменную «fSize» на основе других переменных, используя как гамма, так и линейную регрессию, и сравнить их друг с другом. Ниже приведен код, используемый здесь для анализа.

Мы ясно видим, что наша зависимая переменная имеет положительную асимметрию, что означает, что большинство значений находятся вблизи левого конца распределения, а правый конец длиннее.

(Перед применением моделей мы немного изменили данные и разделили их на обучающую выборку и тестовую выборку. См. код ниже.)

Линейная модель

Мы видим довольно хорошее соответствие с R-квадратом 0,815, и все переменные, кроме fM3Trans, релевантны на уровне значимости 0,05.

У нас есть среднеквадратическая ошибка теста 0,041, и на графике мы видим приличное соответствие, но значения в хвостах занижены. Мы можем попытаться изменить это, подобрав гамма-регрессию.

Гамма-регрессия

Мы видим, что снова переменная fM3Trans не актуальна, и мы понизили нашу TMSE до 0,037.

На первый взгляд мы не видим существенных улучшений. Но если мы построим график гамма-регрессии против линейной регрессии:

Наша гамма-регрессия лучше справляется с хвостами! Он имеет более высокие значения, чем линейная модель, и не сильно занижает значения.

Мы можем внести еще некоторые изменения, например, удалить переменную fM3Trans:

Как и ожидалось, у нас более низкий AIC в Gamma fit и более низкий TMSE в обеих моделях.