📏 Оказывается, нейросети могут неправильно обучаться из-за ошибок в обычном softmax. Никто не замечал раньше? И действительно ли всё настолько плохо? Исследователи Google DeepMind обнаружили две численные ошибки в softmax и cross-entropy операциях, которые используются практически во всех современных нейросетях. Первая возникает, когда модель становится слишком уверенной в правильном ответе. Компьютер преждевременно округляет градиент до нуля, хотя математически он ещё существует. Вторая при дистилляции: даже когда ученик идеально повторяет учителя. Но есть нюанс: всё не так плохо, как кажется. Например, давно известный label smoothing или low temperature уже этой проблемы, не позволяя модели становиться чрезмерно уверенной. Правда, саму ошибку вычислений он не исправляет. И что предложили исследователи? Для решения оказалось достаточно лишь переписать формулу (порядок операций). Математически ничего не поменялось, зато компьютер перестал терять маленькие числа. 📄 A Fix for Softmax and Cross-Entropy _______ Источник | #mishin_learning