方化影视

手机浏览器扫描二维码访问

第606章 用故事解释softmax函数的溢出问题(第1页)

用故事解释函数的溢出问题

故事背景:龙族宴会上的金碗

在一座神秘的龙族王国,龙族每年都会举行一次盛大的宴会,宴会上有一个传统:每条龙要把自己的财富(金币数量)放进一个金碗,然后让智慧长老计算每条龙的“财富占比”,来决定谁是这一年的财富之王。

宴会当天,四条龙分别报出了自己的金币数量:

?火龙:万金币

?冰龙:万金币

?雷龙:万金币

?风龙:亿金币

智慧长老准备使用一个古老的计算方法——规则,将这些财富转换成概率来比较。但他很快发现了一个严重的问题:

金碗炸了!

为什么?因为按照的计算方法,他需要计算每个金币数量的指数值:

但这些数值实在是太大了,远远超出了王国的计算能力,直接导致金碗崩溃(计算溢出)。

智慧长老陷入了困境,他需要找到一个方法来避免计算崩溃。于是他想到一个聪明的技巧:

“我们不直接放金币,我们可以先让大家的金币数减去最大的金币数!”

于是,他重新计算:

?火龙的金币数变为万-亿=-9.亿

?冰龙的金币数变为万-亿=-9.亿

?雷龙的金币数变为万-亿=-9.亿

?风龙的金币数变为亿-亿=0

然后,他计算:

现在,所有的指数值都变得很小,不会再溢出,金碗终于能正常计算了!

最终,风龙的财富占比几乎是%,其他三条龙的财富占比接近0,宴会得出了正确的结论。

这个方法被称为的数值稳定性技巧,即在计算前减去最大值,防止指数运算导致溢出。

用比喻解释的溢出问题

比喻1:水池溢出

想象你有一个大水池,你往里面倒水:

?第一桶水是升

?第二桶水是升

?第三桶水是升

?第四桶水是亿升

显然,水池无法承受亿升的水,直接溢出了!

解决方案?

?你先抽掉亿升的水(相当于减去最大值),这样所有的水量都变成一个较小的数字,水池就不会溢出了。

比喻2:计算机的“溢出”锅

假设你在做饭,想同时煮四个锅的水,每个锅的温度分别是:

?°c

?°c

?°c

?亿°c

你的炉子最高只能加热到°c,但第四个锅的温度远超这个上限,直接导致炉子baozha(计算机溢出)!

怎么办?

你可以先把所有锅的温度减去一个基准值(比如减去亿°c),让温度变成:

?-9.亿°c

?-9.亿°c

?-9.亿°c

?0°c

现在,最高的温度也只是0°c,不会再超出炉子的承受范围。

总结

?的溢出问题是因为指数运算会导致数值过大,超过计算机的上限。

?解决方案是在计算之前,先减去最大值,这样所有的数值都会变小,防止指数baozha。

?就像往水池倒水、往锅里加热,数值太大就会溢出,我们需要先做调整,确保计算不超出范围!

相邻推荐
职场上的聪明人  职场小聪明的人  职场小聪明图片  职场聪明只占第五位  职场最聪明三种人  职场小聪明懒惰  职场小人知乎  职场上的聪明人特征  职场小二  职场小聪明的人难做到退休  职场小聪明 酷匠网  傻瓜才会走捷径  职场小智慧  职场中最聪明的人  职场小聪明 在线阅读  职场上聪明工作的五个方法  职场小聪明指的是什么  职场小聪明的书评  职场聪明人都有哪些特征  职场精明的人  职场聪明人  在四个方面下笨功夫  职场小聪明搞笑短剧  职场中耍小聪明混日子的最后的结局  职场小聪明一般指什么人  职场小聪明心得体会  聪明的人在职场里  职场小聪明和滑头的人  职场小聪明全集阅读  职场必备的聪明  职场聪明的女人  职场耍小聪明  职场小聪明 全文阅读  职场上怎样做个聪明人  职场小聪明 起点  职场上最聪明的10种人  职场聪明的人  职场小聪明 翟晓鹰  
每日热搜小说推荐