Backpropagation(反向传播经典解析)

A Question?

我们用之前的梯度下降去找最佳的θ显然在神经网络里很麻烦,参数太多了,为了更有效率的计算梯度,我们使用反向传播。
在这里插入图片描述下面是链式法则,高数下册的东西:
在这里插入图片描述

Backpropagation

我们先看三角型框住的部分:
在这里插入图片描述如下图,损失函数对w求偏导,可以根据链式法则换成下述形式,z对w求偏导被称为正向传递,损失函数对z求偏导被称为反向传递
在这里插入图片描述先来看看正向传递,我们发现,z对权重w求偏导,结果就是input。
在这里插入图片描述下面是个例子,应该很容易看懂吧?z对w求偏导的值就是它的input。
在这里插入图片描述现在我们来计算损失函数对激活函数的偏导。我们设a=σ(z),那么损失函数l对z求偏导,可根据链式法则转化成下述模样。而a对z求偏导我们在之前的博客中算过,所以是能算的。
在这里插入图片描述这时我们要求损失函数l对a的偏导,那么如下图所示,回顾本博客第二章图片的第二种链式法则,我们可以得到如下结果:因为z’=aw3+…,所以z’对a求偏导就是w3,以此类推。
在这里插入图片描述经过上述推理,损失函数对z求偏导就变成了如下形式:这时还有两个未知的量,就是上图那两个红色问号。
在这里插入图片描述σ‘(z)是一个常量,因为z在正向传递时已经确定。这时看下图,我们只要知道L对z’求偏导和L对z’‘求偏导的值,就可以得到L对z求偏导。
在这里插入图片描述假设该完整的神经网络就像下图一样粉色神经元就是output layer,L对z’求偏导和L对z’'求偏导可很容易得出。
在这里插入图片描述
如果粉色神经元不是output layer,我们接着往下看:
在这里插入图片描述
在这里插入图片描述下图描绘了整个反向传播过程,我们从output layer往前算。
在这里插入图片描述
在这里插入图片描述看下图,从output layer往反向进行传播,就可以得出最终的L对z的偏导。
在这里插入图片描述然后将Forward pass与Backward pass相乘,就得到最终的L对w求偏导。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值