1. определение софтмакс
Китайское название softmax — экспоненциальная нормализация, которая часто используется в моделях с несколькими классификациями. Предположим, мы хотим разделить на k категорий, а выход модели представляет собой вектор (a1, a2, ... ak), мы можем использовать softmax для нормализации вектора, а сумма элементов вектора после обработки равна 1 , Формула softmax выглядит следующим образом:
2. Численная стабильность softmax
Поскольку числовой диапазон исходного вывода сети неконтролируем, экспоненциальная мощность используется для расчета в формуле softmax, поэтому результат обработки экспоненциальной мощности может легко превысить диапазон числового представления компьютера, что приводит к числовая нестабильность softmax. Чтобы обойти это, можно использовать некоторые математические приемы, чтобы сузить полученные числа из экспоненциальной нормализации:
Чтобы экспонента была как можно ближе к выходу за пределы, просто позвольтеlogc
Значение очень маленькое, обычно берем:
3. Вывод софтмакс
Мы получаем прогнозируемую вероятность Pi класса i с помощью softmax, рассматривая два случая:
Когда i==j,
Когда i!=j,
4. Взаимосвязь между потерями перекрестной энтропии и softmax
Перекрестная энтропийная потеря определяется следующим образом:
В приведенной выше формулеyi
, 1, если истинный класс выборки равен i, и 0 в противном случае.
Вычислите производную перекрестной энтропии (цепное правило + добавление подслучай):
Весь процесс вывода кажется сложным, но окончательный результат очень прост и понятен: это вероятность j, предсказанная softmax.и настоящие этикеткизначение отклонения.