2016.3.30 为什么神经网络训练很难?
2016-05-08 17:44
357 查看
为什么神经网络训练很难?
深度神经网络本身不太稳定,这是因为在反向传播的过程当中,每一步都要经过一个sigmoid’,还有一个w的乘法。容易导致梯度扩散或者是梯度爆炸的问题。而这都是由于这两个参数导致的。对于sigmoid’来说,最大的也不过是1/4所以在这一部分的时候梯度会逐渐减小,而且是逐层指数的减小。如果w也不大的话,那么在训练的过程中,前面几层的训练量明显不够。对于w来说,如果w太大,那么就使得训练的误差在逐层反向传播的时候逐渐增大,也就会导致最后的梯度爆炸。所以这个网络是在是太不稳定了。很容易就出现训练上的问题。
还有就是在训练过程中,开始的训练可能就会导致后面几层的z非常大,sigmoid’(z)就非常小了。为了解决这个问题,我们要采用一些机智的激活函数。
深度神经网络本身不太稳定,这是因为在反向传播的过程当中,每一步都要经过一个sigmoid’,还有一个w的乘法。容易导致梯度扩散或者是梯度爆炸的问题。而这都是由于这两个参数导致的。对于sigmoid’来说,最大的也不过是1/4所以在这一部分的时候梯度会逐渐减小,而且是逐层指数的减小。如果w也不大的话,那么在训练的过程中,前面几层的训练量明显不够。对于w来说,如果w太大,那么就使得训练的误差在逐层反向传播的时候逐渐增大,也就会导致最后的梯度爆炸。所以这个网络是在是太不稳定了。很容易就出现训练上的问题。
还有就是在训练过程中,开始的训练可能就会导致后面几层的z非常大,sigmoid’(z)就非常小了。为了解决这个问题,我们要采用一些机智的激活函数。
相关文章推荐
- 2016.3.30 神经网络的未来发展
- 2016.3.29 其他应用深度神经网络的应用
- 2016.3.29 实际运用卷积神经网络
- 2016.3.29 一个简单的视觉化证明神经网络可以拟合任意函数
- 2016.3.28 其他的调整网络的技巧
- poll_echo_server
- 2015.4.1 网络及其存在的环境
- 2015.4.1 网络群体与市场 正关系与负关系
- basic_echo_server
- 20145326 《Java程序设计》实验五——Java网络编程及安全实验报告
- 网络赚钱靠谱项目推荐和骗局陷阱
- 路由的几个基本概念-直连路由/网关路由/主机路由/网络路由/动态路由/静态路由/默认路由
- 解决python2.7.9以下版本requests访问https的问题
- BP神经网络
- WCF 接收我服务的 HTTP 响应时发生错误
- TCP通信问题,我的TCP服务器貌似无法开启监听
- 网络协议分层
- 20145122《 Java网络编程》实验五实验报告
- 网络(Java核心技术卷Ⅱ)
- Steady Cow Assignment(二分图多重匹配+二分)(网络流)