Введение

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

Одна из основных моделей - линейная регрессия.

Линейная регрессия выполняет задачу прогнозирования значения зависимой переменной (y) с помощью одной или нескольких независимых переменных (x или xi, где i = 1, 2, 3 .. n). Этот метод регрессии обнаруживает линейную зависимость между x (входом) и y (выходом). Отсюда и название «Линейная регрессия».

Прежде чем углубляться в модель, давайте разберемся, когда следует применять эту модель.

Когда использовать линейную регрессию?

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

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

Мы рассмотрим эти предположения.

Допущения линейной регрессии

Существует около 8 основных допущений для моделей линейной регрессии.

1. Линейная связь между независимыми и зависимыми переменными.

2. Количество наблюдений должно быть больше количества независимых переменных.

3. Отсутствие мультиколлинеарности по независимым переменным.

4. Дисперсия независимых переменных должна быть положительной.

5. Среднее значение остатков должно быть равно нулю.

6. Нет автокорреляции между остатками.

7. Остатки должны распределяться нормально.

8. Различия между остатками должны быть постоянной или равной, т.е. гомоскедастичность.

Давайте углубимся в предположения.

Допущение 1: линейная связь между независимыми и зависимыми переменными.

Для линейной регрессии взаимосвязь между независимыми переменными должна быть линейной. Предположение о линейности можно проверить с помощью диаграмм рассеяния.

Выше приведены 2 случая, когда в данных отсутствует линейность или линейность очень мала.

Математически уравнение модели должно быть линейным по параметрам.

Y = a + (b1* X1) + (b2*X2^2) + …

Хотя X2 возведен в степень 2, уравнение по-прежнему линейно по параметрам.

Допущение 2: количество наблюдений должно быть больше, чем количество независимых переменных.

В рамках регрессионного анализа набор данных должен содержать не менее 20 примеров для каждой независимой переменной. Что наиболее важно, количество точек данных в наборе данных должно быть больше, чем количество независимых переменных.

Допущение 3: Нет мультиколлинеарности в независимых переменных.

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

Иначе,

  1. Становится очень трудно выяснить, какая переменная на самом деле способствует предсказанию значения зависимой переменной.

2. При наличии коррелированных переменных стандартная ошибка увеличивается.

Мультиколлинеарность можно проверить с помощью следующих критериев:

а. График разброса между переменными

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

Здесь мы взяли набор данных Diamond и построили графики разброса между переменными. Это дает очень хорошее представление о распределении значений переменных и о поведении одной переменной с другой.

б. Корреляционная матрица

Вычислите матрицу двумерной корреляции Пирсона между всеми независимыми переменными. Выберите только одну из переменных в парах с высокими коэффициентами корреляции. Значения выше +/- 0,75 можно рассматривать как имеющие высокие коэффициенты корреляции.

Примечание. Значения коэффициента корреляции также могут быть отрицательными.

График корреляции числовых переменных в наборе данных Diamond. Мы можем видеть значения корреляции, а также цветовую кодировку значений корреляции. Мы можем заметить, что цена и объем имеют значение корреляции 0,92. Эти две переменные сильно коррелированы.

c. Допуск

Допуск измеряет влияние одной независимой переменной на другие независимые переменные. Допуск рассчитывается с помощью первоначального регрессионного анализа.

Он определяется как T = (1- R-квадрат).

T ‹0,1; указывает на наличие мультиколлинеарности

T ‹0,01; указывает на определенное присутствие мультиколлинеарности.

d. Коэффициент инфляции дисперсии (VIF)

VIF - это отношение дисперсии в модели с несколькими членами, деленное на дисперсию модели с одним только членом. Он определяет степень мультиколлинеарности.

Он определяется как VIF = 1 / (1-R2)

= 1 / (Допуск).

R2 = значение R-квадрата для рассматриваемой переменной X относительно всех других переменных X в линейной модели. (Примечание: переменные X являются независимыми переменными)

Значение VIF больше 4 указывает на мультиколлинеарность. Чем больше значение VIF, тем больше присутствует мультиколлинеарность.

Другими словами, VIF - это показатель, который вычисляется для каждой независимой переменной, входящей в линейную модель. Если значение VIF для переменной высокое, то информация в этой переменной уже объясняется другой одной или несколькими переменными в данной модели. Чем больше значение VIF для переменной, тем более избыточна переменная.

Мы можем действовать двумя способами. Один из них - удалить переменную с высоким VIF или увидеть корреляцию между всеми переменными и оставить только одну переменную из высококоррелированных пар.

Существует также другой способ справиться с мультиколлинеарностью: центрирование данных, то есть вычитание среднего значения переменной из каждого значения. Но этот подход вызывает споры среди специалистов. Об этом можно поговорить отдельно в следующей статье.

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

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

Предположение 4: дисперсия независимых переменных должна быть положительной.

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

Итак, что это означает, если изменчивость независимых переменных одинакова, то переменные связаны друг с другом. Другой момент: если для независимой переменной дисперсия равна нулю, то все записи для переменной одинаковы.

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

Допущение 5: Среднее значение остатков должно быть равно нулю

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

Сумма остатков всегда равна нулю или близка к нулю. Таким образом, если сумма равна нулю, среднее значение также равно нулю.

Остатки - это термины ошибки. Мы видим, что условия ошибки бывают как положительными, так и отрицательными.

Теперь сумма ошибок равна 19, а среднее значение - 0,19. Как только мы начнем настраивать модель вместе с новыми функциями, мы можем заметить, что сумма ошибок (и среднее значение ошибок) начнет приближаться к нулю.

Предположение 6: Нет автокорреляции между остатками.

Линейная регрессия требует, чтобы остатки имели очень небольшую автокорреляцию данных или вообще не имели ее. Автокорреляция происходит, когда остатки не независимы друг от друга. Член ошибки (i + 1) не зависит от члена ошибки (i). Другими словами, текущая остаточная стоимость зависит от предыдущей остаточной стоимости. Наличие автокорреляции резко снижает точность модели.

Некоторые основные способы проверки или автокорреляции:

· Использовать график ACF

Ось X определяет запаздывания остатков, увеличиваясь с шагом 1. 1-я строка на графике ACF (читается слева направо) соответствует корреляции остатка с самим собой (запаздывание 0), поэтому if всегда будет 1. Если остатки не автокоррелированы, корреляция (ось Y), начиная со следующей строки (лаг 1), опустится ниже синей линии (уровень значимости).

Мы построим график ACF для наших остаточных условий (или условий ошибок), которые мы нашли выше. Как описано выше, начиная со второй вертикальной линии, все линии находятся ниже горизонтальных синих линий (розовая заштрихованная область). Здесь 0,2 - уровень значимости (синяя линия).

Наши остаточные условия в модели цен на жилье в Бостоне не коррелируются автоматически.

· Тест Дурбина-Ватсона

D-тест Дарбина-Ватсона проверяет нулевую гипотезу о том, что остатки не имеют линейной автокорреляции. Здесь d имеет диапазон значений от 0 до 4, где значения около 2 указывают на отсутствие автокорреляции.

Правило большого пальца 1,5 ‹d‹ 2,5 указывает на отсутствие автокорреляции.

Пакет Statsmodels в Python предоставляет сводку модели. Для обобщения мы возьмем выходные данные модели линейной регрессии (OLS) из этого пакета.

Мы можем видеть сводку нашей модели линейной регрессии данных о ценах на жилье в Бостоне. Значение d-критерия Дарбина-Ватсона составляет 1,804, что находится в пределах нашего диапазона правил большого пальца. Таким образом, НЕТ автокорреляции в остатках.

Есть много других тестов для поиска нашей автокорреляции. Но для проверки нашего предположения достаточно двух тестов.

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

Допущение 7: остатки должны распределяться нормально

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

Давайте визуализируем то же самое для нашего набора данных.

Гистограмма для наших Остатков (ошибки) выглядит приблизительно Нормальным (Гауссовым) распределением.

Допущение 8: отклонения должны быть постоянной или равной дисперсии, т. е. гомоскедастичности

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

Простой график разброса остатков может выявить наличие гетероскедастичности.

Визуализация ошибки и подобранных значений из нашего набора данных.

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

На графике нет паттерна, в частности параболического паттерна, это означает, что модель также зафиксировала нелинейные эффекты (если таковые имеются). Распределения по форме воронки на графике нет, значит, признаки гомоскедастичности. Если распределение в форме воронки присутствовало, как показано на рисунке 1, то примите во внимание признаки непостоянной дисперсии, то есть гетероскедастичности.

Мы также можем проверить это с помощью графика невязки и аппроксимации. Существуют также статистические тесты, такие как тест Гольдфельда-Квандта, тест Бреуша-Пагана / Кука-Вайсберга или общий тест Уайта.

Давайте посмотрим на один из тестов: Тест Голдфельда-Квандта

Цель состоит в том, чтобы проверить, одинакова ли дисперсия в двух подвыборках. Нулевая гипотеза состоит в том, что дисперсия двух подвыборок одинакова. Если дисперсии различаются, тест отклоняет нулевую гипотезу о том, что дисперсии ошибок не постоянны. Это соответствует F-тесту на равенство дисперсий. Это большие значения F-значений указывают на то, что дисперсии разные. Давайте проверим то же самое для нашего набора данных Boston Housing.

Точно так же могут быть выполнены другие тесты для проверки гомоскедастичности.

Заключение

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

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

Если вам понравилась статья, не стесняйтесь хлопать мне в ладоши и помогать другим найти ее.

Также дайте мне знать, если я пропустил предположение / тему. Рад учиться и объединяться.