两种交叉熵损失函数的异同
来源:互联网 发布:php怎么开启exec函数 编辑:程序博客网 时间:2024/06/06 16:30
在学习机器学习的时候,我们会看到两个长的不一样的交叉熵损失函数。
假设我们现在有一个样本
−tjlog(yj) ,t_j
说明样本的ground-truth
是第j
类。−∑itilog(yi)+(1−ti)log(1−yi)
这两个都是交叉熵损失函数,但是看起来长的却有天壤之别。为什么同是交叉熵损失函数,长的却不一样呢?
因为这两个交叉熵损失函数对应不同的最后一层的输出。第一个对应的最后一层是softmax,第二个对应的最后一层是sigmoid。
如果看到这个答案就明白了的话,就没必要往下看了,如果感觉云里雾里的话,请听细细分解。
首先来看信息论中交叉熵的定义:
交叉熵是用来描述两个分布的距离的,神经网络训练的目的就是使
现在来看softmax
作为最后一层的情况。one-hot
标签。我们带入交叉熵的定义中算一下,就会得到第一个式子:
j : 样本x 属于第j 类。
再来看sigmoid
作为最后一层的情况。sigmoid
作为最后一层输出的话,那就不能吧最后一层的输出看作成一个分布了,因为加起来不为1
。现在应该将最后一层的每个神经元看作一个分布,对应的
解释完了,最后总结一下:这两个长的不一样的交叉熵损失函数实际上是对应的不同的输出层。
3 0
- 两种交叉熵损失函数的异同
- 交叉熵损失函数
- 交叉熵损失函数
- 交叉熵损失函数
- 交叉熵损失函数
- 交叉熵损失函数
- 交叉熵损失函数
- 交叉熵损失函数
- 交叉熵损失函数
- 交叉熵损失函数
- 神经网络的交叉熵损失函数
- 交叉熵和损失函数
- 机器学习使用交叉熵作为损失函数的原因
- 简单易懂的softmax交叉熵损失函数求导
- 简单易懂的softmax交叉熵损失函数求导
- 最大似然损失和交叉熵损失函数的联系
- 损失函数:MSE VS 交叉熵
- 交叉熵为何能作损失函数
- 登录界面
- 站队问题
- 刷题总结#10
- Goldbach`s Conjecture
- 谈javascript变量声明
- 两种交叉熵损失函数的异同
- 自动生成代码设置事项
- 解决 Android N 上报错:android.os.FileUriExposedException: file:///storage/emulated/0/
- 六角填数,蓝桥杯2014年第7题
- Java 多线程10:CAS 与 AtomicInteger(乐观锁)
- 摄像机跟谁玩家,鼠标中间控制视距的学习代码
- PID算法浅析
- 多线程中的并发、并行、同步、异步
- MAC的备份注意点