Что такое линейная регрессия? Как это используется в машинном обучении
Опубликовано: 2021-07-16Разве линейная регрессия не является частью статистики?
Несомненно, да.
На самом деле, большинство машинное обучение (ML) алгоритмы заимствованы из разных областей, в основном из статистики. Все, что может помочь моделям лучше прогнозировать, в конечном итоге станет частью машинного обучения. Итак, можно с уверенностью сказать, что линейная регрессия является как статистическим алгоритмом, так и алгоритмом машинного обучения.
Линейная регрессия — популярный и несложный алгоритм, используемый в науке о данных и машинном обучении. Это контролируемое обучение алгоритм и простейшая форма регрессии, используемая для изучения математической взаимосвязи между переменными.
Что такое линейная регрессия?
Линейная регрессия — это статистический метод, который пытается показать взаимосвязь между переменными. Он смотрит на разные точки данных и строит линию тренда. Простым примером линейной регрессии является обнаружение того, что стоимость ремонта машины со временем увеличивается.
Точнее, линейная регрессия используется для определения характера и силы связи между зависимой переменной и рядом других независимых переменных. Это помогает создавать модели для прогнозирования, например прогнозирования курса акций компании.
Прежде чем пытаться подогнать линейную модель к наблюдаемому набору данных, следует оценить, существует ли взаимосвязь между переменными. Конечно, это не означает, что одна переменная вызывает другую, но какая-то видимая корреляция между ними должна быть.
Например, более высокие оценки в колледже не обязательно означают более высокую заработную плату. Но может быть связь между двумя переменными.
Вы знали? Термин «линейный» означает напоминающий линию или относящийся к линиям.
Создание точечной диаграммы идеально подходит для определения силы связи между независимыми и зависимыми переменными. Если на точечной диаграмме не видно тенденций увеличения или уменьшения, применение модели линейной регрессии к наблюдаемым значениям может оказаться бесполезным.
Коэффициенты корреляции используются для расчета того, насколько сильна связь между двумя переменными. Обычно он обозначается r и имеет значение от -1 до 1. Положительное значение коэффициента корреляции указывает на положительную связь между переменными. Аналогично, отрицательное значение указывает на отрицательную связь между переменными.
Совет. Выполняйте регрессионный анализ только в том случае, если коэффициент корреляции положительный или отрицательный, равный 0,50 или выше.
Если бы вы смотрели на взаимосвязь между временем учебы и оценками, вы, вероятно, увидели бы положительную связь. С другой стороны, если вы посмотрите на связь между временем, проведенным в социальных сетях, и оценками, вы, скорее всего, увидите отрицательную связь.
Здесь «оценки» — это зависимая переменная, а время, проведенное за учебой или в социальных сетях, — независимая переменная. Это потому, что оценки зависят от того, сколько времени вы тратите на учебу.
Если вы можете установить (по крайней мере) умеренную корреляцию между переменными как с помощью диаграммы рассеяния, так и с помощью коэффициента корреляции, то указанные переменные имеют некоторую форму линейной зависимости.
Короче говоря, линейная регрессия пытается смоделировать взаимосвязь между двумя переменными, применяя линейное уравнение к наблюдаемым данным. Линия линейной регрессии может быть представлена с помощью уравнения прямой линии:
у = мх + б
В этом простом уравнении линейной регрессии:
- y - предполагаемая зависимая переменная (или выход)
- m - коэффициент регрессии (или наклон)
- x - независимая переменная (или вход)
- b - константа (или y-перехват)
Нахождение взаимосвязи между переменными позволяет прогнозировать значения или результаты. Другими словами, линейная регрессия позволяет прогнозировать новые значения на основе существующих данных.
Примером может служить прогнозирование урожайности на основе полученных осадков. В этом случае количество осадков является независимой переменной, а урожайность (прогнозируемые значения) является зависимой переменной.
Независимые переменные также называются переменными- предикторами . Точно так же зависимые переменные также известны как переменные отклика .
Ключевые термины линейной регрессии
Понимание линейного регрессионного анализа также означает знакомство с кучей новых терминов. Если вы только что вошли в мир статистики или машинного обучения, вам будет полезно иметь четкое представление об этих терминах.
- Переменная: это любое число, количество или характеристика, которые можно подсчитать или измерить. Его также называют элементом данных. Доход, возраст, скорость и пол являются примерами.
- Коэффициент: это число (обычно целое), умноженное на следующую за ним переменную. Например, в 7x число 7 является коэффициентом.
- Выбросы: это точки данных, значительно отличающиеся от остальных.
- Ковариация: направление линейной зависимости между двумя переменными. Другими словами, он вычисляет степень линейной зависимости двух переменных.
- Многомерный: это означает, что две или более зависимых переменных приводят к одному результату.
- Остатки: разница между наблюдаемыми и прогнозируемыми значениями зависимой переменной.
- Изменчивость: Отсутствие согласованности или степень сжатия или растяжения распределения.
- Линейность: свойство математической зависимости, которое тесно связано с пропорциональностью и может быть графически представлено в виде прямой линии.
- Линейная функция: это функция, график которой представляет собой прямую линию.
- Коллинеарность: корреляция между независимыми переменными, при которой они проявляют линейную зависимость в регрессионной модели.
- Стандартное отклонение (SD): это мера дисперсии набора данных относительно его среднего значения. Другими словами, это мера того, насколько разбросаны числа.
- Стандартная ошибка (SE): приблизительное стандартное отклонение статистической выборки населения. Он используется для измерения изменчивости.
Типы линейной регрессии
Существует два типа линейной регрессии: простая линейная регрессия и множественная линейная регрессия .
Метод простой линейной регрессии пытается найти взаимосвязь между одной независимой переменной и соответствующей зависимой переменной. Независимая переменная является входом, а соответствующая зависимая переменная — выходом.
Совет. Вы можете реализовать линейную регрессию на различных языках программирования и в различных средах, включая Python, R, MATLAB и Excel.
Метод множественной линейной регрессии пытается найти взаимосвязь между двумя или более независимыми переменными и соответствующей зависимой переменной. Существует также особый случай множественной линейной регрессии, называемый полиномиальная регрессия.
Проще говоря, простая модель линейной регрессии имеет только одну независимую переменную, тогда как модель множественной линейной регрессии будет иметь две или более независимых переменных. И да, есть другие методы нелинейной регрессии, используемые для очень сложного анализа данных.
Логистическая регрессия против линейной регрессии
В то время как линейная регрессия предсказывает непрерывную зависимую переменную для заданного набора независимых переменных, логистическая регрессия предсказывает категориальную зависимую переменную.
Оба являются контролируемыми методами обучения. Но в то время как линейная регрессия используется для решения проблем регрессии, логистическая регрессия используется для решения проблем классификации.
Конечно, логистическая регрессия может решать проблемы регрессии, но в основном она используется для задач классификации. Его вывод может быть только 0 или 1. Это полезно в ситуациях, когда вам нужно определить вероятности между двумя классами или, другими словами, рассчитать вероятность события. Например, логистическую регрессию можно использовать, чтобы предсказать, будет ли сегодня дождь.
Предположения линейной регрессии
При использовании линейной регрессии для моделирования взаимосвязи между переменными мы делаем несколько предположений. Предположения — это необходимые условия, которые должны быть соблюдены, прежде чем мы будем использовать модель для прогнозирования.

Обычно есть четыре предположения, связанные с моделями линейной регрессии:
- Линейная связь: Между независимой переменной x и зависимой переменной y существует линейная связь.
- Независимость: остатки независимы. Между последовательными остатками в данных временных рядов нет корреляции.
- Гомоскедастичность: остатки имеют одинаковую дисперсию на всех уровнях.
- Нормальность: остатки нормально распределены.
Методы решения моделей линейной регрессии
В машинном обучении или статистике изучение модели линейной регрессии означает угадывание значений коэффициентов с использованием доступных данных. К модели линейной регрессии можно применить несколько методов, чтобы сделать ее более эффективной.
Совет. Используйте программное обеспечение для машинного обучения, чтобы избавиться от монотонных задач и делать точные прогнозы.
Давайте рассмотрим различные методы, используемые для решения моделей линейной регрессии, чтобы понять их различия и компромиссы.
Простая линейная регрессия
Как упоминалось ранее, в простой линейной регрессии есть один вход или одна независимая переменная и одна зависимая переменная. Он используется для поиска наилучшей связи между двумя переменными, учитывая, что они имеют непрерывный характер. Например, его можно использовать для прогнозирования количества набранного веса на основе потребляемых калорий.
Обычные наименьшие квадраты
Обычная регрессия методом наименьших квадратов - это еще один метод оценки значения коэффициентов, когда имеется более одной независимой переменной или входных данных. Это один из наиболее распространенных подходов к решению линейной регрессии, также известный как нормальное уравнение .
Эта процедура пытается минимизировать сумму квадратов остатков. Он обрабатывает данные как матрицу и использует операции линейной алгебры для определения оптимальных значений для каждого коэффициента. Конечно, этот метод можно применить только в том случае, если у нас есть доступ ко всем данным, а также должно быть достаточно памяти для размещения данных.
Градиентный спуск
Градиентный спуск — один из самых простых и часто используемых методов решения задач линейной регрессии. Это полезно, когда есть один или несколько входных данных, и включает в себя оптимизацию значения коэффициентов путем итеративной минимизации ошибки модели.
Градиентный спуск начинается со случайных значений для каждого коэффициента. Для каждой пары входных и выходных значений вычисляется сумма квадратов ошибок. Он использует коэффициент масштабирования в качестве скорости обучения, и каждый коэффициент обновляется в направлении минимизации ошибки.
Процесс повторяется до тех пор, пока дальнейшие улучшения не станут возможны или не будет достигнута минимальная сумма квадратов. Градиентный спуск полезен при наличии большого набора данных, включающего большое количество строк и столбцов, которые не помещаются в памяти.
Регуляризация
Регуляризация — это метод, который пытается минимизировать сумму квадратов ошибок модели и в то же время уменьшить сложность модели. Он уменьшает сумму квадратов ошибок, используя обычный метод наименьших квадратов.
Лассо-регрессия и гребенчатая регрессия — два известных примера регуляризации в линейной регрессии. Эти методы полезны при наличии коллинеарности независимых переменных.
Метод Адама
Адаптивная оценка момента , или ADAM , представляет собой алгоритм оптимизации, используемый в глубокое обучение. Это итеративный алгоритм, который хорошо работает с зашумленными данными. Он прост в реализации, эффективен в вычислительном отношении и требует минимального объема памяти.
ADAM сочетает в себе два алгоритма градиентного спуска — среднеквадратичное распространение (RMSprop) и адаптивный градиентный спуск . Вместо того, чтобы использовать весь набор данных для расчета градиента, ADAM использует случайно выбранные подмножества для создания стохастической аппроксимации.
ADAM подходит для задач, связанных с большим количеством параметров или данных. Кроме того, в этом методе оптимизации гиперпараметры обычно требуют минимальной настройки и имеют интуитивно понятную интерпретацию.
Разложение по сингулярным значениям
Разложение по сингулярным значениям , или SVD , — это широко используемый метод уменьшения размерности в линейной регрессии. Это этап предварительной обработки, который уменьшает количество измерений для алгоритма обучения.
SVD включает в себя разложение матрицы как произведения трех других матриц. Он подходит для многомерных данных, а также эффективен и стабилен для небольших наборов данных. Благодаря своей стабильности это один из наиболее предпочтительных подходов к решению линейных уравнений для линейной регрессии. Однако он подвержен выбросам и может стать нестабильным при работе с огромным набором данных.
Подготовка данных для линейной регрессии
Реальные данные в большинстве случаев неполны.
Как и в любой другой модели машинного обучения, подготовка и предварительная обработка данных являются важным процессом в линейной регрессии. Будут отсутствующие значения, ошибки, выбросы, несоответствия и отсутствие значений атрибутов.
Вот несколько способов учета неполных данных и создания более надежной модели прогнозирования.
- Линейная регрессия считает, что переменные предиктора и отклика не зашумлены. В связи с этим удаление шума с помощью нескольких операций очистки данных имеет решающее значение. Если возможно, вы должны удалить выбросы в выходной переменной.
- Если входные и выходные переменные имеют распределение Гаусса , линейная регрессия будет давать более точные прогнозы.
- Если вы масштабируете входные переменные с помощью нормализации или стандартизации, линейная регрессия обычно дает более точные прогнозы.
- Если атрибутов много, необходимо преобразовать данные, чтобы они имели линейную зависимость .
- Если входные переменные сильно коррелированы, то линейная регрессия будет соответствовать данным. В таких случаях удалите коллинеарность .
Преимущества и недостатки линейной регрессии
Линейная регрессия — один из самых простых алгоритмов для понимания и простейших в реализации. Это отличный инструмент для анализа отношений между переменными.
Вот некоторые заметные преимущества линейной регрессии:
- Это популярный алгоритм из-за его простоты.
- Хотя он подвержен переоснащению, этого можно избежать с помощью методов уменьшения размерности.
- Он имеет хорошую интерпретируемость.
- Он хорошо работает на линейно разделимых наборах данных.
- Его пространственная сложность невелика; следовательно, это алгоритм с высокой задержкой.
Однако линейная регрессия обычно не рекомендуется для большинства практических приложений. Это потому, что он упрощает реальные проблемы, предполагая линейную связь между переменными.
Вот некоторые недостатки линейной регрессии:
- Выбросы могут иметь негативное влияние на регрессию
- Поскольку для соответствия линейной модели между переменными должна быть линейная связь, предполагается, что между переменными существует прямолинейная связь.
- Он воспринимает, что данные нормально распределены
- Он также рассматривает связь между средним значением независимой и зависимой переменных.
- Линейная регрессия не является полным описанием отношений между переменными.
- Наличие высокой корреляции между переменными может существенно повлиять на производительность линейной модели.
Сначала наблюдай, потом предсказывай
В линейной регрессии очень важно оценить, имеют ли переменные линейную связь. Хотя некоторые люди пытаются прогнозировать, не глядя на тенденцию, лучше убедиться, что существует умеренно сильная корреляция между переменными.
Как упоминалось ранее, просмотр диаграммы рассеяния и коэффициента корреляции — отличные методы. И да, даже если корреляция высокая, все равно лучше смотреть на точечную диаграмму. Короче говоря, если данные визуально линейны, то возможен линейный регрессионный анализ.
В то время как линейная регрессия позволяет вам предсказать значение зависимой переменной, существует алгоритм, который классифицирует новые точки данных или предсказывает их значения, глядя на их соседей. Он называется алгоритмом k-ближайших соседей и является ленивым учеником.