深度学习入门
约 356 字大约 1 分钟
2025-09-30
模型选择

SVM 为什么现在不是很合适了?
- 需要处理无结构数据
- 不能处理大数据集
- 不能完全标注特征
神经网络
反向传播:通过链式法则计算损失函数相对于每个参数的梯度,并使用这些梯度来更新参数。 使用计算图来表示神经网络中的计算过程。
注
示例 e=(a+b)⋅(b+1).
计算图:
flowchart TD
%% 变量节点(椭圆,浅蓝色风格)
A["a<br/>a=2"]:::var --> CA["∂c/∂a=1"]:::grad --> C["c = a+b<br/>c=3"]:::var
B["b<br/>b=1"]:::var --> CB["∂c/∂b=1"]:::grad --> C
B --> DB["∂d/∂b=1"]:::grad --> D["d = b+1<br/>d=2"]:::var
C --> EC["∂e/∂c=2"]:::grad --> E["e = c*d<br/>e=6"]:::var
D --> ED["∂e/∂d=3"]:::grad --> E
%% 样式定义:变量节点(椭圆,浅蓝色)、梯度节点(矩形,浅棕色)
classDef var fill:#cce5ff, stroke:#66b3ff, rx:10, ry:10
classDef grad fill:#f5f5dc, stroke:#d2b48c, rx:5, ry:5这就是典型的前向传播过程。
当然我们在计算的时候,同时会记录下每个节点的中间偏导结果,方便后续的反向传播。
现在最大的问题是鞍点,即梯度为0但不是极值点的点,因为这样会导致梯度下降法无法继续前进。(w←w−η∇L(w))
