「机器学习速成」训练神经网络:反向传播、梯度爆炸消失Dropout

https://www.toutiao.com/a6706075530187244045/

 

 

 2019-06-24 20:38:02

大家好,今天我们学习【机器学习速成】之 训练神经网络。

我们 马上学三点 ,

  1. 反向传播算法的几个失败案例
  2. 标准化特征值
  3. Dropout正则化

大家可以点击下面的“ 了解更多 ”,或搜索“ 马上学123 ”,在线观看PPT讲义。

反向传播

反向传播算法是 最常见的一种神经网络训练算法。 借助这种算法, 梯度下降法在多层神经网络中将成为可行方法。

「机器学习速成」训练神经网络:反向传播、梯度爆炸消失Dropout

反向传播

TensorFlow 等框架可自动处理反向传播算法, 它会负责反向传播的内部运作, 在后台为我们完成所有一切, 因此您暂时不需要对该算法作深入研究。

反向传播: 梯度很重要

但是, 我们需要了解反向传播算法的几个重要事项, 很多常见情况都会导致反向传播算法出错。

首先,反向传播确实依赖于梯度这一概念, 事物必须是可微的, 这样我们才能够进行学习。 各种函数中存在一两个小的间断点没关系, 但一般来说,我们需要可微函数, 从而能够使用神经网络进行学习。

反向传播:梯度消失

另外需要注意,梯度可能会消失。 如果我们的网络太深, 那么较低的层,也就是更接近输入的层, 它的梯度可能会变得非常小

在深度网络中, 计算这些梯度时, 可能涉及许多小项的乘积

当较低层的梯度逐渐消失到 0 时, 这些层的训练速度会非常缓慢, 甚至不再训练。

在这种情况下, ReLU 激活函数可能有助于防止梯度消失。 此外,还有一些其他策略, 但在节中不做讲解。

一般我们需要考虑, 尽量将模型的深度限制为最小的有效深度

反向传播:梯度爆炸

另外,对应的有一个叫梯度爆炸, 如果网络中的权重过大, 则较低层的梯度会涉及许多大项的乘积。 在这种情况下,梯度就会爆炸: 梯度过大导致难以收敛

比如如果学习速率太高, 就会出现极不稳定的情况, 模型中就可能出现NaN。 在这种情况下, 就要以较低的学习速率再试一次。

批标准化可以降低学习速率, 因而有助于防止梯度爆炸

其实梯度爆炸和梯度消失问题 都是因为网络太深, 网络权值更新不稳定造成的, 本质上是因为梯度反向传播中的连乘效应

反向传播: ReLu 层可能会消失

还有一个失败案例,ReLU可能会消失。 这可能是因为我们硬性将上限设为0

一旦 ReLU 单元的加权和低于0, ReLU 单元就可能会停滞。 它会输出对网络输出没有任何贡献的 0 激活, 而梯度在反向传播算法期间将无法再从中流过。

由于梯度的来源被切断, ReLU 的输入可能无法 作出足够的改变来使加权和恢复到0以上。

所以要密切关注,并使用不同的初始化 或较低的学习速率进行重试, 降低学习速率有助于防止 ReLU 单元消失。

标准化特征值

训练时, 如果特征值在输入时就已经标准化, 这通常会对我们非常有用, 有助于梯度下降法收敛避免离群值也会有帮助.

如果范围大致相同, 则有助于提高神经网络的转化速度。 范围实际值并不重要; 我们通常推荐的大致范围是负1到正1。 也可以是负5到正5,或者0到1, 只要所有输入的范围大致相同就可以。

丢弃正则化

最后, 在训练深度网络时还有一个很有用的技巧, 即正则化的另一种形式, 叫做丢弃(也就是Dropout)。

「机器学习速成」训练神经网络:反向传播、梯度爆炸消失Dropout

丢弃正则化

Dropout 是一个非常有趣的概念, 思想其实非常简单粗暴: 对于网络的每一层,按照概率P(比如50%)随机的丢弃一些节点。 丢弃的节点越多,正则化效果就越强。

您可以清楚地看到,

  • 如果丢弃所有节点, 就会得到一个极为简单的模型, 这个模型基本上毫无用处。
  • 如果一个都不丢弃, 则模型便具备完整的复杂性;
  • 如果在训练过程中的某个位置进行丢弃, 那就相当于在这个位置应用了某种有效的正则化

我们最近取得了多项推动深度学习走向前沿的关键进展, 丢弃便是其中之一, 使我们能够获得许多重大的成果。

总结:

  • 反向传播是用来训练人工神经网络的常见方法。 TensorFlow 等框架可自动处理反向传播算法,
  • 反向传播算法的失败案例:梯度消失、梯度爆炸、ReLU 单元消失
  • 在训练深度网络时技巧:标准化特征值,范围大致相同;
  • Dropout正则化,在梯度下降法的每一步中随机丢弃一些网络单元。

这里讲了三点,关键词有哪几个?

提问,标准化特征值有哪些方法?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值