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

В этом блоге мы узнаем:

  1. Что такое функция затрат? Какую роль он играет в любом алгоритме машинного обучения?
  2. Как в линейной регрессии MSE как функция стоимости и MSE как показатель оценки контекстуально отличаются друг от друга?
  3. Каковы различные способы решения алгоритмов линейной регрессии и чем они отличаются друг от друга?
  4. Линейная регрессия: метод наименьших квадратов (нематричная и матричная формы)

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

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

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

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

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

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

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

Ваши сомнения вполне законны.

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

Здесь параметры - это не что иное, как коэффициенты.

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

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

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

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

Подходы к решению линейной регрессии

Обычный метод наименьших квадратов

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

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

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

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

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

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

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

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

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

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

Частичное производное от суммы квадратов остатков

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

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

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

Простая линейная регрессия: нематричное решение

Сначала мы поймем частичную дифференциацию простой линейной регрессии на основе линейных уравнений.

Шаг 1. Разбивка прогнозируемого значения на бета 0 и бета 1 (линейное уравнение).

Шаг 2. Возьмем частную производную с бета 0, а затем с бета 1 и приравняем их к нулю.

Шаг 3. Упростите эти два уравнения, чтобы получить уравнения бета-0 и бета-1.

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

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

Давайте создадим класс линейной регрессии в Python.

Здесь, чтобы упростить вещи, мы вычисляем числитель и знаменатель бета-1 отдельно, а затем делим их, чтобы получить значение бета-1.

Получив значение бета 1, мы просто поместили значение наклона в уравнение бета 0 и также получили значение бета 0.

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

Линейная регрессия: нематричное решение

(Работает как для простой, так и для множественной линейной регрессии)

Давайте сначала упорядочим набор данных и уравнение линейной регрессии в матричной форме.

Шаг 1. Преобразуйте линейную функцию стоимости равенства в матричную форму.

Шаг 2. Возьмите дифференциал функции стоимости J(a).

Шаг 3. Держите производную равной нулю и найдите коэффициент «а».

Вот и все! Это матричное решение для нахождения обычного метода наименьших квадратов.

Давайте реализуем это на Python.

  1. Сначала мы создали две локальные переменные с именами coef_ и intercpet_ для хранения оптимизированных значений, изначально они равны нулю.
  2. Мы делаем метод, в котором мы сначала вставили постоянное значение 1 в набор данных.
  3. Затем мы просто закодировали это уравнение, которое мы получили, выполнив частную производную.

4. Значения Coef_ и intercept_ обновлены.

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

Заключение

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

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

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

Спасибо, что присоединились ко мне в этом путешествии, и я надеюсь, что это подробное объяснение расширит ваше понимание линейной регрессии.

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

Приятного обучения!

Обо мне:

Я работаю руководителем производства в India Woodline Ltd. С 2020 года я стремлюсь и увлечен честным и объяснимым искусственным интеллектом и наукой о данных. У меня диплом о высшем образовании в области науки о данных от III-T Bangalore и несколько сертификатов Data Science и AI. Я обладаю прочным фундаментом в цепочке поставок, клиентскойи розничной аналитике.

Вы можете найти меня здесь:

Гитхаб

LinkedIn