什么是反向传播?
反向传播(Backpropagation,简称 Backprop)是训练人工神经网络的核心算法。 它通过链式法则高效地计算损失函数相对于每个权重的梯度,从而指导参数更新。
工作原理
反向传播分为两个阶段:
- 前向传播:输入数据通过网络逐层计算,得到预测输出。
- 反向传播:从输出层开始,逐层计算误差对各层参数的偏导数,并利用梯度下降更新权重。
为什么重要?
在没有反向传播之前,神经网络难以有效训练深层结构。 Backprop 的出现使得大规模神经网络成为可能,是现代深度学习的基石之一。
简单示例(伪代码)
// 前向传播
output = forward(input, weights)
// 计算损失
loss = compute_loss(output, target)
// 反向传播
gradients = backward(loss, weights)
// 更新权重
weights = weights - learning_rate * gradients