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

https://medium.com/@rsiddhant73/regularization-what-why-and-how-part-1-ef6bdb6bafea

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

Что такое нормы?

Обычно они представляют размер/величину вектора. Общая форма нормы L-p:

Некоторые часто используемые нормы:

L0 -> number of zeros, though pointed as wrong definition in Ian Goodfellows’ Deep learning book.
L1 -> sum of absolute values of vector
L2 -> sum of squared values of vector
L-infinity -> in general you can think it as max value in a vector or absolute value of element with largest magnitude in a vector.

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

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

Здесь P(W) =β* ∑|W|

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

Регуляризация L2 или гребень

Здесь P(W) =λ* ∑W²

что значит; сумма квадратов весов, что означает, что штраф квадратично увеличивается со значениями параметров. Но самым важным аспектом L2 является его эффект усреднения и распределение веса. По мере того, как штраф увеличивается, он накладывает более жесткие ограничения и, таким образом, обычно более предпочтителен в практических сценариях.

L1 также называется манхэттенским расстоянием, а l2 — квадратным или евклидовым расстоянием.

Эластичная сетка / L1 + L2

здесь P(W) =λ * ∑W² +β * ∑| В|

По сути, он объединяет как L1, так и L2, что очень похоже на то, что мы делали при выводе нашей объединенной целевой функции. Вы бы уже вывели это на своей, отличной работе. Он обеспечивает преимущества как L1, так и L2 с некоторыми компромиссами. Есть несколько хороших статей, посвященных этому, я рекомендую вам немного изучить их. Обычно λ ‹ β, так как мы хотим усилить акцент на L1. Почему? Мы обсудим это позже в этой статье.

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

Можно спросить, почему мы не используем нормы выше l2, возможных причин может быть несколько,

1. Очень большой штраф сверх квадратичных членов.

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

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

Давайте также кратко обсудим другие известные методы регуляризации:

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

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

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

Ранняя остановкаПроще всего понять простыми словами, чем дольше вы тренируетесь, тем выше вероятность того, что вы перетренируетесь. Так что нам делать? Остановиться раньше, если существенных изменений в метриках не видно? Верно? Да это оно.

Их больше, но давайте оставим кое-что для вашего исследования.

Разреженность и выбор признаков: миф против правды

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

Что такое разреженность по отношению к выбору признаков? Вы можете думать об этом так: если происходит выбор функций, то выбирается несколько функций, а другие отбрасываются, т. е. веса/параметры, соответствующие этим функциям, устанавливаются на 0, что приводит к разреженной матрице весов. /вектор. Разреженная матрица – это матрица, состоящая в основном из нулевых значений. Таким образом, если существует селектор функций, его вывод будет разреженным вектором/матрицей.

Главный вопрос: почему L1 выбирает функции, а l2 - нет?

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

Что я имел в виду?

Позвольте мне объяснить это, дав вам два способа думать об этом,

1. Математика

Мы будем говорить о производной P по W.

Для L2,

что означает, что существует линейная зависимость между производной L и W,

таким образом, когда W становится меньше; штраф также становится меньше, что приводит к уменьшению/затуханию штрафа. Вот почему регуляризация l2 также называется уменьшением веса. Теперь, когда есть распад, мы все равно не сможем достичь 0.

Вы можете думать об этом

w = 16
while w != 0:
     w = w/2

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

А как насчет L1, давайте посмотрим,

что означает постоянное уменьшение независимо от размера W.

Таким образом, у W больше шансов стать равным 0 по сравнению с l2.

Удовлетворен? Нет? Большой!!!

2. Визуальный

Тогда добро пожаловать в часть визуализации, это должно прояснить ситуацию.

Предположим, что окружность нашей нормы L2 (круг) образована 100 точками, отмеченными красными точками ниже. В скольких точках мы сможем максимизировать функцию? В каждом месте, верно? Поскольку все точки равноудалены от центра. И в скольких точках вы сможете выполнить выбор функции?, что означает сделать один из параметров равным 0, ровно в четырех местах. Эти места выделены ниже синим цветом. Итак, какова вероятность того, что вы выберете одну из четырех точек из всех точек? 4/100, в действительности круг образован бесконечным количеством точек, тогда наша вероятность будет примерно 4/N, где N очень-очень велико, что приближает всю вероятность выбора признаков к 0.

Это означает, что когда P(W) будет расти, очень маловероятно, что те 4 точки, в которых может произойти отбор признаков, будут первой точкой контакта с распределением (помните о приятной точке, о которой мы говорили) так как существует N точек с одинаковой вероятностью максимизации P(W) = w¹² + w²².

А как насчет L1, он особенный? Давайте разберемся. Количество точек, которые могут максимизировать L1, составляет всего 4, и удивительно, все они лежат в местах, которые привели бы к выбору признаков, так как значение одного из параметров устанавливается на 0 на ось. Следовательно, вероятность выбора признаков очень высока, т. е. равна 1, если цель максимальна. Таким образом, если L1 сможет максимизировать себя, то он наверняка выберет только несколько признаков и заблокирует другие. См. диаграмму ниже.

Это означает, что когда P(W) будет расти, весьма вероятно, что любая из этих 4 точек, в которых может произойти выбор признаков, будет первой точкой контакта с распределением (помните о приятной точке, о которой мы говорили примерно), так как есть только 4 точки с наибольшей вероятностью максимизации P(W), заданные |w1|+|w2|.

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

Если говорить об эластичной сети, используя те же аргументы, которые мы видели выше, эластичная сеть является лучшим селектором функций, чем L2, но на самом деле она не способна генерировать разреженный набор функций, простая причина на самом деле находится внутри формулы, поскольку добавляются оба члена (L1 и L2), поэтому нулевое значение для w невозможно, как мы видели выше; L2 не собирается легко давать значение 0. Тогда почему я сказал, что это лучше, чем L2 в выборе функций? Просто потому, что он накладывает более жесткие ограничения, чем L2, помните, что мы видели, что λ (константа регуляризации для L2) ‹ β (константа регуляризации для L1), поэтому L2 имеет меньший вес и не может влиять на комбинированное решение. много, из-за этого значения для нерелевантных функций становятся почти незначительными (поскольку L1 уже подталкивает его к 0, хотя L2 есть, но намного меньше), чего обычно никогда не происходит в L2.

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

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

После обучения в условиях оптимизации с ограничениями выход y можно было бы рассматривать как

Для L2,

W = [1.88, 0.18, 0.04]

y=σ(W.X+B)

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

Для L1,

W = [1.55, 0.0, 0.0]

y=σ(W.X+B)

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

Мы говорили о регуляризации в 2D-пространстве. На случай, если вам нужно немного направления, чтобы подумать обо всем этом в более высоких измерениях, ниже показано, как будут выглядеть наши ограничения/нормы L-p, если у нас будет более двух функций. Вот изображение с 3 функциями. Все, что мы обсуждали до сих пор, осталось прежним. Теперь наша W будет расти во всех 3-х измерениях, и распределение данных также будет в 3-х измерениях.

Заключение
Это был очень долгий путь, но мы многому научились, не так ли? Давайте быстро пройдемся по тому, что мы видели в этой статье. Мы начали с переобучения и безусловной оптимизации, затем установили связь между ними, а также обсудили такие важные вещи, как сложность и способы ее предотвращения. Оттуда мы дали орлиный взгляд на оптимизацию и ее различные компоненты. Основываясь на наших знаниях о выпуклости в оптимизации, мы вывели собственный лагранжиан, который позже стал нашим общим уравнением регуляризации. После этого мы быстро прошлись по общим определениям, за которыми последовало понимание разреженности и норм. Затем мы закончили с некоторыми доказательствами того, как выбор признаков происходит в L1, а не в L2, за которыми последовало несколько трехмерных представлений норм, чтобы удовлетворить наш голод по визуализации.

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

Когда-нибудь в будущем я напишу новую статью. А пока продолжайте исследовать. Пока.