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

— Эндрю Нг

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

Линейная регрессия

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

Линия наилучшего соответствия. Линия наилучшего соответствия – это прямая линия, минимизирующая сумму квадратов вертикальных расстояний (остатков) между наблюдаемыми точками данных и соответствующими точками, предсказанными линия.

Проще говоря, линия наилучшего соответствия — это линия, которая ближе всего проходит или «соответствует» большинству точек данных на диаграмме рассеяния. Это линия, которая фиксирует общую тенденцию или закономерность точек данных с учетом некоторого уровня изменчивости или шума.

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

Математика линейной регрессии

Уравнение прямой или линейной регрессии:

Где:

  • y – целевая переменная или ярлык.
  • x — входные признаки или предикторы
  • m — наклон линии или отношение между предикторами и целью
  • c - точка пересечения с осью y, константа

Из приведенного выше уравнения у нас есть две константы m и c, которые важны для нахождения линии, наиболее подходящей для модели. В начале фазы обучения алгоритм принимает некоторое начальное значение для m и c. Обычно мы принимаем m = 1 и c = 1. В конце алгоритма наша цель — найти оптимальное значение для m и c.

Возьмем пример:

Предположим, у нас есть набор данных с n точками данных. И представьте, что мы обучаем модель линейной регрессии на этом наборе данных. Предположим, что в начале m = 1 и c = 1. Во время обучения алгоритм анализирует значение m и c и подбирает модель для разных значений m и c в соответствии с изображением ниже (m1, m2, c1, c2 — новые значения m и в соответственно).

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

Функция стоимости

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

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

Существуют разные функции стоимости, доступные для разных типов алгоритмов. В линейной регрессии мы в основном использовали функцию стоимости Mean Squared Error (MSE) для поиска наиболее подходящей линии.

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

Здесь:

yi = Фактическое значение

yi cap: Прогнозируемое значение

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

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

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

Градиент Достойный

Градиентный спуск — это итеративный алгоритм оптимизации, используемый для минимизации функции стоимости, чтобы найти оптимальные параметры m и c для модели машинного обучения. Это фундаментальный метод, используемый в моделях обучения для получения точных прогнозов путем корректировки параметров модели в правильном направлении, чтобы уменьшить ошибку между прогнозами и фактическими значениями. Цель градиентного спуска — найти локальный минимум (или максимум) функции.

Градиент приличный сначала присваивает параметрам модели некоторое начальное значение (обычно m = 1 и c = 1) и проверяет функцию стоимости. После этого алгоритм приличного градиента вычисляет градиент функции стоимости (частичная деривация) по отношению к параметрам модели. Градиент по существу указывает направление и величину наибольшего увеличения функции стоимости. Это вектор, который указывает в направлении наибольшего увеличения стоимости.

для функции выше стоимости или MSE

Частичный вывод по m

Частичный вывод по c:

Теперь, после нахождения градиентов для алгоритма градиентного спуска m и c, найдите новые значения параметров m и c, используя теорию сходимости.

α — скорость обучения или размер шага

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

Итак, новое значение

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

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

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

Уравнение множественной линейной регрессии

При работе с несколькими независимыми переменными (признаками) уравнение множественной линейной регрессии принимает вид:

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

Допущения и ограничения

Линейная регрессия делает определенные предположения о данных:

  1. Линейность: предполагается, что связь между входными объектами и целевой переменной является линейной.
  2. Независимость: предполагается, что остатки (разницы между фактическими и прогнозируемыми значениями) не зависят друг от друга.
  3. Гомоскедастичность: это означает, что дисперсия остатков постоянна на всех уровнях целевой переменной.
  4. Нормальность: Предполагается, что остатки нормально распределены.

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

Приложения

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

  • Финансы: прогнозирование цен на акции на основе исторических данных.
  • Экономика: анализ влияния переменных на экономические показатели, такие как ВВП или инфляция.
  • Медицина: прогнозирование результатов лечения пациентов на основе медицинских параметров.
  • Маркетинг: прогнозирование продаж на основе расходов на рекламу и других факторов.

Теперь пришло время погрузиться в Логистическую регрессию.