在神经网络训练中,正向传播和反向传播是两个核心步骤,用于计算损失并调整权重以最小化该损失。
正向传播 (Forward Propagation)
正向传播是指输入数据通过网络层传递直到输出的过程。在这个过程中,每一层的激活函数对前一层的加权输入求和,并加上偏置项后进行转换。具体来说,对于一个简单的全连接层,正向传播可以表示为:
- 输入:x\mathbf{x}x
- 权重矩阵:W\mathbf{W}W
- 偏置向量:b\mathbf{b}b
- 激活函数:f(⋅)f(\cdot)f(⋅)
公式
z=Wx+b \mathbf{z} = \mathbf{W}\mathbf{x} + \mathbf{b} z=Wx+b
a=f(z) \mathbf{a} = f(\mathbf{z}) a=f(z)
其中 z\mathbf{z}z 是线性组合的结果,a\mathbf{a}a 是经过激活函数后的输出。

反向传播 (Backward Propagation)
反向传播是根据预测输出与真实标签之间的差异(即损失),通过梯度下降算法更新网络参数的过程。它依赖于链式法则来计算相对于每个权重的损失梯度。
损失函数
设 L(y^,y)L(\hat{\mathbf{y}}, \mathbf{y})L(y^,y) 为损失函数,其中 y^\hat{\mathbf{y}}y^ 是模型的预测输出,y\mathbf{y}y 是真实标签。
链式法则
对于第 lll 层的权重 W[l]\mathbf{W}^{[l]}W[l] 和偏置 b[l]\mathbf{b}^{[l]}b[l],我们使用链式法则来计算它们的梯度:

最低0.47元/天 解锁文章
2443

被折叠的 条评论
为什么被折叠?



