代价函数 交叉熵
来源:互联网 发布:蓝光 刻录 数据 编辑:程序博客网 时间:2024/06/08 06:05
1.简介
交叉熵, Cross Entropy.
一般用作 二分类/多分类 的代价函数, 而不用于回归问题.
2.公式
对于离散变量
3.二分类应用
3.1 输出层为一个节点
符号约定:
针对一个batch, 损失函数就是:
基本单元就是:
式(2) 看上去并不直观, 那我们来分析一下分类问题中, 它作为损失函数的合理之处:
假设为二分类,
1. 考虑到对数值为负且系数为负, 所以总的值为正且最小值为0
2. 当
图2-1 神经网络
对图2-1 中的网络, 反向传播时求偏导,
式(3) 中可以看到, 权重的学习速率可以被 σ(z)−y 控制,也就是被输出结果的误差所控制。误差越大我们的神经元学习速率越大。这正是我们直觉上所期待的那样.
3.2 输出层为两个节点
同多分类应用.
4. 多分类应用
神经网络中, 多分类(类别数为n)问题的输出层就是n个节点, 激活函数一般选 softmax. target是one-hot形式, 所以使用交叉熵作损失函数, 跟二分类没什么差别, 针对一个样本, 损失函数为:
只有一个
5. 对比均方误差函数
均方误差函数, 英文中有个更通用的叫法: quadratic loss function
, 即 二次损失函数
.
当神经元输出接近 1 时,曲线变得非常平坦,因此 σ′(z) 就会变得非常小, 导致尽管误差很大但学习速度很小, 不具有交叉熵函数的优点.
6.实验
实验摘自 参考文献[1] 中的web页面可视化训练控件.
这些图片应该这么看:
(1) 与 (2): 初始权重与偏置分别为0.6与0.9, 经过训练得到误差变化曲线
(3) 与 (4): 初始权重与偏置分别为2.0与02.0, 经过训练得到误差变化曲线
图 3-1 均方误差函数的表现
图 3-2 交叉熵函数的表现
对比图3-1-(4) 与 3-2-(4) , 可以看到交叉熵函数的下降速率优于均方差.
参考
- The cross-entropy cost function
- 交叉熵代价函数
阅读全文
0 0
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 交叉熵代价函数
- 代价函数 交叉熵
- 交叉熵代价函数
- 交叉熵代价函数
- P1092 虫食算
- pandas中grouopby使用(一)
- Java用jmatio读取MAT文件
- Chrome 错误代码:ERR_UNSAFE_PORT
- C#序列化与反序列化
- 代价函数 交叉熵
- Redis 备份,容灾及高可用实战
- Spring事务配置的五种方式
- Java自定义排序
- php网站开发常见的几种攻击以及解决方案
- RPC协议之报Unknow Source的错误
- Linux学习(七)日志、备份和启动管理
- 装饰模式
- node.js依赖express解析post请求四种数据格式()