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

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

функция стоимости, хотя и имеет разные варианты (см. MAE, RMSE, MSE), в основном содержит 2 переменные (y_real, y_predicted); Это позволяет нам измерить ошибку, другими словами, разницу между фактическими выходными значениями и прогнозируемыми выходными значениями в модели машинного обучения.

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

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



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

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

Алгоритм градиентного спуска, созданный на основе функции стоимости одномерной (для простоты) модели линейной регрессии, выглядит следующим образом.

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

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



Нормальное уравнение

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

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

На рисунке мы видим набор данных с 4 переменными (x1, x2, x3, x4) и с определенными выходными значениями (y) (см. Контролируемое обучение) . Когда мы показываем этот набор данных как матрицу, а матрица X представляет переменные в нашем наборе данных; Матрица y представляет собой выходные значения. Когда вычисление нормального уравнения выполняется по этим матрицам X и y, наше значение тета дает нам переменную функции гипотезы модели с наименьшей ошибкой и, следовательно, высочайшая точность.

Итак, что можно сделать, если «X раз транспонирования X» в операции является необратимой функцией?

  1. Может применяться сокращение функций, которое также используется для упрощения набора данных. Если наша переменная x1 - это площадь дома в квадратных метрах, а наша переменная x2 - это площадь дома в квадратных футах, тогда имеет смысл бросьте один из них.
  2. Если количество наблюдений (также известное как m) меньше или равно количеству функций (также известному как n), некоторые переменные можно удалить. и / или регуляризованный.

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

использованная литература