Линейная регрессия - это метод, описывающий отношения зависимости, линейная модель устанавливает связь между зависимой переменной y (цель) и одной или несколькими независимыми переменными, обозначенными X (входы).
Давайте последуем одному простому примеру, чтобы получить представление о линейной регрессии, наш примерный набор данных показан ниже, затем мы нанесем их на график.
Значения в столбце «GrLivArea» являются независимыми переменными, поскольку они предопределены, мы не можем изменить их с помощью других переменных. Значения в столбце «Цена» являются зависимыми переменными, поскольку мы можем предсказать их по изменениям в независимых переменных. Наблюдая за диаграммой, мы обнаружили положительное влияние GrLivArea (X) на цену (y) домов. Мы могли бы попытаться подобрать линию к графику, описывающему «среднее» влияние X на y. Однако как найти прямую линию, которая лучше всего соответствует данным?
По сути, мы могли бы использовать либо метод обычных наименьших квадратов (OLS), либо алгоритм под названием градиентный спуск.
- Обычный метод наименьших квадратов (OLS)
1.1. Сумма квадратов отклонений
Сумма квадратов отклонений, также называемая суммой квадратов ошибок, представляет собой сумму квадратов разности между каждой зависимой переменной и средним значением зависимых переменных. Отклонения здесь представляют собой разницу между фактическими значениями (каждое наблюдение) и прогнозируемыми значениями (линия). Давайте посмотрим на математическое решение.
1.2. Минимизация суммы квадратов отклонений
Ниже приведен процесс получения формулы для m и b, с помощью простой линейной регрессии мы могли бы напрямую использовать формулу результата.
1.3. Пример
Теперь мы получили решение для значений m и b, посмотрим, как оно работает в нашем примере:
Используя примерный набор данных и приведенную выше формулу, мы получаем m = 142,02, b = -11954, ниже приведена диаграмма рассеяния с наиболее подходящей линией.
Метод обычных наименьших квадратов (OLS) – это эффективный способ решения простых задач линейной регрессии (например, с одной независимой переменной и одной зависимой переменной). Он также может иметь дело с линейной регрессией с несколькими переменными. Мы могли бы заменить b и m наθ0 и θ1, таким образом, модель может быть обозначена как:
2. Градиентный спуск
2.1. Гипотеза
В машинном обучении у нас есть понятие гипотезы, представленное как h, которое представляет собой функцию, которая принимает X (входные данные) и пытается вывести оценочное значение. Таким образом, мы можем представить нашу модель следующим образом:
2.2. Функция стоимости
2.3. Алгоритм
2.4. Пример
Существует три типа алгоритма градиентного спуска:
Пакетный градиентный спуск. В пакетном градиентном спуске, когда мы вычисляем градиент функции стоимости, нам нужно суммировать все обучающие примеры для каждого шага. Поэтому, если у нас был огромный набор данных, использовать этот метод нецелесообразно.
Стохастический градиентный спуск (SGD): вместо использования всех обучающих примеров для каждого шага пакетного градиентного спуска, SGD использует один случайно выбранный пример или обучающую выборку данных для каждого шага. В зависимости от проблемы иногда это может быть намного быстрее, чем пакетный градиентный спуск. Тем не менее, это может привести к тому, что частота ошибок будет прыгать, а не медленно уменьшаться.
Мини-пакетный градиентный спуск: этот метод представляет собой комбинацию пакетного градиентного спуска и SGD, он использует случайно выбранное подмножество данных на каждом этапе. Minni-Batch Gradient Descent создает баланс между стабильностью пакетного градиентного спуска и эффективностью SGD.
Ссылка:
Эндрю Нг (2016) Линейная регрессия. https://youtu.be/kHwlB_j7Hkc.
Эмваломатис, Г. (2020) «Линейная регрессия» [презентация в PowerPoint]. BU52018: Бизнес-аналитика.
Академия Хана (2011) «Квадрат ошибки линии регрессии».
Мадху Сандживи (2017) «Глава 1.2: Градиентный спуск с математикой».
Прабху (2018) «Упрощенная линейная регрессия — обычный наименьший квадрат против градиентного спуска».
StatQuest с Джошем Стармером (2019) Градиентный спуск, шаг за шагом. https://youtu.be/sDv4f4s2SB8.