Линейная регрессия: подход максимального правдоподобия

Линейная регрессия - один из самых основных алгоритмов машинного обучения, и просто он пытается уместить наши данные на линии (y = mx + b). В этой статье мы увидим линейную регрессию с совершенно другой точки зрения.

Давайте попробуем увидеть линейную регрессию с точки зрения вероятности, в частности, используя подход MLE: Maximum Likelihood Estimate.

В линейной регрессии у нас есть следующее уравнение:

y^n = mx_n+b

Мы рассматриваем очень простой и простой пример: у нас есть просто набор данных с n строками и только одной функцией и целевыми значениями.

Рассмотрим пример, когда у нас есть только две точки данных, которые мы должны предсказать:

Скажите X = [2,3] и Y = [1,2].

В этом случае наше предыдущее уравнение y = mx + b будет выглядеть так после того, как мы подставим значения.

1=2m+b
2=3m+b

Используя метод подстановки, мы можем решить вышеуказанный набор одновременных уравнений и найти соответствующие «m» и «b», которые удовлетворяют как уравнению, так и модели GET со 100-процентной точностью. Итак, для b = -1 и для m = 1 мы можем решить это уравнение, и эти b и m удовлетворяют обоим приведенным уравнениям.

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

Что, если у нас есть 3 точки данных, например X = [2,3,5] и Y = [1,32,3]

1=2m+b
32=3m+b
3=5m+b

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

Что, если у нас есть n уравнений и 2 неизвестных?
1 = 2m + b
2 = 3m + b
.
.
.
.

48=2554m+b

Это именно тот случай, который мы обычно наблюдаем: у нас есть «n» точек данных или N строк с метками и в линейной регрессии, и мы должны найти m и b, которые дают нам метки с минимальной ошибкой.

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

1=2m+3b+e1
2=3m+4b+e2
3=4m+23b+e3
.
.
..

344=5m+23323b+e_n

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

Теперь самое важное. Как найти оптимальные значения m и b с помощью этих уравнений?

Итак, наша задача здесь - найти значение m и b с МИНИМАЛЬНЫМ «e» таким, чтобы m * x + b было равно y.

Для этого предположим, что теперь e1, e2, e3,…. происходит из распределения Гаусса

со средним НУЛЕМ и сигмой дисперсии².

Теперь в более общем плане мы также можем записать наше исходное уравнение как:

Одно известно, что E_n происходит из распределения Гаусса со средним нулем и дисперсией sigma_square.

Гауссово распределение

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

Свойства распределения Гаусса

Теперь давайте воспользуемся некоторыми замечательными свойствами гауссовского распределения, которые помогут нам понять это:

Гауссовский, добавленный константой, также гауссовский

Поскольку вероятность E равна

потому что мы знаем это

Итак, теперь каждая наша целевая переменная (y) происходит от распределения Гаусса со средним значением m * x_n + b и дисперсией sigma². Мы пришли к такому выводу, используя простые свойства гауссова распределения.

И это P (y | m, b, x) называется одноточечным правдоподобием y. Это означает, что ВЕРОЯТНО, что мы можем получить значение y с учетом x_n и m и b и sigma².

Итак, наша задача здесь - найти такие значения m и b, которые максимизируют P (y | m, b, x), и это называется оценкой максимального правдоподобия для этой ОДНОЙ точки.

Теперь предположим, что мы хотим найти вероятность всего набора данных в соответствии с основными правилами вероятности.

P (a, b) = P (a | b) P (b), но если a и b полностью независимы, то P (a, b) = P (a) * P (b)

А также давайте сделаем здесь последнее предположение, которое довольно логично; Предположим, что все наши точки данных являются IID: независимыми и одинаково распределенными. это означает, что все y происходят из ОДНОГО распределения (в данном случае гауссовского), и они не зависят друг от друга с учетом значений w и b.

Мы знаем, что вероятность любой отдельной точки данных «i» с использованием распределения Гаусса равна:

Таким образом, вероятность всего набора данных с учетом входных параметров может быть записана как:

Итак, мы можем записать это как:

Давайте сделаем некоторые упрощения

Теперь это на самом деле вероятность получить Y (набор данных) с учетом текущего набора параметров x, m, b, и поскольку X определен, и мы не можем его изменить, поэтому мы должны найти m и b, которые максимизируют эту функцию .

Вышеупомянутое утверждение выглядит немного запутанным, позвольте мне прояснить его: P (y | x, m, b), где y - все метки, x - входной набор данных, а m и b - параметры. Это означает, что вероятность ПОЛУЧИТЬ «y» с учетом входных данных и параметров. Таким образом, интуитивно мы должны НАЙТИ значения m и b (параметров) так, чтобы они МАКСИМАЛЬНО P (y | x, m, b). Основная задача - максимизировать P (y | x, m, b).

Как теперь его максимизировать ?. Мы бы сделали это, найдя отрицательную логарифмическую вероятность P (y | x, m, b). Я знаю, это звучит странно, но продолжайте следить, до конца вы поймете, почему мы это делаем.

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

Прежде чем мы возьмем журнал, вот несколько забавных фактов о журнале, LOG - это монотонно возрастающая функция, игнорируйте жесткий термин, что это означает, что дана функция f (x) = x², и, допустим, мы берем журнал всей этой функции

журнал (f (x)) = журнал (x²). Теперь, если мы поместим любое значение в эту функцию, скажем, 3, тогда f (3) = 3² = 9 и log (f (3)) = log (3²) = 0,95
f (4) = 4² = 16 и log (f (4)) = log (4²) = 1,2
.
.
.

f (15) = 15² = 225 и log (f (15)) = log (15²) = 2,35.

Это означает, что если f (15) ›f (11), то log (f (15))› log (f (11))
Но почему мы берем журнал?

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

Итак, что нам нужно здесь найти:

Не путайте с этим причудливым термином argmax. Этот термин представляет собой просто математический или краткий способ сказать: «НАЙДИТЕ ЗНАЧЕНИЕ M И B, КОТОРЫЕ МАКСИМИЗИРУЮТ ФУНКЦИЮ»

Точно так же argmin - это просто математический способ сказать: «НАЙДИТЕ ЗНАЧЕНИЕ, ЕСЛИ M И B, КОТОРОЕ МИНИМИЗИРУЕТ ФУНКЦИЮ, ИЛИ НАЙТИ ЗНАЧЕНИЕ M и B, КОТОРЫЕ ВЫНУМАЮТ ФУНКЦИЮ НА ПОЛУЧЕНИЕ МИНИМАЛЬНОГО ЗНАЧЕНИЯ»

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

Давайте сделаем это, нам просто нужно умножить весь термин, который мы нашли ранее, на «-1»

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

Теперь, учитывая это, нам нужно найти m и b, которые минимизируют функцию ABOVE. Итак, что мы для этого делаем?

ДИФФЕРЕНЦИАЦИЯ.

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

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

Зачем мы все это сделали?… Чтобы взглянуть на алгоритм линейной регрессии с точки зрения распределения вероятностей.

Ссылки:
Первый курс машинного обучения Саймона Роджерса и Марка Джиролами
Распознавание образов и машинное обучение Кристофер М. Бишоп

Я просто студент и изучаю этот материал, и я подумал, что написание статьи об этом поможет мне лучше понять это, поэтому, если в статье есть какая-либо ошибка или заблуждение, или если я объяснил что-то не так, сообщите мне и исправьте меня. Спасибо