Регуляризация: зачем умножать на 1 / 2м?

10

В неделю 3 - конспектов в классе Coursera Machine Learning Эндрю Нг , термин добавляется к функции стоимости реализации упорядочению:

J+(θ)знак равноJ(θ)+λ2мΣJзнак равно1NθJ2

В примечаниях к лекции говорится:

Мы также можем упорядочить все наши тэта-параметры в одном суммировании:

мяNθ 12м [Σязнак равно1м(часθ(Икс(я))-Y(я))2+λ ΣJзнак равно1NθJ2]

12м позже применяется к термину регуляризации нейронных сетей :

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

J(θ)знак равно-1мΣязнак равно1м[Y(я) журнал(часθ(Икс(я)))+(1-Y(я)) журнал(1-часθ(Икс(я)))]+λ2мΣJзнак равно1NθJ2

Для нейронных сетей это будет немного сложнее:

J(Θ)=1mi=1mk=1K[yk(i)log((hΘ(x(i)))k)+(1-YК(я))журнал(1-(часΘ(Икс(я)))К)]+λ2мΣLзнак равно1L-1Σязнак равно1sLΣJзнак равно1sL+1(ΘJ,я(L))2
  • Почему постоянная половина используется здесь? Так что это отменяется в производной ?J'
  • Почему деление на обучающих примеров? Как количество обучающих примеров влияет на вещи?м
Том Хейл
источник
Вы уверены, что 1 / m относится к регуляризации, а не к J (theta) AFAIK @DikranMarsupial отвечает на это предположение ...... или сам J (theta) имеет термин 1 / m?
seanv507
Это предположение неверно - применяется как к нерегулируемой функции стоимости, так и к члену регуляризации. Я обновил вопрос, чтобы дать полную формулу. 12m
Том Хейл,

Ответы:

5

Предположим, у вас есть 10 примеров, и вы не делите стоимость регуляризации L2 на количество примеров m . Тогда «доминирование» стоимости регуляризации L2 по сравнению со стоимостью кросс-энтропии будет равно 10: 1, потому что каждый пример обучения может вносить вклад в общую стоимость пропорционально 1 / m = 1/10.

Если у вас есть больше примеров, скажем, 100, то «доминирование» стоимости регуляризации L2 будет примерно равно 100: 1, поэтому вам нужно соответственно уменьшить λ , что неудобно. Лучше иметь постоянную λ независимо от размера партии.

Обновление: чтобы усилить этот аргумент, я создал блокнот Jupyter .

грез
источник
1
Хм, но разве цель коэффициента 1 / m перед функцией стоимости не в том, чтобы каждый пример обучения вносил одинаковый вклад в стоимость? Таким образом, поскольку мы уже усредняем индивидуальные затраты, это не должно быть причиной доминирования термина L2. Однако из вашей замечательной симуляции я вижу, что коэффициент 1 / m также перед термином L2 помогает. Я просто не понимаю интуицию (пока).
Милания,
Почему это неудобно ?? просто разделить стоимость L2 на количество образцов. Я думаю, что, возможно, вы сформулировали это неправильно. Я думаю, что вы хотели сказать, что неудобно каждый раз вручную масштабировать стоимость L2, лучше поделить на количество выборок как часть формулы для автоматического масштабирования.
SpaceMonkey
6

Функция потерь в обучающем наборе как правило, представляет собой сумму по шаблонам, составляющим обучающий набор, поэтому, когда обучающий набор становится больше, первый член масштабируется по существу линейно с m . Мы можем сузить диапазон для поиска хорошего значения λ , если сначала разделим член регуляризации на m, чтобы компенсировать зависимость J ( θ ) от m . 2, конечно, действительно находится в знаменателе, чтобы упростить производные, необходимые для алгоритма оптимизации, используемого для определения оптимального θ .J(θ)mλmJ(θ)mθ

Дикран Сумчатый
источник
Спасибо за объяснение нерегулярного масштабирования стоимости с . Я до сих пор не понимаю, как деление на m поможет лучше работать одному значению λ с широко различающимися значениями m . Нерегулируемая стоимость уже сильно зависит от m , так зачем заботиться о члене регуляризации, который зависит от n параметров, а не от m примеров? Это потому, что при большем количестве обучающих примеров дисперсия будет уменьшаться при одинаковом количестве параметров? mmλммNм
Том Хейл
Функция потерь в вопросе является средней величиной по всем примерам (т.е. она делится на m), а не суммой, поэтому я не очень понимаю, как работает этот ответ.
Дензилое
@Denziloe это относится и к члену регуляризации.
Дикран Сумчатый
2

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

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

Затем существует коэффициент 0,5, чтобы получить хороший коэффициент только для λ для снижения веса в градиенте, и масштабирование по m ... ну, есть по крайней мере 5 различных мотиваций, которые я нашел или придумал:

  1. Побочный эффект пакетного градиентного спуска: когда вместо всей формации обучения формализована одна итерация градиентного спуска, в результате чего алгоритм, иногда называемый пакетным градиентным спуском, вводится с коэффициентом масштабирования 1 / м, чтобы сделать функцию стоимости сопоставимой для разных наборов данных, автоматически применяется к сроку снижения веса.
  2. Измените вес одного примера: посмотрите интересную интуицию Греза .
  3. Репрезентативность обучающего набора: имеет смысл уменьшить регуляризацию по мере роста размера обучающего набора, так как по статистике его репрезентативность в общем распределении также возрастает. По сути, чем больше у нас данных, тем меньше требуется регуляризация.
  4. Обеспечение сопоставимости λ: Будем надеяться, что уменьшая необходимость изменения λ при изменении m, это масштабирование сделает само сопоставление λ по наборам данных разных размеров. Это делает λ более репрезентативной оценкой фактической степени регуляризации, требуемой конкретной моделью для конкретной задачи обучения.
  5. Эмпирическая ценность: отличный ноутбук от компании grezдемонстрирует, что это повышает производительность на практике.
ShayPal5
источник
0

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

http://www.youtube.com/watch?v=6g0t3Phly2M&t=2m50s

Возможно, есть более глубокая причина для использования 1 / 2m, но я подозреваю, что это просто гиперпараметр.

Кейан П
источник
Это не отвечает на вопрос.
Майкл Р. Черник