DW李宏毅机器学习Task5

1、当梯度很小时,优化效果没有达到期望

Optimization失败的原因:(1)local minimum;(2)saddle point(鞍点)
在这里插入图片描述
在这里插入图片描述
gradient为0,会导致loss不下降,即卡在了critical point(包括local minimum和saddle point)。 对于local minimum的问题可能无法解决,但是saddle point还是有可能解决。

数学推导
Taylar Series Approximation,泰勒展开式近似

在这里插入图片描述
critical point是指,近似式右边的第二项为0,根据第三项就可以知道是哪种critical point。
在这里插入图片描述
在这里插入图片描述
说明只要根据Hessian矩阵的特征根,即可确定是local minimum,还是local maximum,还是saddle point。
如果critical point 是 saddle point时,此时Hessian矩阵会说明接下来Loss下降的方向,从而有机会继续优化。原因在于:
在这里插入图片描述
因此,只要找到此时Hessian矩阵中负的特征根,那么更新参数只要沿着对应的特征向量 u u u的方向,就可以逃离saddle point并且降低loss。但这个方法在实际中几乎不使用,因为运算量太大了。

Saddle Point v.s. Local Minimum

这两种critical point哪个更常见?
local minimum可能在高维空间中也是saddle point。
在这里插入图片描述
Minimum ratio表明Hessian矩阵的特征根中负的特征根的个数占特征根总数的比例。实际中很少存在全为正或全为负的情况,说明实际中很多情况下都可以继续优化使loss下降。

2、Tips for training:Batch and Momentum

Batch

Optimization with Batch:每一个epoch开始前,会分一次batch,也就是每个epoch中batch的分法都不一样,也称为shuffle。
在这里插入图片描述
Small Batch v.s. Large Batch:各有各的优缺点
在这里插入图片描述

  • Larger batch size does not require longer time to compute gradient(unless batch size is too large),因为可以利用GPU进行并行运算,但是并行运算也有极限。
  • Smaller batch requires longer time for one epoch(longer time for seeing all data once),考虑平行运算的情况下,较大的batch size可能比较小的batch size更有效率。
    在这里插入图片描述
    小的batch size的表现更好,因为随着batch size的增加,试验的精确率逐渐降低。那么大的batch size为什么表现会更差呢?因为optimization失败了。具体原因是:小的batch size在优化过程中每个batch中的数据都略有差异,当 L 1 L_1 L1在优化过程中遇到critical point,可以使用 L 2 L_2 L2继续优化,避免因为critical point而loss停止下降。
    在这里插入图片描述
    但是根据《On Large-Batch Training for Deep Learning:Generalization Gap and Sharp Minima》的试验结果,小的batch size在训练集表现较好,但在测试集中表现更差,这就是发生了overfitting。
    在这里插入图片描述
    在这里插入图片描述
    Batch size is a hyperparameter you have to decide。
Momentum

在这里插入图片描述
在物理学中,由于惯性因素的影响,下降过程中可能会突破critical point的困境。
一般的梯度下降过程(Vanilla Gradient Descent):
在这里插入图片描述
Gradient Descent+Momentum的过程:
在这里插入图片描述
关于加入momentum的两种解读:(1)不止考虑当前点的梯度方向和大小,还考虑上一步的下降的方向和大小;(2)不止考虑当前的梯度大小和方向,还考虑之前的梯度大小和方向:
在这里插入图片描述
能突破critical point的原因:
在这里插入图片描述
Smaller batch size and momentum help escape critical points.

3、Tips for training:Adaptive Learning Rate

训练过程中最大的阻碍不一定是遇到critical point,需要确定一下当loss不再下降的时候,gradient是否真的很小。
在这里插入图片描述
在这里插入图片描述
Learning Rate不能所有的参数所有的步骤都一样。考虑定制化的Learning Rate,即Different parameters needs different learning rate,希望在gradient变化大时learning rate较小,而在gradient变化小时learning rate较大。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
通过调整参数,可以改变最近的gradient的影响程度。
Adam:RMSProp+Momentum
Learing Rate Scheduling:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值