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

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(L0-регуляризация)
(Добавление ссылки на основную статью (Artyom Savov))
 
Строка 27: Строка 27:
=== Elastic Net ===
=== Elastic Net ===
-
'''Elastic Net''' (англ. elastic net regularization) объединяет L1- и L2-штрафы с помощью смешивающего параметра <tex>\alpha \in [0,1]</tex><ref name="elasticnet">Zou H., Hastie T. ''Regularization and variable selection via the elastic net''. Journal of the Royal Statistical Society, Series B, 67(2):301–320, 2005.</ref>:
+
{{Main|Elastic Net}}
 +
'''Elastic Net''' (англ. elastic net regularization) объединяет L1- и L2-штрафы с помощью смешивающего параметра <tex>\alpha \in [0,1]</tex><ref name="elasticnet">Zou H., Hastie T. ''Regularization and variable selection via the elastic net''. Journal of the Royal Statistical Society, Series B, 67(2):301-320, 2005.</ref>:
-
::<tex>R(\theta) = \alpha \|w\|_1 + (1 - \alpha) \|w\|_2^2.</tex>
+
:: <tex>R(\theta) = \alpha \|w\|_1 + (1 - \alpha) \|w\|_2^2.</tex>
Метод сохраняет разреживающие свойства LASSO, но лучше работает при сильной корреляции признаков, когда LASSO склонен выбирать лишь один из группы скоррелированных признаков.
Метод сохраняет разреживающие свойства LASSO, но лучше работает при сильной корреляции признаков, когда LASSO склонен выбирать лишь один из группы скоррелированных признаков.

Текущая версия

Статья написана с использованием LLM DeepSeek V3 и проверена участником Artyom Savov 16:58, 26 июня 2026 (MSD)


Содержание

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

Мотивация и связь с теорией обобщения

Классическая дилемма смещения и дисперсии (англ. bias-variance tradeoff) утверждает, что чрезмерно сложная модель имеет низкое смещение, но высокую дисперсию, что проявляется как переобучение. Регуляризация уменьшает эффективную сложность модели, чаще всего за счёт введения априорных предположений о распределении параметров (например, о близости к нулю). В теории статистического обучения (англ. statistical learning theory) регуляризация напрямую связана с минимизацией эмпирического риска с контроля сложности (англ. structural risk minimization), что позволяет получить более узкие границы обобщения[1].

Явная регуляризация: штрафные добавки к функции потерь

Наиболее распространённый подход — добавление к эмпирическому риску J(\theta) (например, MSE или кросс-энтропии) штрафного члена R(\theta), умноженного на коэффициент регуляризации \lambda > 0:

\mathcal{L}(\theta) = J(\theta) + \lambda R(\theta).

L2-регуляризация (Регуляризация по Тихонову)

При L2-регуляризации (англ. L2 regularization), известной также как гребневая регрессия (англ. ridge regression) в линейных моделях, штраф пропорционален квадрату L2-нормы вектора весов w (без учёта свободного члена):

R(\theta) = \|w\|_2^2 = \sum_{i} w_i^2.

Данный метод заставляет веса оставаться малыми, но не приводит к их обнулению. В глубоком обучении этот же принцип часто называют весовой деградацией (англ. weight decay), поскольку градиентный шаг эквивалентен умножению весов на множитель (1 - \eta \lambda) на каждой итерации. Исторически метод восходит к работам А. Н. Тихонова по некорректно поставленным задачам[1] и был популяризован в статистике Хоэрлом и Кеннардом[1].

L1-регуляризация (LASSO)

При L1-регуляризации (англ. L1 regularization) штрафуется сумма абсолютных значений весов:

R(\theta) = \|w\|_1 = \sum_{i} |w_i|.

В линейной регрессии этот метод известен как LASSO (англ. least absolute shrinkage and selection operator)[1] за авторством Р. Тибширани. Выпуклая, но негладкая природа штрафа приводит к тому, что оптимум часто лежит на осях координат — часть весов становится точно равной нулю. Таким образом L1-регуляризация автоматически выполняет отбор признаков (англ. feature selection).

Elastic Net

Основная статья: Elastic Net

Elastic Net (англ. elastic net regularization) объединяет L1- и L2-штрафы с помощью смешивающего параметра \alpha \in [0,1][1]:

R(\theta) = \alpha \|w\|_1 + (1 - \alpha) \|w\|_2^2.

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

L0-регуляризация

Основная статья: L0-регуляризация

L0-регуляризация (англ. L0 regularization) наказывает непосредственно количество ненулевых параметров, то есть использует «псевдонорму» \|w\|_0 = |\{i \mid w_i \ne 0\}|. Минимизация L0-штрафа соответствует задаче отбора наилучшего подмножества признаков (англ. best subset selection) и приводит к максимально разреженным моделям. Однако данная задача является NP-трудной в общем случае из-за комбинаторной природы, и на практике её решают приближёнными методами. Строгое решение этой проблемы возможно путём её формулировки как задачи смешанного целочисленного линейного программирования (MILP) с введением бинарных индикаторных переменных для каждого признака. Это позволяет находить глобальный оптимум с помощью специализированных солверов, хотя подход и остаётся вычислительно затратным для данных высокой размерности.

Популярной непрерывной заменой L0 выступает L1-регуляризация (выпуклая релаксация). Более точные приближения основаны на невыпуклых штрафах (SCAD, MCP) или на явной стохастической оптимизации L0-нормы. В глубоких нейронных сетях L0-регуляризацию можно реализовать через вентильные переменные, обучение которых позволяет динамически обнулять структурные элементы (нейроны или целые каналы)[1]. Такой подход сочетает разреживающий эффект с непрерывной оптимизацией.

Байесовская интерпретация

С точки зрения байесовского вывода (англ. bayesian inference), максимизация апостериорной вероятности (англ. MAP estimation) эквивалентна минимизации регуляризованной функции потерь. L2-регуляризация соответствует гауссовскому априорному распределению на веса w \sim \mathcal{N}(0, \sigma^2 I), а L1 — распределению Лапласа w \sim \text{Laplace}(0, b). Параметр \lambda обратно пропорционален дисперсии априорного распределения. Elastic Net можно представить как комбинацию гауссовского и лапласовского априорных распределений.

Эквивалентность с задачей с ограничением и условия ККТ

Регуляризованную задачу \min_\theta J(\theta) + \lambda R(\theta) можно рассматривать как лагранжиан задачи условной минимизации:

\min_\theta J(\theta) при условии R(\theta) \le t,

где t \ge 0 — некоторый порог. При определённых условиях регулярности (например, выпуклости) по теореме Каруша–Куна–Таккера (англ. KKT) существует такое значение \lambda \ge 0, что решение условной задачи совпадает с решением штрафной задачи, и множитель Лагранжа \lambda играет роль коэффициента регуляризации[1]. Эта связь объясняет поведение регуляризаторов: например, ограничение в виде L1-нормы задаёт ромбовидную допустимую область, пересечение которой с линиями уровня функции потерь часто происходит в вершинах, что порождает разреженные решения.

Регуляризация в глубоком обучении

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

Dropout

Dropout (англ. dropout) — стохастический метод, предложенный Сриваставой и др.[1]. Во время каждой итерации обучения каждый нейрон (кроме выходных) временно исключается из сети с вероятностью p (обычно 0.2–0.5). Это заставляет сеть не полагаться на отдельные нейроны и может рассматриваться как усреднение экспоненциально большого ансамбля подсетей. На этапе предсказания выпадения отключаются, а веса масштабируются на коэффициент 1-p (или используется эквивалентное инвертированное масштабирование на обучении).

Другие варианты включают Spatial Dropout (выпадение целых карт признаков в свёрточных сетях), DropBlock (выпадение непрерывных блоков) и DropConnect (обнуление отдельных связей, а не целых нейронов).

Пакетная нормализация как неявная регуляризация

Пакетная нормализация (англ. batch normalization)[1] изначально предназначена для ускорения обучения, но также демонстрирует регуляризующий эффект. Стохастичность, вносимая оценкой среднего и дисперсии по мини-пакету, действует подобно лёгкому шуму, сглаживая целевую функцию и снижая переобучение.

Аугментация данных

Аугментация данных (англ. data augmentation) — неявный способ регуляризации, расширяющий обучающую выборку путём случайных, но семантически инвариантных преобразований: повороты, отражения, обрезка в изображениях, шум, изменение высоты тона в аудио, замена синонимов в тексте и т.д. К аугментациям относят и специальные техники смешивания, такие как Mixup[1] (линейная интерполяция пар входов и их меток) и CutMix (замена прямоугольной области одного изображения на фрагмент другого).

Label Smoothing

Label Smoothing (англ. label smoothing) заменяет one-hot целевые вероятности y_k на сглажённые: y_k^{LS} = y_k (1 - \alpha) + \alpha / K, где K — число классов. Это предотвращает излишнюю самоуверенность модели и улучшает калибровку вероятностей, действуя как регуляризатор[1].

Ранняя остановка

Ранняя остановка (англ. early stopping) — прекращение обучения, когда ошибка на валидационной выборке перестаёт уменьшаться. В линейных моделях с квадратичной функцией потерь ранняя остановка эквивалентна L2-регуляризации с определённым \lambda[1]. В глубоких сетях это простой и эффективный способ предотвратить переобучение без модификации функции потерь.

Современные методы и направления исследований

AdamW: разделение весовой деградации и адаптивного обучения

Классическое применение L2-регуляризации в адаптивных оптимизаторах (англ. Adam) ведёт к тому, что весовая деградация перестаёт быть эквивалентной чистому L2-штрафу. AdamW[1] исправляет это, реализуя весовую деградацию непосредственно как вычитание \lambda w из параметров, отдельно от градиента функции потерь. Такой подход часто улучшает обобщение.

Sharpness-Aware Minimization (SAM)

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

Stochastic Depth и DropPath

В очень глубоких архитектурах (например, ResNet) применяют Stochastic Depth — случайное исключение целых слоёв или блоков во время обучения. Это можно рассматривать как расширение Dropout на уровень архитектурных компонентов.

Феномен двойного спуска и роль регуляризации

Классическая U-образная кривая зависимости ошибки от сложности модели была переосмыслена в контексте современных перепараметризованных сетей. Двойной спуск (англ. double descent)[1] показывает, что после достижения порога интерполяции (где модель идеально запоминает обучающие данные) ошибка на тесте может вновь уменьшаться. В этой области явная регуляризация (L2, dropout) часто не обязательна или даже вредна, а основную роль играет неявная регуляризация, индуцированная алгоритмом оптимизации (англ. implicit bias градиентного спуска).

Выбор гиперпараметров регуляризации

Ключевой параметр \lambda (или p у Dropout) обычно настраивается по сетке или с помощью байесовской оптимизации с использованием кросс-валидации (англ. cross-validation). Оценка обобщающей способности должна проводиться на отложенном тестовом множестве, не участвовавшем ни в обучении, ни в валидации.

Заключение

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

См. также

Научная литература

Личные инструменты