-
10亿
=
-9。97亿
?
风龙的金币数变为
10亿
-
10亿
=
然后,他计算:
现在,所有的指数值都变得很小,不会再溢出,金碗终于能正常计算了!
最终,风龙的财富占比几乎是
100%,其他三条龙的财富占比接近
0,宴会得出了正确的结论。
这个方法被称为
softmax的数值稳定性技巧,即
在计算前减去最大值,防止指数运算导致溢出。
用比喻解释softmax的溢出问题
比喻1:水池溢出
想象你有一个大水池,你往里面倒水:
?
第一桶水是
100升
?
第二桶水是
200升
?
第三桶水是
300升
?
第四桶水是
10亿升
显然,水池无法承受10亿升的水,直接溢出了!
解决方案?