Soft-Max и Soft-Arg-Max
Содержание
Soft-Arg-Max
Постановка задачи
Пусть есть задача мягкой классификации:
Алгоритм выдает значения , где — число классов.
— уверенность алгоритма в том, что объект принадлежит классу ,
Для этих значений необходимо найти такие , что:
То есть — распределение вероятностей.
Для этого выполним преобразование:
Тогда выполняется следующее:
Есть модель , возвращающая . Необходимо сделать так, чтобы возвращала , при этом оставаясь дифференциируемой.
soft-arg-max, где
Свойства soft-arg-max
- Вычисляет по вектору чисел вектор с распределением вероятностей.
- Можно интерпретировать как вероятность нахождения максимума в -й координате.
- soft-arg-max soft-arg-max
- Предыдущее свойство используют для устойчивости вычислений. При
Модификация soft-arg-max
soft-arg-max
Данная модификация полезна, когда необходимо контролировать распределение вероятностей, получаемое soft-arg-max. Чем больше параметр , тем больше получаемые вероятности будут похожи на равномерное распределение.
Soft-Max
Плохой Soft-Max
Зададим функцию soft-max таким образом:
soft-maxsoft-arg-max
Гладкая аппроксимация максимума. Математическое ожидание или средневзвешенное, где веса — экспоненты значений соответствующих элементов. Сохраняет некоторые свойства максимума:
- soft-max
- soft-max soft-max
Заданный выше soft-max — "плохой" в связи с тем, что мы считаем средневзвешенное значение, которое всегда будет меньше максимума, что приведёт к проблемам с поиском максимума.
Хороший Soft-Max
soft-max
- Не сохраняет свойство soft-max
- Производная равна soft-arg-max
В этом случае сохраняется монотонность, значит, не возникнет проблем с поиском минимума и максимума.
Связь между вариациями Soft-Max
Обозначим "плохой" soft-max как bad-soft-max. Тогда:
- bad-soft-maxsoft-arg-max
- soft-maxsoft-arg-max
- soft-arg-maxsoft-max
Примечания
- В большинстве статей пишется soft-max, хотя вместо этого подразумевается soft-arg-max.
- soft-arg-max можно называть также как обобщённая (многомерная) сигмоида
- soft-arg-max является алгоритмом подсчёта весов для soft-max