Регуляризация: предотвращение переобучения модели

машинное обучение
Регуляризация: предотвращение переобучения модели

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

Рекламный дисплей моего веб-сайта лучше, добро пожаловать в гости:Мистер Лу.info/machine- сейчас..., мой аккаунт WeChat:ai-qingxiu.

Ридж-регрессия

Многие модели машинного обучения решают задачи по параметрам модели.\boldsymbol{w}, чтобы минимизировать функцию потерь. Например, дляmУчебный набор выборок баров, функция потерь линейной регрессии:

\begin{aligned} L(\boldsymbol{w}) &= \frac{1}{2}\sum_{i=1}^m(f_\boldsymbol{w}(\boldsymbol{x_i}) - y_i)^2 \\  &= \frac{1}{2}\sum_{i=1}^m(\boldsymbol{w}^\top\boldsymbol{x_i} - y_i)^2 \end{aligned}

На основе приведенной выше формулы мы добавляем обычный член, чтобы получить новую функцию потерь:

L(\boldsymbol{w}) = \frac{1}{2}\left(\sum_{i=1}^m(\boldsymbol{w}^\top\boldsymbol{x_i} - y_i)^2 + \lambda\sum_{j=1}^nw_j^2\right)

Обратите внимание, что модель\boldsymbol{w}имеютnразмерность, вновь добавленный регулярный член непосредственно соответствует каждомуwВозьмите квадрат.

Интуитивно понятно, что когда мы минимизируем текущую новую функцию потерь, с одной стороны, нам нужно сделать член ошибки самой линейной регрессии.\sum_{i=1}^m(\boldsymbol{w}^\top\boldsymbol{x_i}-y_i)^2минимизировать, с другой стороны, каждыйwне может быть слишком большим, иначе обычный член\lambda\sum_{j=1}^nw_j^2будет здорово. Обычный срок также называется штрафным сроком, который используется для наказания каждогоwСитуация, когда модель слишком сложна из-за слишком большого размера. в обычный срок\lambdaЭто коэффициент, используемый для уравновешивания функции потерь и регулярного члена. Он называется коэффициентом регуляризации. Чем больше коэффициент, тем сильнее штрафной эффект регулярного члена. Коэффициент регуляризации будет упомянут ниже.

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

\frac \partial {\partial w_j}L(w) = \sum_{i=1}^m(\boldsymbol{w}^\top\boldsymbol{x_i} - y_i)x_{i,j} + \lambda w_j

Линейная регрессия использует квадратичные регуляризаторы для штрафных параметров\boldsymbol{w}Весь процесс называется регрессией гребня или регуляризацией L2. Другие модели машинного обучения, такие как логистическая регрессия и нейронные сети, также могут использовать регуляризацию L2.

Лассо-регрессия Лассо-регрессия

Если регуляризатор используется для штрафа за параметры линейной регрессии\boldsymbol{w}, известный как регрессия Лассо (оператор наименьшего абсолютного сокращения и выбора) или регрессия с использованием регуляризации L1:

L(\boldsymbol{w}) = \frac{1}{2}\left(\sum_{i=1}^m(\boldsymbol{w}^\top\boldsymbol{x} - y)^2 + \lambda\sum_{i=1}^n|w_i|\right)

Можно видеть, что регрессия Лассо в основном использует абсолютное значение в качестве штрафного члена. Термин абсолютного значения имеет внезапное изменение в нуле, и его вывод несколько более проблематичен. Решение для регрессии Лассо требует использования метода субградиента или метода проксимального градиентного спуска (PGD), который здесь повторяться не будет.

общий регулярный срок

Регулярный термин происходит от понятия нормы в линейной алгебре. Норма есть функция, для функцииN,имеютV \to [0, +\infty),в,Vявляется векторным пространством. То есть норма преобразует вектор в неотрицательный скаляр. Общие нормы таковы:

范数

Разреженное решение и регуляризация L1

Если обучающие данные представляют собой многомерный разреженный (разреженный) объект, например, только 1000 измерений 100 000 000-мерного объекта отличны от нуля, а все остальные объекты равны 0 или пусты, поэтому параметры в обученной модели\boldsymbol{w}Скорее всего, многие близки к 0. При прогнозировании цен на жилье, если мы хотим использовать особенности широты и долготы домов, в частности, предполагая, что глобальная широта может быть разделена на 10 000 частей, долгота может быть разделена на 10 000 частей, а географическое положение дома может быть выраженный как «Долгота 1001_широта 999», дом помечен как 1 в этом месте, в противном случае объект помечен как 0. Характеристики широты и долготы во всей модели достигают 100 000 000 измерений. На самом деле мы знаем, что, за исключением городов, большинство территорий, таких как горы и океаны, необитаемы, и большинство параметров признаков географического положения в модели фактически должны быть равны нулю. Если поставить параметр\boldsymbol{w}Все сохранено, модель очень большая и занимает много места в памяти. На самом деле нет необходимости сохранять все эти бесполезные параметры, если мы обнулим эти бесполезные параметры и запишем только полезные параметры, то место, занимаемое моделью, сильно сократится. Решения с очень большим количеством нулевых компонент параметров модели называются разреженными решениями.

Регуляризация может просто решить вышеуказанную проблему. Один из способов — использовать штрафной член для подсчета количества ненулевых параметров в модели, т. е. надеяться, что модель\boldsymbol{w}как можно больше нулевых компонентов и как можно меньше ненулевых компонентов. Этот метод более интуитивен, это фактически норма L0, но при решении этот метод превратит задачу выпуклой оптимизации в задачу невыпуклой оптимизации, которую неудобно решать. Регуляризация L2 добавляет квадратный штрафной член, который сохраняет параметры как можно меньшими, не принуждая их к нулю. Регуляризация L1 также наказывает ненулевые параметры, что может привести к тому, что некоторые параметры будут близки к нулю, в конечном итоге в определенной степени равны нулю, что приблизительно играет роль L0. С точки зрения градиентного спуска L2 представляет собой квадратный членw^2, производная которой2w, выполнить градиентный спуск в направлении производной и не может упасть до нуля по абсолютному значению; L1 — член абсолютного значения|w|, член абсолютного значения может заставить те параметры, которые близки к нулю, в конечном итоге стать равными нулю.

L1和L2正则化的区别 来源:Google Developers

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

Давайте разберемся с регуляризацией L1 и L2 с визуальной точки зрения. Предполагая, что наша модель линейной регрессии имеет только двумерные признаки, если быть точным,\boldsymbol{w}только два компонентаw_1иw_2, мы используем его как две оси и рисуем контуры квадрата члена ошибки и регулярного члена, как показано на следующем рисунке.

L1正则化比L2正则化更容易使得参数为零 来源:《机器学习》

Среди них правый верхний угол — линия контура квадратного члена ошибки, которая представляет собой линию, соединяющую точки с одинаковым значением квадратного члена ошибки; центр оси координат — линия контура регулярного члена, который находится в(w_1, w_2)Линия, соединяющая точки в пространстве, где обычный член принимает одно и то же значение. Если член регуляризации отсутствует, то оптимальным решением должен быть центр контура квадрата члена ошибки, то есть точка, где квадрат члена ошибки наименьший. В случае члена регуляризации оптимальным решением является компромисс между членом квадрата ошибки и членом регуляризации, то есть пересечением на графике. Как видно из рисунка, пересечение регулярности L1 находится на оси координат, т. е.w_1илиw_2равен 0, а пересечение регулярности L2 не так просто находиться на оси координат.

коэффициент регуляризации

Следующая формула дает более общее определение регуляризации:

minimize\left(Loss(Data|Model)) + \lambda \times complexity(Model) \right)

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

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

практиковать и закреплять

Что касается различных вариантов и параметров регуляризации, вы можете провести несколько экспериментов на игровой площадке TensorFlow и пронаблюдать разницу в результатах, вызванную разными параметрами. URL-адрес:playground.tensorflow.org/

TensorFlow Playground

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

  1. Эндрю Нг: Конспект лекций CS229
  2. Ян Гудфеллоу, Йошуа Бенджио и Аарон Курвиль: Глубокое обучение
  3. Чжоу Чжихуа: «Машинное обучение»
  4. Stanford.Amount/~setrvine/he…
  5. Developers.Google.com/machine - аааа...
  6. Developers.Google.com/machine - аааа...
  7. Developers.Google.com/machine - аааа...