Задача
Для трёх классов logits z=(2,1,0). Найдите softmax.
Формула
p_k=e^{z_k}/Σ_j e^{z_j}.
Устойчивая запись
Вычтем максимум 2: новые logits (0,−1,−2). Это не меняет вероятности, потому что общий множитель e^{-2} сокращается.
Знаменатель 1+e^{-1}+e^{-2}≈1,503215. Поэтому
p≈(0,665241;0,244728;0,090031).
Проверка
Вероятности положительны и суммируются в 1. Разность logits определяет отношение вероятностей: p₁/p₂=e^{2−1}=e.
Инвариантность
Softmax(z+c1)=softmax(z). Поэтому абсолютный общий уровень logits не идентифицируется из вероятностей; важны их различия.
При очень больших положительных logits прямое вычисление e^z может переполнить float. Вычитание максимума — стандартный численно устойчивый приём.
Редакционная практика по вероятностной многоклассовой классификации в тематике mlearn_pro · CC BY 4.0.