Выбор ответа Senior Регуляризация обновлено

Label smoothing

Вопрос

Что даёт label smoothing с ε = 0.1 при обучении классификатора на 10 классов?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Цель верного класса 0.91, остальных по 0.01: модель меньше переуверена. Сглаженная цель: (1 - ε)·onehot + ε/K, то есть 0.9 + 0.01 = 0.91 и 0.01.

Варианты ответа

  1. Удаляет 10% меток, которые модель считает шумными, и обучается на остальных
  2. Уменьшает learning rate на 10% для логитов верного класса на каждом шаге
  3. Цель верного класса 0.91, остальных по 0.01: модель меньше переуверенаправильный ответ
  4. Делает выход модели равномерным на 10% объектов, выбранных случайно

Разбор

Сглаженная цель: (1 - ε)·one_hot + ε/K, то есть 0.9 + 0.01 = 0.91 и 0.01. Оптимум кросс-энтропии больше не требует бесконечных логитов. Это частая регуляризация в CV и трансформерах. В PyTorch параметр label_smoothing у CrossEntropyLoss.

  • Шумные метки не удаляются, но их влияние смягчается.
  • lr не меняется.
  • Выход остаётся информативным, лишь менее уверенным.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме