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

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

Некоторые из типов регуляризации:

  1. Регрессия LASSO (норма L1)
  2. Ридж-регрессия (норма L2)
  3. Эластичная чистая регрессия
  4. Выбывать

1. Регрессия LASSO (LвостокAабсолютнаяSусадкаи SвыборыOоператор)

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

то есть сжимает их до нуля. Целевая функция для минимизации принимает вид:

где w = назначенные веса,

у = зависимая переменная,

X = независимая переменная,

λ =параметр регуляризации

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

Таким образом, функция потерь:

где βo = пересечение

β1 = наклон

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

2. Регрессия хребта (норма L2)

Предотвращает слишком большие веса (определяется нормой L2). Чем больше вес, тем сложнее модель, больше шансов переобучения.

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

Таким образом, функция потерь:

3. Эластичная чистая регрессия

Регрессия эластичной сети сочетает в себе регуляризацию L1 и L2 для построения регрессионной модели.

где α — параметр смешивания между гребнем (α = 0) и лассо (α = 1).

Теперь нужно настроить два параметра: λ и α.

4. Исключение

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

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

Отсев: простой способ предотвратить переобучение нейронных сетей, 2014 г.

кредит изображения: ai-pool.com

Ключевые выводы:

  1. Регуляризация делается для того, чтобы сделать данные более гладкими для машинного обучения.
  2. LASSO обнуляет веса не влияющих параметров. Это вносит разреженность в веса. Это заставляет больше весов быть равными нулю, чем уменьшение средней величины всех весов.
  3. Ridge заставляет коэффициенты B (уклон/частичный уклон) быть ниже, но не 0. Также он не удаляет ненужные функции, но минимизирует их влияние.
  4. Elastic Net представляет собой комбинацию L1 и L2 для настройки веса параметров.
  5. Dropout случайным образом выключает и включает узлы модели глубокого обучения, чтобы сделать обучение достаточно медленным, чтобы избежать переобучения.

— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —

Нравится, поделитесь, если вы нашли это полезным.

Я открыт для любых предложений / исправлений / комментариев, поэтому, пожалуйста, не стесняйтесь.

Кроме того, свяжитесь со мной в LinkedIn

Открыт для работы начального уровня в качестве Data Scientist / Data Analyst. Пожалуйста, напишите в LinkedIn о моем резюме, чтобы узнать о вакансиях в ближайшем будущем 🤗 🙏