reference:
参考资料总结:
目前阶段我们不需要知道具体是怎么算得,大体了解推理过程就可以了。然后知道学习速率在哪里,和损失函数在反向传播算法里面起了什么作用就好了。
但是要记住以下结论
1、隐层阀值梯度值取决于隐层神经元输出、输出层阀值梯度和隐层与输出层的连接权值
2、在阀值调成过程中,当前层的阀值梯度取决于下一层的阀值梯度(BP精髓)
3、当前层的连接权值梯度,取决于当前神经元阀值梯度和上层神经元输出
4、学习速率就是调整权值时,梯度前面的系数。
5、损失函数就是计算前向传播的结果和预期值的误差。
整体的算法流程,大概就是
首先,前传(即训练输入送入网络得到响应),得到此次结果和预期的误差,然后反传,通过得到的误差计算梯度,然后根据梯度来调整权值。
通俗理解
由于我们有时候不需要知道细节,所以大体知道流程就可以了,这里大概就是以一个故事的形式通俗的讲一讲整体的流程。
有一天,我们要下山,但是雾太大,看不见路,所以我们只能以能见很小的范围内确认自己是不是在下山,然后理论上一直在向下走就是在下山,BP大概的理解就是这样子的。以梯度来看自己是不是在“下山”。这样子就会更好的理解以下要说的BP的缺点。
缺点
1、局部极小值
这么理解,就是你在下山的时候,有一个小坑,然后由于你看不到坑的全貌,但是所以你一直走下坡永远都出不了这个小坑。这种情况在学习速率特别小的时候就容易进去。
2、算法训练非常慢
这个光想就知道啦,你下山不走路线,能依赖的东西太少,寻路就会非常复杂,当然慢咯。
创建时间:不详
修改时间:2017/6/10
网友评论