Различия с точки зрения функций стоимости, обычного наименьшего квадрата (OLS), градиентного спуска (GD) и оценки максимального правдоподобия (MLE).

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

Шаг 1. Разработайте модель, объясняющую взаимосвязь между переменной ответа и независимыми переменными.

  • Регрессионная модель: переменная отклика является непрерывной.
  • КлассификацияМодель: переменная ответа является категориальной.

Шаг 2. Разработайте функцию затрат (также известную как функция потерь), чтобы определить, насколько хорошо эта модель объясняет заданный набор данных.

  • Разработайте функцию стоимости с точки зрения метода наименьших квадратов (OLS).
  • Разработайте функцию стоимости с точки зрения оценки максимального правдоподобия (MLE).

Шаг 3. Найдите наилучшие параметры для решения проблемы оптимизации относительно функции стоимости.

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

Как применить метод наименьших квадратов (OLS) в линейной регрессии?

Во-первых, давайте поговорим о линейной регрессии, используя следующие данные. Цель состоит в том, чтобы разработать модель для объяснения взаимосвязи между переменной отклика (т. е. Y), которая является непрерывной переменной, и объясняющей переменной (т. е. X).

Шаг 1. На основе линейной зависимости между Y и X линейное уравнение, показанное ниже, будет подходящей моделью.

Параметры (β0, β1) представляют собой фиксированные значения, которые обычно неизвестны, поскольку сложно собрать все точки данных из совокупности. Поэтому мы используем оценки OLS (β̂0, β̂1), вычисленные по выборке, для оценки параметров совокупности (β0, β1).

Член ошибки, ε, является случайной величиной, которая объясняет ошибку с точки зрения расстояния между каждой точкой и подобранной линией. Значения члена ошибки могут быть как положительными, так и отрицательными. Общее εдолжно иметь среднее значение 0, что может быть достигнуто с помощью точки пересечения (т. е. β0). ε НЕтребуется иметь нормальное распределение с МНК для создания несмещенной модели.

Однако предположение о нормальности позволяет нам проводить статистическую проверку гипотез. Оценки (например, β̂0, β̂1) могут быть записаны в виде линейной комбинации ε (подробнее см. здесь), и предположение, что ε нормально распределено, означает, что оценки также нормально распределены. Следовательно, предположение о нормальности будет генерировать надежные доверительные интервалы для прогнозов и оценок.

Шаг 2. Мы хотели бы придумать функцию затрат, которая количественно определяла бы насколько хороша предлагаемая модель. Для модели линейной регрессии мы находим наилучшие оценки, β̂1 и β̂0, такие, что сумма расстояний между Yi и Ŷi, где Ŷi = β̂1Xi + β̂0, минимизируется. Обычно в функции стоимости используется квадратичное расстояние. Мы можем обобщить это в следующем уравнении.

Как применить оценку максимального правдоподобия (MLE) в линейной регрессии?

Является ли приведенная выше функция стоимости единственной функцией, которую мы можем разработать для линейной регрессии? Ответ - нет. В качестве альтернативы мы можем предложить другую версию функции стоимости с точки зрения оценки максимального правдоподобия (MLE).

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

Шаг 1. Мы начнем с той же линейной модели, что и МНК (уравнение 1). Единственная модификация здесь заключается в том, что нам нужно наложить предположение о нормальности на член ошибки, чтобы MLE работал, потому что нам нужно предположить распределение данных для расчета вероятности.

Шаг 2. Вместо этого мы можем придумать другую версию функции затрат, которая количественно определяет, насколько вероятно, что мы сможем наблюдать переменную результата (например, Y) с учетом независимых переменных (например, X) по предложенной модели. Мы хотели бы найти наилучшие параметры, β̂ 1 и β̂ 0, чтобы вероятность наблюдения наших данных была максимальной.

Давайте сначала перепишем уравнение 3 как условное распределение для каждого наблюдения X и Y. Другими словами, каждый Yi взят из нормального распределения со средним значением β1Xi + β0 для данного Xi и стандартного отклонения σ.

Затем мы определяем функцию правдоподобия наблюдения Yi при заданном Xi в терминах нормального распределения.

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

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

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

Поэтому максимизация функции логарифмического правдоподобия математически эквивалентна минимизации функции стоимости МНК(см. уравнение 2).

Как это круто! Мы начинаем с совершенно разных идей в отношении OLS и MLE и в итоге имеем одинаковые функции стоимости для модели линейной регрессии.

Шаг 3: Как минимизировать функцию стоимости линейной регрессии с помощью формулы закрытой формы?

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

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

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

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

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

Выведем формулу.

У нас есть функция стоимости как сумма квадратов ошибок.

Возьмем производную по β̂0 и приравняем ее к 0.

Решив вышеприведенное уравнение, получим

Теперь возьмем производную по β1 и заменим β0 уравнением 5 и приравняем его к 0.

Решив вышеприведенное уравнение, получим

Теперь мы можем применить некоторые алгебраические приемы, чтобы переписать числитель и знаменатель, что легко доказать.

Как видно из формулы для β1 и β0. Для данного набора данных у нас, вероятно, будет решение в закрытой форме для линейной модели. Мы также можем выполнить всю алгебру в Матричной форме. Вы можете найти его происхождение здесь.

Имейте в виду, что решение в закрытой форме иногда может быть проблематичным с многомерной линейной регрессией, в которой есть несколько независимых переменных (например, X1, X2, X3 и т. д.), поскольку обратная матрица существует только если X имеет полный ранг, что означает наличие идеальной мультиколлинеарности, у него не будет решения в закрытой форме. Чтобы предотвратить это, нам нужно исключить такие переменные в линейной модели.

Шаг 3: Как минимизировать функцию стоимости с помощью градиентного спуска?

Мы говорили об аналитическом решении для линейной регрессии. Далее давайте поговорим о подходе с численной аппроксимацией, называемом градиентным спуском, для решения проблемы оптимизации.

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

  1. Первоначально мы можем принять β1 и β0 любые значения (например, β1 = 0 и β0 = 0). Пусть L будет скоростью обучения. L определяет величину изменений, которые мы должны применить для обновления параметров. Чем больше скорость обучения, тем быстрее функция стоимости будет приближаться к точке минимума. Если L слишком велико, ваш оптимизатор выйдет за пределы «кривой» и пропустит точку минимума. И наоборот, если L слишком мало, для достижения минимума потребуется очень много времени. Следовательно, нам нужно стратегически установить скорость обучения.
  2. Вычислите частную производную функции стоимости по каждому параметру (о котором я говорил выше). Подставьте значения β1, β0, Xi, Yi в каждую частную производную и вычислите их значения. Производные значения определяют направление изменений этих параметров.
  3. Обновите параметры, используя следующую формулу

4. Повторяйте шаги 2 и 3, пока параметры не перестанут изменяться или значения производной не станут достаточно близкими к нулю.

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

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

Работает ли линейная регрессия в задачах классификации?

Короткий ответ - нет.

Мы знаем, что переменная результата в линейной регрессии является непрерывной переменной. Может ли он обрабатывать категориальные переменные результата, например, виды животных (собака или кошка, обнаружение объектов, поезд или самолет, обнаружение спама, спамовые электронные письма и не спамовые электронные письма)? Очевидно, что не может, потому что прогнозируемая переменная результата из линейного уравнения, которое мы разрабатываем, может принимать бесконечное число значений. Прогнозируемые результаты для задачи классификации могут принимать только конечное число значений, например 2 или небольшое количество значений.

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

Что такое логистическая регрессия?

Проще говоря, мы можем разбить логистическую регрессию на две части: регрессию и логистику.

Регрессия. Модель линейной регрессии используется для оценки значения логитов (также известных как логарифмические шансы).

  • Пусть P будет вероятностью возникновения определенного события (например, электронное письмо является спамом). Шансы определяются как отношение «вероятности конкретного события» к «вероятности того, что событие не произойдет». Логарифмические шансы — это просто логарифмическое значение шансов.

  • Мы можем выразить логарифмические шансы в терминах линейной модели

  • Тогда мы можем решить для P

Логистика. Модель логистической регрессии также можно рассматривать как ввод модели линейной регрессии в логистическую функцию (также известную как сигмоидальная функция). Функция логистической регрессии преобразует значения логита (т. е. βXi) в диапазоне от −∞ до +∞ в Yi в диапазоне от 0 до 1.

Теперь я думаю, что у нас есть подходящая модель для модели классификации. Мы можем установить порог (например, 0,5) для Y, чтобы определить переменную результата. Например, если Y ≥ 0,5, это спам, а если Y ‹ 0,5, это не спам.

Почему бы нам не использовать Sum Squared Error (SSE) из OLS в качестве функции стоимости в логистической регрессии?

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

Есть ли аналитическое решение для минимизации суммы квадратов ошибок в логистической регрессии? Короткий ответ: НЕТ.

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

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

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

Логистическая регрессия с MLE и кросс-энтропией

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

С оценкой максимального правдоподобия мы хотели бы максимизировать вероятность наблюдения Y при заданном X в модели логистической регрессии.

Пусть P будет вероятностью возникновения определенного события (например, электронное письмо является спамом, обозначаемым Y = 1) при заданном X. Тогда 1-P будет означать вероятность Y = 0 при заданном X.

Следовательно, для данного наблюдения (т. е. Yi и Xi) мы хотим

  • максимизировать P, если Y = 1
  • максимум 1-P, если Y = 0

Если мы немного покрутим это, мы хотим

  • максимизировать Y*P, если Y= 1
  • максимизировать (1-Y)*(1-P), если Y = 0.

Затем давайте объединим две вышеупомянутые функции, мы хотим

  • максимизировать Y*P + (1-Y)*(1-P)

Давайте применим логарифмическую функцию и изменим максимизацию функции стоимости на минимизацию противоположной функции стоимости, мы хотим

  • свернуть -[Y*log(P) + (1-Y)*log(1-P)]

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

У приведенной выше функции стоимости есть причудливое название: Двоичная кросс-энтропия.

Минимизируйте функцию стоимости бинарной кросс-энтропии в логистической регрессии

Существует ли аналитическое решение для минимизации бинарной кросс-энтропии в логистической регрессии? Короткий ответ - нет.

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

Можем ли мы использовать градиентный спуск, чтобы минимизировать бинарную кросс-энтропию в логистической регрессии? Короткий ответ: да.

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

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

Выход за рамки классической линейной регрессии

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

Например, в модели гребневой регрессии у нас есть функция стоимости

В модели регрессии лассо у нас есть функция стоимости

В регрессионной модели эластичной сети у нас есть функция стоимости

Эти три варианта линейной регрессии связаны с регуляризацией, которая представляет собой метод ограничения гибкости и сложности модели, чтобы предотвратить риск переобучения. . Здесь λ — это гиперпараметр, определяющий степень гибкости модели. Мы можем настроить его значение с помощью перекрестной проверки и поиска по сетке.

Выход за рамки ванильной логистической регрессии

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

Например, в данных о транзакциях по кредитным картам может быть очень небольшое количество мошеннических транзакций. Эта проблема несбалансированности классов усложняется при использовании логистической регрессии. Если там только 0,1% транзакций были мошенническими. Мы можем просто предсказать все транзакции как обычно и получить точность 99,9%. Как здорово! Но такая модель была бы бесполезна, потому что мы не сможем предсказать какие-либо мошеннические транзакции.

Чтобы решить эту проблему дисбаланса классов, мы можем изменить нашу функцию стоимости бинарной кросс-энтропии, чтобы она была

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

Возвращаясь к нашему примеру, α1 = 1/0,1% = 100, α2 = 1/99,9% = 1. Таким образом, мы будем наказывать за мошеннические транзакции в 100 раз больше, чем за обычные транзакции. Поэтому эта небольшая модификация значительно повысит точность обнаружения мошеннических транзакций.

Заключительные примечания

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

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

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

Спасибо за чтение !!!

Если вам понравилась эта статья и вы хотите Купить мне кофе, нажмите нажмите здесь.

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