Перейти к содержимому

Регуляризация глубоких нейронных сетей — часть 1

Machine Learning TV

0:00 / 0:00

Регуляризация глубоких нейронных сетей — часть 1

2 340 просмотров · 7 лет назад
Machine Learning TV
40,7 тыс. подписчиков
2 340 просмотров · 7 лет назад
Если вы подозреваете, что ваша нейронная сеть переобучается на данных, то есть у вас проблема с высокой дисперсией, одним из первых шагов, которые следует предпринять, вероятно, является регуляризация. Другой способ решения проблемы высокой дисперсии — это получение большего количества обучающих данных, которые также достаточно надежны. Но получить больше обучающих данных не всегда возможно, или это может быть дорого. Однако добавление регуляризации часто помогает предотвратить переобучение или уменьшить ошибки в вашей сети. Давайте посмотрим, как работает регуляризация. Давайте разовьем эти идеи на примере логистической регрессии. Напомним, что в логистической регрессии вы пытаетесь минимизировать функцию стоимости J, которая определяется как эта функция стоимости. Некоторые из ваших обучающих примеров потерь отдельных прогнозов в разных примерах, где, как вы помните, w и b в логистической регрессии являются параметрами. Таким образом, w — это x-мерный вектор параметров, а b — действительное число. И поэтому, чтобы добавить регуляризацию к логистической регрессии, вы добавляете к ней лямбда, которая называется параметром регуляризации. Я расскажу об этом подробнее чуть позже. Но лямбда/2m умножить на норму w в квадрате. Таким образом, норма w в квадрате просто равна сумме wj в квадрате от j = 1 до nx, или это можно записать как w транспонированная w, это просто квадратная евклидова норма простого вектора к вектору w. И это называется L2-регуляризацией...