Ваш Softmax работает неправильно. Вот как это исправить.
Jia-Bin Huang
0:00 / 0:00
Ваш Softmax работает неправильно. Вот как это исправить.
6 634 просмотра · 11 ч назад
Jia-Bin Huang
49,8 тыс. подписчиков
6 634 просмотра · 11 ч назад
Стандартные реализации функций softmax, log-softmax и кросс-энтропии во всех основных фреймворках содержат численные ошибки!
Куда девается градиент и почему ошибка округления приводит к резкому увеличению функции потерь модели? Посмотрите видео, чтобы узнать!
Разделы
0:00 Парадокс: 99,999997% уверенности, но нулевой градиент
1:46 Softmax и кросс-энтропия с нуля
5:40 Числа с плавающей запятой: почему 1 + что-то маленькое = 1
10:06 Коллапс Softmax: градиент резко падает
13:38 Решение: избегать добавления единицы к крошечному числу
17:23 Оптимизатор Adam, grokking и пики Slingshot
20:53 Почему поля останавливаются на log(1/ε)
24:07 Отмена Softmax: дистилляция знаний
28:47 Две ошибки, один урок
Ссылки
[Исправление для Softmax и кросс-энтропии] https://arxiv.org/abs/2610.31642
[Механизм Slingshot, Thilak et al.] 2022] https://arxiv.org/abs/2206.04817
[Grokking at the Edge of Numerical Stability, Prieto et al. 2025] https://arxiv.org/abs/2501.04697