解读反向传播算法(图与公式结合) | 您所在的位置:网站首页 › 误差传递的基本公式是 › 解读反向传播算法(图与公式结合) |
本人新人一个,在导师的指导下刚刚开始学习深度学习,以下是我对反向传播算法的总结,有写得不好或不对的地方,请大家不吝赐教!!! 1. 前言1.1反向传播算法反向传播(BP, back propagation)是“误差反向传播”的简称,是一种与最优化方法(如梯度下降法)结合使用的,用来训练人工神经网络的常见方法。 它的基本思想为: (1)先计算每一层的状态和激活值,直到最后一层(即信号是前向传播的); (2)计算每一层的误差,误差的计算过程是从最后一层向前推进的(即误差是反向传播的); (3)计算每个神经元连接权重的梯度; (4)根据梯度下降法则更新参数(目标是误差变小)。 迭代以上步骤,直到满足停止准则(比如相邻两次迭代的误差的差别很小)。 1.2神经元每个神经元由两部分组成。第一部分(z)是输入值和权重系数乘积的和,第二部分(f(z))是一个激活函数(非线性函数)的输出, y=f(z)即为某个神经元的输出,如下: 下面以三层感知器(即只含有一个隐藏层的多层感知器)为例介绍反向传播算法: 信息的前向传递过程如下: 对于L层感知器的信息前向传递过程: 第l(2 所有训练数据(共N组)的总体代价为: 我们的目标是调整权重和偏置使得总体代价(误差)变小,求得总体代价取最小值时对应各个神经元的参数(即权重和偏置项)。 由梯度下降优化算法,有: 可得,输出层神经元误差为: 可得: 同理可得: 即输出层误差为: 可得隐藏层神经元误差为: 可得: 即隐藏层神经元误差为: 可得参数更新公式为: 1)前向传播求输出: 2)反向传播求误差 误差定义: 输出层: 隐藏层: 3)参数更新: 2.sigmoid函数的求导 则: 1.https://blog.csdn.net/qq_32865355/article/details/80260212 2.https://blog.csdn.net/ft_sunshine/article/details/90221691#References_96 |
CopyRight 2018-2019 实验室设备网 版权所有 |