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

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

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

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

  • Что такое регуляризация
  • Как работает регуляризация
  • Методы регуляризации

Перейдем к этой статье о регуляризации в машинном обучении.

Что такое регуляризация?

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

Перейдем к этой статье о регуляризации в машинном обучении.

Как работает регуляризация?

Основная идея состоит в том, чтобы оштрафовать сложные модели, то есть добавить термин сложности, который приведет к большим потерям для сложных моделей. Чтобы понять это, давайте рассмотрим простое соотношение для линейной регрессии. Математически это выражается следующим образом:
Y≈ W_0+ W_1 X_1+ W_2 X_(2 )+⋯+W_P X_P

Где Y — изученное отношение, т. е. прогнозируемое значение.
X_1,X_(2),〖…, X〗_P — признаки, определяющие значение Y.
W_1,W_(2) ,〖…, W〗_P — веса, присвоенные функциям X_1, X_(2),〖…,X〗_P соответственно.
W_0 представляет собой смещение.

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

Функция потерь, обычно используемая для линейной регрессии, называется остаточной суммой квадратов (RSS). Согласно приведенному выше соотношению линейной регрессии, его можно представить в виде:
RSS= ∑_(j=1)^m (Y_i-W_0-∑_(i=1)^n W_i X_ji )²

Мы также можем назвать RSS целью линейной регрессии без регуляризации.

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

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

Но как он присваивает штраф коэффициентам, давайте разберемся.

Перейдем к этой статье о регуляризации в машинном обучении.

Методы регуляризации

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

Регрессия гребня (регуляризация L2)

Этот метод регуляризации выполняет регуляризацию L2. Он изменяет RSS, добавляя штраф (количество усадки), эквивалентный квадрату величины коэффициентов.
∑_(j=1)^m (Y_i-W_0-∑_(i=1)^n W_i X_ji )²+ α∑_(i=1)^n W_i²=RSS+ α∑_(i=1)^n W_i²

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

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

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

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

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

Когда 0‹α‹∞, для простой линейной регрессии коэффициент гребневой регрессии будет где-то между 0 и 1.

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

Регрессия лассо (регуляризация L1)

Этот метод регуляризации выполняет регуляризацию L1. Он изменяет RSS, добавляя штраф (количество усадки), эквивалентный сумме абсолютного значения коэффициентов.
∑_(j=1)^m (Y_i-W_0-∑_(i=1)^n W_i X_ji )²+ α∑_(i=1)^n |W_i |=RSS+ α∑_(i=1)^n |W_i |
Теперь коэффициенты оцениваются с использованием этой модифицированной функции потерь.

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

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

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

Как и регрессия гребня, α (альфа) в регрессии лассо может принимать различные значения следующим образом:

Когда α=0, мы получим те же коэффициенты, что и простая линейная регрессия.

Когда α=∞, коэффициент регрессии лассо будет равен нулю.

Когда 0‹α‹∞, для простой линейной регрессии коэффициент лассо-регрессии будет где-то между 0 и 1.

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

Думайте о гребневой регрессии как о решении уравнения, где сумма квадратов весов (коэффициентов) меньше или равна s. В соответствии с этим, учитывая, что в данной задаче есть 2 параметра, гребневая регрессия выражается как
W_1²+ W_2²≤s

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

Точно так же регрессию лассо можно представить как решение уравнения, в котором сумма модулей весов (коэффициентов) меньше или равна s. В соответствии с этим, учитывая, что в данной задаче есть 2 параметра, регрессия лассо выражается как
|W_1 |+ |W_2 |≤s

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

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

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

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

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

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

Однако лассо-регрессия, когда α достаточно велико, сократит некоторые оценки коэффициентов точно до 0. Вот почему лассо дает разреженные решения.

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

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

Если у вас есть какие-либо вопросы по этой теме, оставьте комментарий ниже, и мы свяжемся с вами. Если вы хотите прочитать больше статей о самых популярных на рынке технологиях, таких как Python, DevOps, Ethical Hacking, вы можете обратиться к официальному сайту Edureka.

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

1.Учебник по науке о данных

2.Математика и статистика для науки о данных

3.Линейная регрессия в R

4.Учебник по науке о данных

5.Логистическая регрессия в R

6.Алгоритмы классификации

7.Случайный лес в R

8.Дерево решений в R

9.Введение в машинное обучение

10.Наивный Байес в R

11.Статистика и вероятность

12.Как создать идеальное дерево решений?

13.10 главных мифов о роли специалистов по данным

14.5 лучших алгоритмов машинного обучения

15.Аналитик данных, инженер данных и специалист по данным

16.Типы искусственного интеллекта

17. R против Python

18.Искусственный интеллект, машинное обучение и глубокое обучение

19.Проекты машинного обучения

20.Вопросы и ответы на интервью с аналитиком данных

21.Наука о данных и инструменты машинного обучения для непрограммистов

22.10 лучших фреймворков машинного обучения

23.Статистика для машинного обучения

24.Случайный лес в R

25.Алгоритм поиска в ширину

26.Линейный дискриминантный анализ в R

27.Предпосылки для машинного обучения

28.Интерактивные веб-приложения с использованием R Shiny

29.10 лучших книг по машинному обучению

30.Обучение без учителя

31.10 лучших книг по науке о данных

32.Контролируемое обучение

Первоначально опубликовано на https://www.edureka.co 7 августа 2019 г.