深度学习中的优化不同于一般优化算法
来源:互联网 发布:质量好的衣服淘宝店铺 编辑:程序博客网 时间:2024/05/17 02:55
一、经验风险最小化
1、机器学习中我们关注某些性能度量P,其定义在测试集上并且可能不可解。我们需要间接优化P。我们通过降低代价函数
通常代价函数可写为训练集上的平均,如:
L是每个样本的损失函数,f是输入x所预测的输出,
通常我们更希望最小化取自数据生成分布
2、 机器学习算法的目标是降低(2)中的期望泛化误差,我们将之称为风险。我们注意这里强调它取自真实的潜在分布
我们的做法是用
3、 然而、经验风险最小化很容易过拟合,高容量的模型会记住训练集。在很多情况下,其并非可行。最有效的优化方法是基于梯度下降的,但是有的损失函数如 0-1 损失,没有有效的导数(要么为0,要么没定义)。这两个问题说明深度学习中我们很少用到经验风险最小化。反之,会使用稍有不同的方法,真正优化的目标会更加不同于我们希望优化的目标。
二、代理损失函数和提前终止
当我们关心的损失函数无法高效优化时,通常会选择去优化代理损失函数。例如:正确类别的负对数似然通常作为 0-1 损失的替代。负对数似然允许模型估计给定样本的类别的条件概率,如果该模型效果好,那么它能够输出期望最小分类误差所对应的类别。
机器学习用于训练的算法通常不会停止在局部极小点。通过优化代理损失函数,但是基于提前终止的收敛条件满足时停止。提前终止使用的是真实潜在损失函数,在过拟合发生前执行。
三、批量算法和小批量算法
与一般优化算法相比,机器学习算法的目标函数通常可以分解成训练样本上的求和。机器学习中的优化算法在计算参数的每一次更新时通常仅使用在整个代价函数中一部分项来估计代价函数的期望。
例如,最大似然估计问题可以在对数空间中分解成各个样本的总和:
最大化这个总和等价于最大化训练集在经验分布上的期望:
准确计算这个期望代价很大,需要在每个样本上评估模型。实践中,随即采样少量样本,然后计算它们的均值。n个样本均值的标准差是
另一个促使我们从小数目样本中获得梯度的统计估计的动机是训练集的冗余。最坏情况下,训练集的m个样本都是彼此的拷贝,我们只需要单个样本即可得出正确梯度。实践中,可能大量样本对梯度的贡献做了非常相似的贡献。
使用全部训练集的算法称作批量,使用单个样本的算法叫做随机或在线,介于之间的我们称之为小批量。
- 深度学习中的优化不同于一般优化算法
- 深度学习中的优化算法
- 深度学习中的优化算法
- 优化:深度学习优化算法
- 优化:深度学习中的优化
- 深度学习 优化算法
- 深度模型中的优化算法
- 【深度学习】常见优化算法
- 【深度学习】常见优化算法
- 深度学习常用优化算法
- 深度学习中的优化方法
- 深度学习中的梯度下降优化算法笔记
- 深度学习中的概率统计、数值优化算法
- 深度学习之各种优化算法
- 深度学习之各种优化算法
- 深度学习之优化算法笔记
- 深度学习----笔记之优化算法
- 深度学习优化算法总结(cs231n)
- 入场渐变两秒变一个文字
- OkHttp3请求网络回顾
- java web之路:jsp之基础
- 从架构演进的角度聊聊Spring Cloud都做了些什么?
- 蒙特卡洛算法思想介绍
- 深度学习中的优化不同于一般优化算法
- 为什么我的Android Studio没有Android SDK选项
- Linux system PXE网络环境
- Mybatis中的缓存
- 12月13日学习笔记-几个练习题
- Linux(CentOS7.2)下安装JDK及Tomcat
- ios开发关于多线程编程的理解(二)
- Effective Java之谨慎地覆盖clone(十一)
- ios 上架遇到错误