链式法则玩转反向传播

yanshw yanshw     2023-03-09     650

关键词:

神经网络的反向传播到底是个什么样的过程?今天就用链式求导揭开这个黑盒子。

这对于理解和设计神经网络很有帮助。

 

我们使用一个简单的逻辑回归的例子

技术图片

这里绿色是前向计算,褐红色是反向传播。 0.73是最终输出,1是误差。

可以看到整个计算流程就是上面那个逻辑回归表达式。

 

好了,误差有了,开始反向传播吧

很简单,就是拿误差乘以导数

error=1,它是经过1/x计算得到的误差,导数f1=-1/x^2,反向传递   1X(-1/1.37^2)=-0.53

error=-0.53,它是经过x+1计算得到的误差,导数f2=1,反向传递    -0.53X(1)=f1Xf2=-0.53

error=-0.53,它是经过ex计算得到的误差,导数f3=ex,反向传递     -0.53X(e-1)=f1Xf2Xf3=-0.2

error=-0.2,它是经过-x计算得到的误差,导数f4=-1,反向传递        -0.2X(-1)=f1Xf2Xf3Xf4=0.2

error=0.2,它是经过m1+m2计算得到的误差,它有2个导数,

                对m1的导数f51=1,反向传递        0.2X(1)=f1Xf2Xf3Xf4Xf51=0.2

                对m2的导数f52=1,反向传递        0.2X(1)=f1Xf2Xf3Xf4Xf52=0.2

...

需要注意的是,误差从输出一层一层往前传播,不可以跳过某些中间步骤,在计算每一步的误差时,需要乘上上一步得到的误差(链式法则,层层相乘)。

 

在传播过程中,如果某一部分可以直接用一整个函数代替,则可以对整块求导,然后将导数值传到上一步,如下图所示,这仍然符合链式求导法则

技术图片

蓝色框内其实就是sigmoid函数,其导数为 f(1-f)=(0.73x(1-0.73))=0.2,反向传递 1X0.2=0.2

 

其实在实际过程中,完整的反向传播应该是下图

技术图片

 

是不是觉得链式法则很有用?

详解backpropagation反向传播算法!

首先介绍一下链式法则假如我们要求z对x1的偏导数,那么势必得先求z对t1的偏导数,这就是链式法则,一环扣一环BackPropagation(BP)正是基于链式法则的,接下来用简单的前向传播网络为例来解释。里面有... 查看详情

详解backpropagation反向传播算法!

首先介绍一下链式法则假如我们要求z对x1的偏导数,那么势必得先求z对t1的偏导数,这就是链式法则,一环扣一环BackPropagation(BP)正是基于链式法则的,接下来用简单的前向传播网络为例来解释。里面有... 查看详情

反向传播算法之要点(backpropagation)

...下:已知:推导:全微分Review:推导:反向传播的本质是链式法则+动态规划。整个计算图中,假设每个连边代表上层对下层进行求导,那么传统方法求解costfunction关于某个参数的导数,根据链式法则,就需要计算从最后一层到这... 查看详情

机器学习笔记:反向传播

...红色圈起来的部分是共享的2使用反向传播的条件1,链式法则成立(任何时候都成立)2,计算图无环2.1链式法则3forwa 查看详情

反向传播与参数更新

...法需要计算损失函数对w和b的偏导,求偏导只使用了一个链式法则。 1、反向转播   2、参数更新  η是学习率 查看详情

神经网络入门——15反向传播(代码片段)

...则是它的一个延伸。以一个两层神经网络为例,可以使用链式法则计算输入层-隐藏层间权重的误差。要使用梯度下降法更新隐藏层的权重,你需要知道各隐藏层节点的误差对最终输出的影响。每层的输出是由两层间的权重决定... 查看详情

backpropagation:反向传播

...一个结点的输入②反向传播backpropagation:从后往前,利用链式求导法则,计算损失函数值对各参数/输入值/中间值的偏导数/梯度,梯度下降法需要使用反向传播来计算梯度在利用梯度下降法对权重矩阵等参数进行训练/更新时,... 查看详情

007-卷积神经网络-前向传播-反向传播

...反向传播回来的是梯度,也就是偏导数反向传播力有一个链式法则:对于反向传播(反着看),本层要往后面一层穿的的偏导=本层自身的偏导×上一层传过来的偏导红色代表反向传播,绿色代表正向传播 out=wx+bout对w求倒数:... 查看详情

dl反向传播理解

...的感觉。而一般直观上理解反向传播算法就是求导的一个链式法则而已。但是偏偏理解这部分和其中的 查看详情

cs231n误差反向传播

摘要本节将对反向传播进行直观的理解。反向传播是利用链式法则递归计算表达式的梯度的方法。理解反向传播过程及其精妙之处,对于理解、实现、设计和调试神经网络非常关键。反向求导的核心问题是:给定函数$f(x)$ ,... 查看详情

一文搞懂反向传播算法

...再应用梯度下降,其中将误差从末层往前传递的过程需要链式法则(ChainRule)的帮助,因此反向传播算法可以说是梯度下降在链式法则中的应用。为了帮助较好的理解反向传播概念,对它有一个直观的理解,接下来就拿猜数字游... 查看详情

神经网络的前向与后向传播简单理解

...于0。反向传播相关函数与概念理解反向传播发的关键是链式法则,链式法则是复合函数的求导法则,复合函数即多个函数构成的函数。反向传播算法简单来说就是采用前层神经元对后层神经元的影响大小*学习率来更新权重信息... 查看详情

梯度下降法与反向传播

...容:梯度下降法最优化梯度下降反向传播梯度与偏导链式法则直观理解Sigmoid例子1.梯度下降(Gradientdescent)初始权重不要都置为0,可用高斯分布。随机初始化的目的是使对称失效。如果所有权重初始化为相同初始... 查看详情

反向传播和梯度下降是不是使用相同的逻辑?

...重、偏差和过滤器。对于值的更新,我们使用从头到尾的链式法则找到梯度并使用公式,NewValue=oldvalue-(learningRat 查看详情

什么是反向传播(第二篇)

...修正)。不知明白了没有,如果需要理论推导(其实就是链式法则+梯度下降法),可以参考1986年的bp算法的论文。(20141 查看详情

《andrewng深度学习》笔记2

...近w和b。通过图片看到,反向传播其实就是微积分里的“链式法则”。这块 查看详情

深度学习之求导(代码片段)

...(Backpropagation)。反向传播算法与数学当中求导链式法则有非常密切的关系,当前的流行的网络结构,无不遵循这个法则,比如计算视觉当中的LeNet、AlexNet、GoogLeNet、VGG、ResNet,还有其它的各种网络。反向... 查看详情

详解backpropagation反向传播算法!

首先介绍一下链式法则假如我们要求z对x1的偏导数,那么势必得先求z对t1的偏导数,这就是链式法则,一环扣一环BackPropagation(BP)正是基于链式法则的,接下来用简单的前向传播网络为例来解释。里面有... 查看详情