深度学习入门之BP神经网络(二)下
时间:
2021-03-26作者:安服优
前言
上一篇文章【深度学习入门之BP神经网络(二)上】中,我们说到了BP神经网络是将信号值作为输入层放入设定好的网络结构中,经隐含层前向传播给输出层,然后根据输出层信号值与想要得到的值之间的误差逆向传播,根据误差值不断修正每一个权重值,直到误差值和实际要求的值的差距达到要求为止。以及单个神经元工作前向传播的两个公式:

PS:本篇文章略长,请一定要耐心耐心读完,由于文章过长,所以分为上下两篇,上篇主要是前向传播,下篇是误差的逆向传播。

在上一文的例子中,我们输入了两个参数(输入层神经元IN 1:0.8和IN 2:0.6),而我们希望通过整个网络之后,得到的值是输出层的神经元的值(OUT 1:0.2)。而在上一节第一次传导之后,根据随机的初始权重最后计算得到的是0.432(由于上一章计算错误,最后一个输出层的神经元的值是0.432,不是0.251,在此抱歉,是小编计算不好,罚作业去了)对比目标要得到的输出值0.2,相当于多了0.232,那么我们要根据这个误差对于一路计算来的权重作以更新,更新的具体方法,就是梯度下降。
梯度下降是什么呢?
我们可以把梯度下降想象成一个巨人在山峰上,想从山上下山,沿着下降的方向,如果陡一点的地方,迈相同宽度的步子,那下降的高度就大一点,一边走到下一级台阶一边判断自己是不是在最低的海拔,如果不小心在山下的位置错过了最低的地方,那就往回走一点,直到走到山下。

再回看这张图:















下一篇我们将用一个实际的例子看一下BP神经网络的过程和需要注意的一些细节,不要走开呦。
以下特意为大家整理了之前发布的关于『机器学习』的相关文章如下