Регрессионный анализ — набор методов, которые оценивают связь между несколькими переменными с помощью построения математических моделей. Они определяют, как изменения одного параметра влияют на другой. Этот вид анализа часто используется в Data Science для поиска закономерностей и прогнозирования.
В статье рассказываем, как работает регрессионный анализ и на какие вопросы он помогает ответить.
В чем задачи регрессионного анализа
Регрессия в анализе данных используется для исследования взаимосвязей между показателями. Эта общая цель включает несколько более конкретных задач.
- Определить, какие параметры связаны между собой. Это помогает выделить из множества характеристик те, которые взаимозависимы. Например, можно выяснить, как график работы влияет на такие показатели, как количество выполненных задач, затраченное время и выполнение KPI.
- Понять, как один показатель зависит от другого. Если связь между несколькими параметрами установлена, можно посмотреть, в чем она выражается и какая формула ее описывает. Например, как рассчитать количество выбросов в атмосферу, исходя из количества заводов в регионе.
- Предсказать значения параметра в новых условиях. На основе формулы взаимосвязи можно делать прогнозы для неизвестных ситуаций. Например, оценить, как изменится спрос в магазинах, если население города резко удвоится. Для этого не требуется проводить эксперимент — достаточно воспользоваться формулой, описывающей взаимосвязь.
Чем регрессия отличается от корреляции
Регрессионный анализ похож на корреляцию: оба метода показывают, как связаны переменные. Но есть разница: корреляция просто измеряет, насколько сильна эта связь, а регрессия помогает выразить связь с помощью уравнения, чтобы можно было предсказать одно значение, если другое изменится.
Поэтому, когда требуется не только установить связь, но и сделать прогноз, применяют регрессию.
Какие основные термины регрессионного анализа
Перед разбором метода стоит разобраться в основных терминах, чтобы лучше понимать, что происходит в расчетах.
- Независимая переменная — это параметр, который оказывает влияние на другой. Например, если анализируется, как успеваемость учеников зависит от дохода семьи, «доход семьи» будет независимой переменной. Таких переменных может быть несколько, их также называют факторами или регрессорами.
- Зависимая переменная, или объясняемая, — это параметр, на который воздействуют независимые переменные. В нашем примере «успеваемость ученика» будет зависимой переменной. Обычно она одна, но ее значение может зависеть от нескольких факторов. Если независимая переменная влияет на несколько зависимых, для каждой из них требуется отдельный анализ.
- Уравнение регрессии — это формула, которая описывает связь между независимыми и зависимой переменными. В регрессионное уравнение можно подставить конкретные значения независимых параметров и рассчитать, как изменится зависимая переменная.
- Коэффициенты регрессии — это значения, рассчитанные в ходе анализа, которые показывают, как в среднем изменится результат при увеличении независимой переменной на единицу.
- Регрессионная модель — статистическая модель, которая описывает взаимосвязь между переменными в виде линии на графике или плоскости. Она состоит из одного или нескольких уравнений регрессии с уже подставленными коэффициентами.
- Случайные ошибки (обозначают буквой ε) — это неизвестные факторы, которые могут повлиять на результаты, но не учтены в модели. Коэффициент случайной ошибки указывает на размер отклонения.
- Невязки — числовые значения, которые показывают разницу между вычисленными и реальными результатами. Их еще называют отклонениями. Размер невязок показывает, насколько хорошо работает модель. Большие отклонения означают, что результаты неточные.
Какие существуют виды регрессионного анализа
Все виды регрессий можно разделить на три категории.
- Линейные — модели, в которых зависимость между переменными остается пропорциональной и может быть выражена линейным уравнением.
- Нелинейные по объясняющим переменным — модели, где независимые переменные изменяются нелинейно, но оцениваемые параметры сохраняют линейную зависимость. Например, сюда относятся полиномиальные регрессии. Такие модели можно упростить, заменяя нелинейные переменные, чтобы работать с ними как с линейными.
- Нелинейные по оцениваемым параметрам — модели, где зависимая переменная изменяется нелинейно. Примером может быть степенная зависимость, когда переменная возводится в степень. Эти модели не всегда удается свести к линейным, но в некоторых случаях это возможно с помощью логарифмических или других преобразований.
Методы регрессии
Рассмотрим несколько популярных методов регрессии, которые часто используются в Data Science. На практике таких алгоритмов гораздо больше, и некоторые из них настолько сложны, что для их вычислений применяются нейросети. Мы же выбрали простые, чтобы познакомиться с основами.
Одиночная линейная регрессия. Классический метод, при котором оценивают зависимость одной переменной от другой. Такую зависимость можно описать прямой линией, а уравнение регрессии имеет вид:
y = a + bx + ε
Здесь y — зависимая переменная, x — независимая, a и b — коэффициенты регрессии, ε — случайные ошибки. Кроме a и b, коэффициенты могут также обозначать буквой β: β1, β2 и так далее.
Множественная линейная регрессия. Здесь взаимосвязь также описывается прямой линией, но независимых переменных несколько. Уравнение для множественной регрессии выглядит так:
y = a + b1x1 + b2x2 + … + ε
Видно, что переменных x, то есть независимых, несколько. Коэффициентов b, которые умножаются на x, тоже несколько. В таком виде уравнение описывает гиперплоскость в многомерном пространстве, где каждая переменная добавляет измерение. Это позволяет учитывать влияние нескольких факторов на зависимую переменную одновременно.
Одиночная полиномиальная регрессия. Это один из распространенных видов нелинейной регрессии, где зависимость нельзя описать прямой линией. График в этом случае представляет собой полином — сумму степеней независимой переменной, умноженных на коэффициенты. Формула выглядит следующим образом:
y = a + b1x + b2x2 + … + bnxn + ε
Здесь используется только одна независимая переменная x, но она возводится в разные степени, чтобы описать более сложную зависимость.
Когда можно проводить регрессионный анализ
Прежде чем проводить анализ, нужно убедиться, что условия для его применения подходят. Сначала проверяют несколько предпосылок, или условий. Если хотя бы одно из них не выполняется, результаты анализа могут оказаться неточными.
Для каждого метода регрессионного анализа набор предпосылок свой. Например, так он выглядит для классической линейной регрессии:
- среднее значение случайной составляющей равно нулю;
- дисперсия случайной составляющей также равна нулю;
- случайные ошибки статистически независимы друг от друга, между ними нет корреляции;
- для переменных можно построить обратную матрицу — это значит, что число наблюдений больше, чем количество параметров;
- случайные ошибки не коррелируют с независимыми переменными;
- случайная составляющая распределяется по нормальному закону.
Кроме того, независимые переменные не должны иметь между собой линейной связи. А выборки нужно подбирать так, чтобы данные были распределены произвольно и независимо от какого-то общего фактора.
Выполнение этих условий означает, что случайные величины — действительно случайные и не зависят от каких-либо известных переменных. А наблюдений достаточно много, чтобы составить полноценную модель.
Из каких этапов состоит регрессионный анализ
Формально регрессионный анализ включает в себя подбор коэффициентов, подстановку их в формулу и построение модели. Но на практике процесс оказывается сложнее. Он включает не только расчеты, но и подготовительные шаги, от которых зависит точность результата.
Вот на какие этапы можно разделить анализ:
- Постановка целей и задач. Аналитик определяет, что именно он хочет выяснить и какие зависимости исследовать.
- Обработка данных. Данные очищают от шумов, удаляют нерелевантные значения и выбросы. Вся информация приводится к единому формату.
- Визуализация данных. По набору данных аналитик строит графики, которые показывают, как меняются значения. Это помогает визуально увидеть возможную взаимосвязь и сделать первые предположения — например, какую модель выбрать.
- Предварительные исследования. Аналитик собирает описательную статистику, выделяет характеристики данных, проверяет, по какому закону они распределяются. По итогам этих исследований он делает вывод о свойствах данных — и, если нужно, дополнительно преобразует их и очищает от найденных аномальных значений.
- Корреляционный анализ. На этом этапе проверяют корреляцию между наборами значений. Если связи нет, то регрессионный анализ, скорее всего, не даст полезных результатов.
- Построение регрессионной модели. Если корреляция найдена, можно переходить к регрессии. Аналитик выбирает подходящее уравнение и рассчитывает коэффициенты так, чтобы модель точно отражала данные.
- Статистический анализ модели. Аналитик проверяет точность модели: оценивает ошибку, анализирует невязки и влияние коэффициентов.
- Анализ нескольких моделей. В некоторых случаях аналитик строит сразу несколько моделей, а потом сравнивает их друг с другом и смотрит, какая дает более точные результаты.
- Прогнозирование неизвестных значений. Модель рассчитывает неизвестные значения зависимой переменной для новых данных. Затем оценивают качество прогноза.
- Выводы. По итогам исследования аналитик формирует рекомендации, как добиться того или иного результата.
Коэффициенты обычно подбирают с помощью алгоритмов. Например, в линейной регрессии для этого применяют метод наименьших квадратов.
Для чего нужен регрессионный анализ
Регрессионный анализ активно используется в бизнесе, государственном управлении, некоммерческих организациях и других сферах. Вот примеры, где он помогает оценить влияние различных факторов на ключевые показатели:
- в торговле — определяет, какие факторы влияют на спрос в магазине и как привлечь больше покупателей;
- в маркетинге — анализирует, что влияет на посещаемость, популярность контента и эффективность рекламных кампаний;
- в экономике — выявляет параметры, оказывающие наибольшее влияние на экономические процессы и показатели;
- в научной сфере — помогает, например, определить влияние метана на изменение климата;
- в медицине — оценивает риск возникновения болезней и шансы на выздоровление пациентов.
Как применять регрессионный анализ в Data Science
С технической стороны регрессионный анализ — несложный инструмент: библиотеки вроде NumPy и SciPy для Python позволяют создать алгоритм регрессии всего за несколько строк кода. Основная сложность — выбор подходящей модели и метода. Для это нужно:
- оценить, подходит ли регрессионный анализ для данной задачи;
- определить тип зависимости — линейная или нелинейная;
- составить уравнения и подобрать регрессионную модель;
- сравнить эффективность нескольких решений.
Поэтому для начала важно разобраться в теории регрессионного анализа. Для уверенного использования инструментов нужно понимать, почему выбранные модели регрессии подходят для задачи и как они описывают данные.
Регрессионный анализ — главное
- Регрессионный анализ — набор методов, которые помогают понять связь между разными параметрами. Они показывают характер и силу взаимосвязи и помогают предсказать будущие значения.
- В регрессионном анализе выделяют независимую и зависимую переменные. Независимая влияет на зависимую, и задача аналитика — подобрать коэффициенты, чтобы максимально точно описать эту связь.
- Самый распространенный вид регрессии — линейная, которая описывает взаимосвязь между переменными в виде прямой линии. Существуют также нелинейные регрессии, где связь описывается, например, параболой или гиперболой.
- Процесс анализа включает постановку целей и задач, обработку данных, предварительные исследования и выбор подходящей модели. Затем подбирают коэффициенты, чтобы минимизировать ошибку. Иногда применяют несколько моделей и выбирают ту, которая дает наиболее точный результат.
- Результаты анализа используют для прогнозирования значений зависимой переменной. Чем меньше отклонение от реальных значений, тем точнее модель.