Общие линейные модели и гамма-регрессия
Гамма-регрессия — это тип обобщенной линейной модели (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 в обеих моделях.