

新闻资讯
技术百科前向传播是输入数据逐层计算得到预测输出的过程,反向传播则基于链式法则将损失梯度从输出层逐层回传以更新参数;二者构成“预测→计算损失→回传梯度→更新参数”的训练闭环。
前向传播和反向传播是深度学习模型训练的核心机制。理解它们,等于摸清了神经网络“怎么学”和“怎么改”的底层逻辑。
前向传播就是输入数据从输入层出发,逐层经过加权求和、偏置相加、激活函数变换,最终得到预测输出的过程。它不更新参数,只做一次“推理推演”。
关键步骤包括:
例如,一个两层全连接网络:输入 x → 隐层 z₁=W₁x+b₁ → a₁=ReLU(z₁) → 输出层 z₂=W₂a₁+b₂ → ŷ=sigmoid(z₂),ŷ 就是模型当前的预测结果。
立即学习“Python免费学习笔记(深入)”;
反向传播基于链式法则,把损失函数对每个参数的梯度从输出层逐层“倒着”算回来。有了梯度,就能用优化器(如SGD、Adam)更新权重和偏置。
核心逻辑是:
L(比如交叉熵或均方误差)相对于输出 ŷ 的梯度 ∂L/∂ŷPyTorch 或 TensorFlow 会自动构建计算图并完成梯度计算,但手动推一遍单层的反向传播(比如线性层+ReLU)能极大加深理解。
只做前向传播,模型永远不知道自己错在哪;只算梯度不前向,就没有误差信号可传播。二者构成一个闭环:前向给出预测 → 比较真实标签得损失 → 反向算出改进方向 → 参数更新 → 下一轮前向……
这个循环反复进行,模型才逐渐收敛。训练卡住、梯度爆炸/消失、loss不下降等问题,往往都能从前向或反向的某一步异常中找到线索。
不依赖框架,纯用NumPy实现前向+反向,是检验理解是否到位的好方法。重点不是代码多优雅,而是确保:
哪怕只跑通一个样本的完整流程,也会比读十遍公式更管用。