为什么 softmax 计算时要先减去最大值
2024-10-21 02:42:54
根据 softmax 最基本的定义,计算公式如下所示:
$$S_i=\frac{e^{x_i}}{\sum_j e^{x_j}}$$
原理也很简单,将原向量变为分布的形式(和为1)。
看似很美好,但是有致命缺点,当 $x_i$ 的值比较大的情况下,由于 $e^x$ 呈指数增长,因可能会发生溢出。
解决方法:$x_i=x_i-x_{max}\;x_{max}=max(x)$。
最新文章
- 探索 Linux 系统的启动过程
- java 学习框架
- jQuery 中 jQuery(function(){})与(function(){})(jQuery) 的区别
- DES加密
- eclipse工程加入jquery.min.js报错:missing semicolon
- 移动5年 Android生态系统的演进
- <;input type=";hidden"; id=";haha"; name=";wang"; value=";xiaodong"; />;
- MySQL错误代码大全【转载】
- oracle触发器实例
- 总结spring下配置dbcp,c3p0,proxool数据源链接池
- Ext4报错Uncaught Ext.Loader is not enabled
- 以JTextPanel为例Swing的鼠标事件详解
- 升级3.2.3后 could not find driver
- didMoveToSuperView 引发的思考
- 关于使用国内dock仓库,网易、DaoCloud
- SonarLint 代码质量管理
- python学习Day14 带参装饰器、可迭代对象、迭代器对象、for 迭代器工作原理、枚举对象、生成器
- atlium designer 我画的pcb板到出元件清单, 里面显示 Board Stack Report
- A1090. Highest Price in Supply Chain
- Jenkins插件获取git分支的方法