Для чего нужна регуляризация в задачах машинного обучения

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

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Feb 13, 2020 · 5 min read

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

Дисклеймер: я не претендую на академичность или точные определения в своем посте. Все что тут написано лично мой опыт который (так же как и все остальное в интернете) не надо брать за истину. Nullius in verba.

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

“Коротко об основных остановках на дороге машинного обучения.”

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

Сперва нужно определить, что перееобучение — это когда какие то веса (w) имеют слишком большой показатель (нейроны с большими весами “стягивают” на себя все признаки, сужая “просвет”, что не позволяет сети работать в полевых условиях).

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

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

Получается чем более линейная функция, тем более она недообучена. И чтобы сделать функцию “более линейной” прибавляются суммы весов к ошибке.

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Чтобы понять регуляризацию, начал с того, что часик побаловался в песочнице tensorflow. Стало понятно что L1 регуляризация стабильно выключает ненужные нейроны зануляя весы. Получается тренировка максимально быстро и точно.

В итоге, регуляризация:

Короче, это про упрощение и сглаживание.

В ML есть два основных вида регуляризации. Википедия их описывает так:

L1-регуляризация (англ. lasso regression), или регуляризация через манхэттенское расстояние:

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

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

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

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

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

L2- регуляризация, или регуляризация Тихонова (в англоязычной литературе — ridge regression или Tikhonov regularization), для интегральных уравнений позволяет балансировать между соответствием данным и маленькой нормой решения:

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Тут получается что функция занижает пики прибавляя сумму весов в квадрате с множителем лямбда.

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

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Член λ называется параметром сглаживания. Он балансирует кросс-энтропийную функцию ошибок и регуляризационный штраф. Если значение λ велико, весовые коэффициенты будут стремиться к нулю, если же значение λ мало или равно нулю, то весовые коэффициенты будут просто стремиться к минимизации кросс-энтропийной функции ошибок. Как правило, значение параметра λ устанавливают 0,1 или 1, или в районе между этими значениями, но в основном его значение зависит от конкретных данных. Вам нужно попробовать разные значения и понаблюдать за поведением функции затрат и конечным результатом. Не существует универсальной методики определения значения параметра λ. (craftappmobile.com )

В сумме можно посмотреть на этот рисунок

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Регуляризация создает некое абстрактное поле (зеленое) в градиентном спуске (слоистые овалы) из которого не может выйти обучение сети. Когда на самом деле абсолютное дно обучения (B с шапочкой) находится за пределами этого поля. При этом логически если мы увеличиваем Лямбду, то поле сужается, то есть с увеличением шкалы нормализации весов, найти какое либо дно станет труднее (возникнет “пересглаженность” 🙂 ).

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

Спасибо за внимание! Если интересно, то буду писать дальше…

Источник

РЕГУЛЯРИЗАЦИЯ: важная концепция в машинном обучении

Дата публикации May 26, 2018

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

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

Часть 1 посвящена теории о том, почему регуляризация вошла в картину и зачем она нам нужна?

Часть 2 объяснит часть того, что регуляризация и некоторые доказательства, связанные с этим.

ЧАСТЬ 1

1.1 Основы:

Размышляя о том, как я могу это описать, я наткнулся на эту книгу «Распознавание образов и машинное обучение Кристофера М. Бишопа». Приведенные в книге примеры и объяснения были очень точными и понятными. Итак, я использовал примеры этой книги здесь.

Теперь наша цель состоит в том, чтобы найти шаблоны в этом базовом наборе данных и обобщить его, чтобы предсказать соответствующее целевое значение для некоторых новых значений «x». Проблема здесь в том, что наш целевой набор данных подвергается некоторому случайному шуму. Таким образом, будет трудно найти внутреннюю функцию sin (2πx) в обучающих данных. Итак, как мы решаем это?

Давайте попробуем подогнать полином по заданным данным.

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

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

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

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Итак, теперь мы получим правильное значение w, но вопрос в том, какую степень полинома (приведенную в уравнении 1.1) выбрать? Любая степень полиномов может быть использована для подгонки к обучающим данным, но как выбрать лучший выбор с минимальной сложностью?

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

Просто для справки: расширение греха Тейлора (х)

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

На рис. 1 показана подгонка полиномов различного порядка по точкам данных. Мы видим, что полином 9-й степени способен делать точные прогнозы для всех точек данных в обучающем наборе.

Но подождите, функция, полученная для полинома степени 9, не похожа на выбранную нами функцию sin (2πx). Так что здесь произошло?

Функция со степенью 3 может в значительной степени соответствовать нашим данным обучения. Кроме того, это подмножество многочленов высокого порядка. Таким образом, функция / полином порядка 9 также должна быть в состоянии соответствовать базовому шаблону (что явно не так). Это называется переоснащением.

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

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Выглядит очень сложно и опасно, не так ли?

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

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

РЕДАКТИРОВАТЬ: Здесь увеличение размера набора данных во избежание переоснащения относится к увеличению количества наблюдений (или строк), а не количества объектов (или столбцов). Добавление столбцов может привести к усложнению проблемы и, следовательно, к снижению производительности. Спасибо Шону МакКлюру за указание на это 🙂

1.2 Вероятностный взгляд:

Давайте сделаем небольшое предположение для этой цели. Предположим, что для данного значения ‘x’ соответствующее значение ‘t соответствует гауссовскому распределению со средним значением, равным y (x, w) (обратите внимание, что y (x, w) является нашим уравнением 1.1.)

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Где распределение Гаусса определяется как,

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

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

Итак, возвращаясь к нашему уравнению вероятности, здесь параметры w и β неизвестны. Мы используем наши данные обучения, чтобы определить значение w и β. Все точки тренировочных данных не зависят друг от друга. Поэтому мы можем сказать, что

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

(Независимые вероятности могут быть умножены)

Теперь мы получим правильные значения w и β путем максимизации данного уравнения. Для удобства возьмем логарифм вышеприведенного уравнения, так как оно не влияет на значения.

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Здесь при дифференциации w.r.t ‘w’, последние 2 термина могут быть проигнорированы, так как они не содержат терминов «w». Кроме того, β в префиксе первого слагаемого выполняет только задачу масштабирования слагаемого и, следовательно, не оказывает существенного влияния на конечный дифференциальный выход. Поэтому, если мы проигнорируем β, мы получим ту же формулу среднего квадрата ошибки, которая дает нам значение ‘w’, как в (уравнение 1.2). Разве это не волшебство?

Аналогично, мы также найдем значение β, дифференцируя его с помощью w.r.t β. Теперь, когда известны значения w и β, мы можем теперь использовать наше окончательное уравнение для прогнозирования значений тестовых данных.

1.3 Доказательство предположения:

Чтобы понять это, вы должны иметь немного знаний об ожидании функции.

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

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

Пусть Lij обозначает потерю, когда i ошибочно предсказывается как j. Средняя ожидаемая потеря будет выражаться как:

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Мы хотим максимально сократить потери. Выбираем значение y (x), такое, что E (L) минимально. Таким образом, применяя правило произведения [p (x, t) = p (t | x) * p (x)] и дифференцируя его w.r.t y (x), мы получаем,

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Вышеупомянутое уравнение выглядит знакомым? Да, это наше предположение сделано. Термин Et [t | x] является условным средним значением «t», обусловленным «x», то есть для данного «x», «t» следует гауссову со средним значением, равным «y». Это также известно как функция регрессии.

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Приведенный выше рисунок помогает получить четкое представление об этом. Мы можем видеть, что следует гауссовскому распределению с минимальным значением функции потерь для функции регрессии y (x), полученной при значении «y», которое является средним значением

ЧАСТЬ 2

2.1 Давайте нормализуем:

Наконец-то мы здесь! В этом разделе я расскажу вам о типах регуляризации и о том, как они получены.

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

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Согласно нашей вероятностной точке зрения, мы можем написать из уравнения 2.3

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Не смущайтесь, увидев «wT * phi (xn)». Это не что иное, как наш у (х, ш) Это более обобщенная форма исходного уравнения (1.2). фи (xn) известны как базисные функции. Для уравнения (1.1) «phi (xn)» был равен «x ^ n».

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

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

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

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Где, если q = 1, то это называется регрессией Лассо или регуляризацией L1, а если q = 2, то это называется регрессией гребня или регуляризацией L2. Если оба термина L1 и регуляризация L2 вводятся одновременно в нашей функции стоимости, то это называется упругой чистой регуляризацией.

Обратите внимание, что термин регуляризации имеет ограничение, которое:

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Для соответствующего значения постоянной η.

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

Рассмотрим случай лассо регуляризации. Предположим, у нас есть уравнение y = w1 + w2x. Мы рассмотрели уравнение только с двумя параметрами, потому что его будет легко визуализировать на контурных графиках. У меня болела голова, когда я пытался визуализировать многомерный график. Задача не из легких. Даже гугл здесь не помог: P

Заметка:Просто для быстрого обзора, контурные графики представляют собой двухмерное представление и данные трехмерных графиков. Для функции стоимости или функции ошибки 3D-график строится между значениями коэффициентов w1 и w2 и соответствующей функцией ошибки.

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Когда контурная диаграмма построена для вышеприведенного уравнения, оси x и y представляют независимые переменные (в данном случае w1 и w2), а функция стоимости построена в 2D-виде.

Теперь вернемся к нашей регуляризации.

Функция стоимости для регрессии Лассо будет:

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

График для этого уравнения будет представлять собой ромбовидную фигуру, как показано ниже,

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

Здесь синие кружки представляют контуры для нерегуляризованной функции ошибки (ED), а контур формы ромба для регуляризации L1, т. Е. (Λ / 2 (| w1 | + | w2 |),. На графике видно, что Оптимальное значение получается в точке, где член w1 равен нулю, т. е. базисная функция, соответствующая члену w1, не влияет на результат. Здесь представлена ​​w *, где оба члена функции стоимости будут принимать общее значение w, как требуется в уравнение.

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

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

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

Кроме того, если вам понравилось мое объяснение, делайте хлопать за него.

Для любого другого запроса, связанного с моим блогом, напишите мне или напишите мне на connectedIn.

Источник

Регуляризация в Machine Learning

Регуляризация используется в машинном обучении в целях контроля баланса между bias (предвзятостью) и variance (отклонением). Предвзятость нужна, чтобы показать, насколько модель переобучилась на тренировочном наборе данных, а отклонение — насколько предсказания между тренировочным датасетами и тестовым датасетами отличались. Давайте посмотрим, какие существуют техники регуляризации.

Как известно, и дисперсия, и предвзятость должны быть маленькими — это идеальный вариант. Тут и приходит на помощь регуляризация. Выделяют 2 основные техники: «Лассо» и Ridge.

Регуляризация по технике «Лассо» (L1)

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

Регуляризация по технике Ridge (L2)

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

Elastic-Net

Таким образом, техника Ridge оставляет все переменные, а техника «Лассо» более эффективно устанавливает их важность. На основании этого был создан специальный алгоритм, объединивший в себе преимущества обеих техник регуляризации. Этот алгоритм называют Elastic-Net. Реализовать его можно посредством перекрестной валидации sklearn:

Для чего нужна регуляризация в задачах машинного обучения. Смотреть фото Для чего нужна регуляризация в задачах машинного обучения. Смотреть картинку Для чего нужна регуляризация в задачах машинного обучения. Картинка про Для чего нужна регуляризация в задачах машинного обучения. Фото Для чего нужна регуляризация в задачах машинного обучения

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

Источник

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

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

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

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

Переподгонка

Переоснащение – обычная проблема. Когда вы переполняете модель данными, которые не содержат возможности обработки, она начинает действовать нерегулярно. Эта нерегулярность будет включать в себя шум, а не сигнал. Ваша модель начнет рассматривать ненужные данные как концепцию. Термин, используемый для обозначения этого, является “переподстройкой”, и это приводит к неточным выводам, что снижает точность и эффективность данных.
Предположим, нам необходимо предсказать, будут ли новоиспеченные студенты допущены к собеседованию. Мы обучим нашу систему 20 000 резюме, чтобы понять, соответствуют ли они квалификационным требованиям или нет. Результат, который мы получим, будет точным на 99 процентов. Теперь, когда вы тестируете свою модель с совершенно другим набором данных, результат будет менее 50 процентов. Это происходит потому, что модель, которую мы тренируем, не обобщает результат по невидимым данным. Мы также видим, что это вписывается в нашу повседневную жизнь.

Шум и сигнал

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

Как работает регуляризация

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

Типы техники регуляризации

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

Регрессионная модель этой техники регуляризации называется регрессией Лассо. Модель регрессии – это штрафной термин. Лассо является кратким для Оператора Наименее Абсолютной Усадки и Выбора. Лассо добавляет абсолютное значение величины к коэффициенту. Эти значения являются штрафными терминами функции потерь.

2. L2 Регуляризация

С другой стороны, регрессионная модель регуляризации L2 – это регрессия гребней. В этой регуляризации штрафным членом функции потерь является квадратная величина коэффициента. В этом методе значение лямбда равно нулю, так как при добавлении большого значения лямбда будет прибавляться больше весов, что приводит к недоустановке.
Выбор между L1 и L2 Регуляризация
Для выбора метода регуляризации между L1 и L2 необходимо учитывать объем данных. Если данные больше, то следует использовать регуляризацию L2. Однако, если данные небольшие, необходимо выбрать регуляризацию L1.

3. Регуляризация выпадения данных

Согласно Википедии, отсев означает отсев видимых или скрытых единиц. Простыми словами, бросить – значит игнорировать юниты или нейроны во время тренировки модели. Модель не будет учитывать эти единицы при передаче данных через искусственную нейронную сеть. Это позволит избежать перегрузки тренировочных данных.

4. Расширение данных

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

Заключение

Когда мы обучаем нашу модель посредством контролируемого обучения работе с машиной, мы передаем данные обучения. Теперь модель будет обучаться через модели тренировочных данных. Мы ожидаем, что модель определяет модели только через сигнал, что является релевантными данными. Однако, модель также включает в себя шум. Это влияет на производительность модели при прохождении новых данных.
В этом помогает техника регуляризации. Она уменьшает сложность, добавляя штраф. Существует два общих типа методов регуляризации. L1 минимизирует значение весов, а L2 минимизирует квадратную величину. Однако есть еще две техники для избежания переподготовки, одна из которых – “выпадание”, а другая – “увеличение данных”. Drop out будет игнорировать не относящиеся к делу единицы или шум, а увеличение данных увеличит размер сигнала.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *