• Введение
  • Типы линейной регрессии
  • Гипотеза
  • Функция стоимости
  • Нормальное уравнение
  • Функция градиента

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

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

Существует два типа линейной регрессии:

Если есть только одна независимая переменная, то линейная регрессия называется линейной регрессией с одной переменной.

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

Пример:

Допустим, цена дома зависит от размера дома, что размер является независимой переменной, а цена является зависимой переменной, которая зависит от размера дома:

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

Уравнение для линейной регрессии/гипотезы имеет вид:

Гипотеза (одна переменная):

Для нескольких переменных:

(где x0 всегда 1)

Функция h(theta) — это прогноз на основе входной переменной. Тета0 и тета1 — это параметры обучения (коэффициенты регрессии), и из уравнения вы можете заметить, что оно совпадает с уравнением наклона и пересечения.

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

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

Стоимость — это термин, который определяет, как работает модель. Чем выше стоимость, тем хуже будут прогнозы. Цель – максимально снизить стоимость.

Формула стоимости:

Значения коэффициентов регрессии можно рассчитать по нормальному уравнению:

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

Градиентный спуск:

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

Градиентный спуск — это метод нахождения минимума функции путем взятия производной функции, а затем выполнения итерационных шагов в направлении и одновременного обновления параметров.

Производная функции стоимости даст нам направление к минимуму функции. Для тех, кто не знает исчисления, вот производная, рассчитанная для вас:

Для тета0 :

Для тета1:

Обратите внимание, что градиент даст нам направление только к минимуму функции. Нам придется обновлять веса, повторяя шаги в направлении наклона/градиента.

Формула для обновления параметров будет:

Здесь альфа — скорость обучения. Обучение определяет размер шага до минимума функции. Если скорость обучения слишком мала, функция никогда не сойдется или сходимость займет много времени. И, если скорость обучения слишком высока, оптимизация может быть нестабильной (прыгать вокруг оптимума и, возможно, даже ухудшаться, а не улучшаться). Лучше всего выбрать небольшую скорость обучения, например 0,01, 0,1 и т. д.

Чтобы найти наилучшие возможные параметры, нам нужно запустить наш алгоритм градиентного спуска через несколько итераций. Но когда мы остановимся?

Лучший способ визуализировать градиентный спуск в действии — построить график функции стоимости для каждого шага.

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