Изменения

Перейти к: навигация, поиск

Soft-Max и Soft-Arg-Max

18 байт убрано, 18:14, 1 июля 2022
Нет описания правки
Для этих значений необходимо найти такие <tex>p_{1},\ldots,p_{n}</tex>, что:
*<tex>p_{i} \in \left [ 0, 1\right ]</tex>.*<tex>\sum_{i}p_{i}=1</tex>.То есть <tex>p_{1},\ldots,p_{n}</tex> {{---}} распределение вероятностей.
Для этого выполним преобразование:
Тогда выполняется следующее:
*<tex>L_{i} \leqslant L_{j} \implies p_{i} \leqslant p_{j}</tex>.*Модель <tex>a</tex>, возвращающая <tex>L_{i}</tex>, после преобразования будет возвращать <tex>p_{i}</tex> и останется дифференцируемой.*<tex>p =</tex> '''soft-arg-max'''<tex>\left ( L \right )</tex>.
Пусть <tex>y = </tex> '''soft-arg-max'''<tex>\left ( x \right )</tex>, тогда:
===Свойства soft-arg-max===
*Вычисляет по вектору чисел вектор с распределением вероятностей.*Можно интерпретировать как вероятность нахождения максимума в <tex>i</tex>-й координате.*'''soft-arg-max'''<tex>\left ( x - c,y-c,z-c\right )=</tex> '''soft-arg-max'''<tex>\left ( x,y,z\right )</tex>.*Предыдущее свойство используют для устойчивости вычислений при <tex>c=max\left ( x,y,z \right )</tex>.
===Модификация soft-arg-max===
Гладкая аппроксимация максимума. Математическое ожидание или средневзвешенное, где веса {{---}} экспоненты значений соответствующих элементов. Сохраняет некоторые свойства максимума:
*'''soft-max'''<tex>\left ( a,a,a\right ) = a</tex>.*'''soft-max'''<tex>\left ( x+a,y+a,z+a\right ) =</tex> '''soft-max'''<tex>\left ( x,y,z\right ) + a</tex>.
Заданный выше '''soft-max''' {{---}} "плохой" в связи с тем, что мы считаем средневзвешенное значение, которое всегда будет меньше максимума, что приведёт к проблемам с поиском максимума.
Обозначим "плохой" '''soft-max''' как '''bad-soft-max'''. Тогда:
*'''bad-soft-max'''<tex>\left(x_{1},\ldots,x_{n}\right)=\left \langle x, \right .</tex>'''soft-arg-max'''<tex>\left . \left (x_{1},\ldots,x_{n} \right ) \right \rangle</tex>.*<tex>\nabla</tex>'''soft-max'''<tex>\left(x_{1},\ldots,x_{n}\right)=</tex>'''soft-arg-max'''<tex>\left(x_{1},\ldots,x_{n}\right)</tex>.*<tex>\log\left(\right.</tex>'''soft-arg-max'''<tex>_{i}\left(x_{1},\ldots,x_{n}\right)\left.\right) = x_{i} -</tex>'''soft-max'''<tex>\left(x_{1},\ldots,x_{n}\right)</tex>.
==Примечания==
*В большинстве статей пишется '''soft-max''', хотя вместо этого подразумевается '''soft-arg-max'''.*'''soft-arg-max''' можно называть также как обобщённая (многомерная) сигмоида.*'''soft-arg-max''' является алгоритмом подсчёта весов для '''soft-max'''.
Анонимный участник

Навигация