cnn为什么会不存在vanishing gradient的问题

之前神经网络火过一段时间,但是后来又淡出了,后来又火了,尤其是到2012年真的像发水一样。

之前为什么不火了呢,因为人们发现网络浅了吧,没什么优势。网络深了吧,又会出现vanishing gradient,无法训练。

看文章也没看到有特别提到为什么现在又能训练了。

 

调研了一下,是因为几个原因吧。

1. 现在的网络中的激活函数变了,由原来的sigmoid变成了relu,这个从relu的分布来看,限制了误差的无限变化。

2. 计算资源变好了。原来的计算资源比较差,训练的话不能一点点调,但是学习率设置大了,会影响收敛的。现在有了GPU和高速的CPU了,可以很小的learning rate开始训练,不停的迭代,也是现实的。

3. dropout的使用。这个防止了过拟合。

 

lstm我觉得就是利用了类似于第一点的特性吧。通过增加lstm这个环节,让rnn的误差不至于vanishing gradient.

文章来自:http://www.cnblogs.com/jianyingzhou/p/4365416.html
© 2021 jiaocheng.bubufx.com  联系我们
ICP备案:鲁ICP备09046678号-3