Простое объяснение регуляризации (L1 и L2)

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

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

Вы также можете найти реализацию техники регуляризации в Keras в следующей статье этой серии здесь.

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

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

Однако на практике шаблоны данных не так просты и в основном требуют уравнений более высокой степени для моделирования процесса. Например, данные о платежных транзакциях имеют мошенническую структуру, которая зависит от нескольких независимых переменных, таких как источник платежа, сумма, валюта, канал и т. д., то есть термин «X» в приведенном выше уравнении. Поэтому можно описать практическую модель -

Итак, идея построения модели машинного обучения состоит в том, чтобы определить веса A1, A2, A3. . . . . В приведенном выше уравнении для каждой независимой функции «X». Теперь, во время изучения этих параметров, шум в данных также фиксируется как закономерность и представляется одним из членов «AiXi» в приведенном выше уравнении. Это явление называется переподгонка или переобучение данных моделью. Метод уменьшения/удаления этих терминов называется Регуляризация. Существует 2 типа методов регуляризации:

L2 (Конек) и L1 (Лассо)

Регуляризация L2 (хребет)

Регуляризация L2 «уменьшает» влияние незначительных (шумовых) членов в уравнении во время изучения шаблона данных моделью. Это достигается путем добавления штрафного члена к функции потерь. Функция потерь, по сути, фиксирует разницу между прогнозируемым и фактическим значением. Хорошая модель должна иметь как можно больше минимальных потерь без переобучения.

Процесс обучения в основном направлен на постоянное обновление весов (Ai) в исходном уравнении для минимизации потерь (L). Идеальная модель будет иметь значение потерь, равное 0, что в основном означает, что каждое истинное значение равно прогнозируемому значению. Это сценарий, в котором даже шум точно предсказывается моделью, что приводит к переоснащению.

Регуляризация защищает от переобучения, добавляя член (уравнение 5) каждый раз, когда обновляется потеря. Член 'Λ' (лямбда) в уравнении — это гиперпараметр, который настраивается вручную для определения величины регуляризации, применяемой к модели. Вы можете представить «Λ» как ручку, которая либо останавливает регуляризацию (Λ = 0), либо применяет ее с полной силой (Λ = 1 ).

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

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

На каждой итерации процесса обучения модель измеряет изменение потерь из-за изменения весов (Ai), которое по существу принимает производную.

Производная от дополнительного штрафного члена, добавляемого в функцию потерь, дает 2*Lambda.

Это дополнительное значение 2*Lambda вычитается из весовых параметров (Ai) во время обновления весов, тем самым «уменьшая» вес признаков, то есть регуляризацию L2.

Регуляризация L1

Регуляризация L1 аналогична регуляризации L2 с основным отличием в сроке штрафа. Штрафной член в L1 представляет собой сумму абсолютных значений весов вместо суммы квадратов весов.

Это приводит к тому, что незначительные веса «удаляются, а не как в L1.