神经网络的德尔塔(Delta)到底是什么

(本文假设读者已经了解梯度下降法及\delta的推导过程,仅对\delta的作用和意义进一步讨论)

神经网络使用误差反向传播法更新权重和偏置参数的过程中,引入了一个重要的参数\delta,这个\delta到底是什么?

\delta是通过梯度下降法更新权重w和偏置b的过程中引入的,目的是计算权重w或偏置b的对损失函数L的偏微分,来更新wb。在这个过程中,直接计算wbL的偏微分太困难,于是便引入\delta这样一个中间变量,这样可以简化计算的过程,并且在后续反向回推的过程中可以复用之前求出的\delta。我们先来看看输出层\delta的表达式:

\delta = \frac{\partial L}{\partial z}

这里L是损失函数,z是输出层的加权输入:z=w_{1}x_{1}+w_{2}x_{2}+b\delta的直观含义是输入函数对输出函数的偏微分,也就是输出的变化率(变化量),可以理解为误差函数中预测值和真实值的偏差,本质上是损失函数对每一层加权输入的敏感度,描述了当前层输入的变化对整体的损失,所以通常称\delta为“误差”,这个“误差”会通过激活函数传播到隐藏层。隐藏层的\delta表达式复杂一些:

\delta ^{(l)}=\frac{\partial L}{\partial z^{(l)}}=(w^{l+1})^{T}\delta ^{l+1}\cdot f{}'(z^{l})

但仍然可以理解为某一层加权输入对于损失函数的偏导、变化率,其中f{}'为激活函数,w^{l+1}为下一层的权重矩阵,通过梯度传播机制,整个网络的优化是协同的。

注意,损失函数L、激活函数f都是确定已知的,权重w、偏置b都设置了初始值,输入x已知,所以\delta是可以具体求得的。求出了每一层的\delta,就可以用w:=w-\eta \frac{\partial L}{\partial w}对每一层的参数进行更新了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

courniche

鼓励就是动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值