大白话:就像「做菜」,把原材料(输入数据)按菜谱(模型参数)一步步加工成成品(预测结果)。
输入数据 → 第 1 层(乘权重 + 加偏置 → 激活函数) → 第 2 层(同上) → … → 输出层 → 预测结果
- 例子:输入一张猫的照片(像素矩阵),就像准备了一堆食材(蔬菜、肉、调料)。
- 炒菜(线性变换 + 激活):
把焯水后的菜和其他食材一起炒(比如把胡萝卜丁和肉一起炒)。
公式:Z2 = A1 × W2 + b2 → A2 = ReLU(Z2)
- 最后调味(线性变换):
炒好的菜装盘,撒上葱花(比如把中间特征变成最终预测)。
公式:输出 = A2 × W3 + b3
(如果是分类问题,输出可能是「猫」「狗」「鸟」的概率)。
- 预测:输入新数据,得到模型的预测结果(比如输入一张图,输出「猫」或「狗」)。
- 为反向传播做准备:前向传播计算出的结果,用于后续计算损失函数,然后通过反向传播更新模型参数。
| 术语 | 大白话解释 | 类比做菜 |
| 权重(W) |
菜谱中的「用量」(如盐 2 勺) |
切菜的刀法、炒菜的火候 |
| 偏置(b) |
额外添加的调料(如多加点糖) |
调味时的「微调」 |
| 激活函数 |
过滤杂质的步骤(如焯水、去沫) |
去除食材中的杂质 |
| 矩阵乘法 |
按比例混合食材(如 1 份肉配 2 份菜) |
把不同食材按比例混合 |
| 多层网络 |
多步烹饪(切菜→焯水→炒菜→装盘) |
复杂菜品需要多步加工 |
数据从输入层进入,经过多层「加工」(线性变换 + 非线性激活),最终在输出层得到预测结果。整个过程就像按菜谱做菜,每一步都按特定规则转换数据,直到得到成品。
训练好的 DNN 就像一个熟练的厨师,不管你给什么食材(输入数据),都能做出对应的菜品(预测结果)~