李宏毅机器学习笔记4 -- DNN训练

李宏毅课程中关于 Tips of deep learning这部分讲的知识点比较多而且很细节。其中的dropout、ReLU等等很早就使用了,但是其中的细节却一直没有注意,这里总结一下课程中的知识,趁机巩固一下基础。

开篇

在这里插入图片描述
作者主要介绍了五部分,针对的是训练集表现不好即以测试集(验证集)表现不好(过拟合)两个问题。

训练集表现不好

当模型在训练集表现不好时,有可能是模型复杂度不够,但是在Deep Learning中这种情况并不多见,所以问题更多集中在激活函数、learning rate不合适等Network本身结构问题。

测试集表现不好

训练集表现良好测试集表现不好,这是明显的过拟合现象,说明模型过于复杂,便要想办法降低模型的复杂度。
无论是dropout、regularization还是早停机制都是降低模型的复杂度,从而克服过拟合问题。

New Activation Function

Sigmoid的局限

因为Sigmoid函数本身特征,其会将差距很大的多个input映射到取值为0~1的output中。
在这里插入图片描述

这一特征会使得很多在input上很明显的变化在output上可以忽略不记,而深层神经网络更加加剧了这一问题,这一问题被称为Vanishing Gradient Problem。在这里插入图片描述

ReLU激活函数

为克服Sigmoid的这一问题,引入了ReLU激活函数。在这里插入图片描述
这里还有其变形:在这里插入图片描述
最后作者介绍了Maxout,ReLU可以算作它的特殊化。在这里插入图片描述
在原论文 Maxout Network 中作者证明Maxout可以拟合任意一个convex function(凸函数?):
在这里插入图片描述
在网上查找Maxout时很多人都提到虽然Maxout表现好但参数较多……我总觉得和Max Pooling有点神似……
附一篇对于激活函数的总结文章

Adaptive Learning Rate

训练的效率和 learning rate 的设置密切相关,learning rate过大过小都不好,所以最好的方式就是使learning rate根据当前梯度变化趋势调整大小。

现在用的比较多的是Adam:
在这里插入图片描述
其中 momentum变量是应用动量原理,使得在梯度下降到局部最优时有惯性尝试去跳出局部最优点;RMSprop使得learning rate大小根据梯度的变化缓急进行调整(和之前总结过的Adgrad相类似)。

至于作者在 compute bias-corrected first/second estimate时除以定值,作者也有相应的解释,以first moment extimate为例:

m t m_t mt可表示为:
m t = ( 1 − β 1 ) ∑ i = 1 t β 1 t − i ⋅ g t m_t = (1-\beta_1)\sum_{i=1}^t \beta_1^{t-i} \cdot g_t mt=(1β1)i=1tβ1tigt
在该值训练开始时,因为初始值 m 0 m_0 m0初始为0,故在训练前期 m t m_t mt会偏向于0。
因为这是一个累加过程,开始过小会导致整个过程中 m t m_t mt偏小,故除以 1 − β 1 1-\beta_1 1β1来消除初始值带来的影响。

同理 v t v_t vt也是如此。

Early Stopping

在这里插入图片描述
这个很简单,迭代次数过多时,较复杂的模型可能会学习训练集中的噪音信息,从而导致过拟合。

所以在有过拟合趋势时停止训练便可以避免过拟合。

Regularization

关于正则化其实也比较简单吧,很直觉的东西:
在这里插入图片描述
根据上面PPT中 w t + 1 = ( 1 − η λ ) w t − η ∂ L ∂ w w^{t+1}=(1-\eta \lambda) w^t - \eta\frac{\partial L}{\partial w} wt+1=(1ηλ)wtηwL,L2正则化使得 w w w较原来减小。
在这里插入图片描述
上面PPT为L1正则化,对比L2正则化,其参数值在更新中因为需要减掉常数,值更小甚至趋向于零。
故可以总结:

  • L1正则化使得参数矩阵稀疏化,部分参数归零
  • L2正则化使得参数相较于未正则化减小

Dropout

在这里插入图片描述
训练比较简单,关键的是测试的时候:在这里插入图片描述
作者以及之前Maxout那篇论文中都有讲过,Dropout有点类似于使用集合学习,每一次Dropout剩下来的神经元便是一个子学习器,最后乘以一定参数构成最终的学习器。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值