lgg7深度详细参数-尊龙游戏旗舰厅官网
前言
batch normalization (bn)对于深度学习而言是一项非常重要的技术。尽管bn在网络训练的过程中表现力非常强大,但是大家始终没有一个很好的理论上的清晰理解。今天我们就试图解读这篇从平均场理论出发研究bn的论文:
a mean field theory of batch normalizationopenreview.net研究对象
我们考虑全连接网络上加上batch normalization技术:
其中
, 。 的取值范围为 ,其中b就是mini-batch的数量。对于参数
以及 ,这篇文章设定为一个常数:平均场处理
和之前我们讨论的全连接网络的平均场理论稍有不同的是,bn的平均场场理论需要处理的pre-activation(
)的个数为b个。这是由于bn技术是和mini-batch绑定的造成的。因此从数学角度,我们需要考虑更加复杂的情况。而解决这个更加复杂的情况也是这篇文章的主要贡献之一。这里我把详细的数学细节略去,只讲主要结论。
通过理论计算bn网络初始化时候的梯度信息,我们发现梯度在bn网络中会发生梯度爆炸。
实验分析
(1)梯度爆炸问题
关于梯度爆炸的结论,我们需要通过实验验证。如上图所示,纵坐标就是衡量梯度大小的norm,而横坐标对应网络的深度。不同的颜色为不同的b值。
的确,从图中的显示,会发生梯度爆炸。尽管提升b的值会改善,但是由于理论获得的梯度爆炸的速率为
,所以不可以通过提升b而彻底解决这个问题。(2)网络的可训练深度
尽管,我们发现了初始化情况下会发生梯度爆炸,但是这不一定意味网络不可以训练。于是我们做起了每篇平均场都会做的一个实验:
老规矩,白色虚线为理论预言而红色热图为真实实验。果不其然,平均场理论对于可训练深度的预言一直都很准,初始化时候的梯度爆炸的确会影响实验,可以训练的层数非常有限。
(3)bn到底行不行
我们知道我们在前面将两个重要的参数设定成常数:
然而在实际实验中,这两个参数是参与训练的。也就是说,我们需要研究不同
情况下的可训练性问题:从上面这张图可以看出来,其实是
通过梯度爆炸限制了网络的可训练深度。通过调节两个参数是可以大大提升网络可训练的深度。因为真实bn在训练过程这连个参数会一直变化,但我们至少可以推测,对于bn网络的训练,梯度爆炸不一定是个问题。讨论
这篇文章关于梯度爆炸影响bn的结论在其特定的语境是成立的,但是我更认为bn不太受梯度爆炸的影响。文章将调整参数归结于对于bn的改进,这也是一个特定语境成立的结论。这篇文章可能不符合我们对于bn常规的认知,但是我们不能否定这篇文章的理论贡献。
总结
以上是尊龙游戏旗舰厅官网为你收集整理的lgg7深度详细参数_深度学习平均场理论第七讲:batch normalization会导致梯度爆炸?...的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇:
- 下一篇: c#session共享 redis_sh