前向传播
数据从输入到输出单向流过网络的计算过程——每层执行"矩阵乘法→加偏置→激活函数",输出喂给下一层。叫"前向"是因为数据只往前走,没有回头路。对应代码里的 model.forward() 或直接 model(x)。
一句话版本
数据从输入层出发,逐层经过"矩阵乘法→加偏置→激活函数",最终到达输出层——这个单向流动过程就是前向传播。
流水线比喻
把神经网络想象成一条工厂流水线。原材料(输入数据)从一端进入,每个工位(层)做一次加工:
- 矩阵乘法:把上一步的输出乘以本层的权重矩阵
- 加偏置:加上一个常数项
- 激活函数:做一次非线性变换(比如 ReLU 砍掉负数)
加工完的半成品传给下一个工位,直到最后一个工位输出成品(预测结果)。
数学上,每一层的操作:
a=activation(Wx+b)多层串联起来,上一层的输出就是下一层的输入,维度逐层变化(如 3→4→2)。
为什么叫"前向"
因为数据只往一个方向流——从输入到输出,没有回头路。与之对应的是反向传播,损失信号沿相反方向流回来,告诉每个权重该怎么调整。
代码中的前向传播
在 PyTorch 中,定义网络的 forward 方法就是在描述前向传播的路径。调用 model(x) 时,框架自动执行 forward 方法,走完整条流水线。