“深度学习”里的”深度”指的是神经网络的层数。传统机器学习需要人工设计特征(比如识别猫要先手工定义耳朵形状、胡须长度),而深度学习把”特征提取”这件事也交给了模型:用多层网络逐层自动学习从原始数据到抽象概念的表示。这就是它到底在学的东西——表示(representation)。

从神经元到神经网络

一个神经元做的事情很简单:把输入加权求和,加上偏置,再过一个非线性激活函数:

y = f(w1*x1 + w2*x2 + ... + b)

单个神经元只能表达线性边界加一次非线性,能力有限。但把神经元按层堆叠、层层连接,网络就获得了拟合复杂函数的能力。所谓”训练”,就是通过数据不断调整这些权重 w 和偏置 b。

为什么要”深”

层数的意义在于特征的层次化:

  • 浅层学到边缘、纹理等低级特征
  • 中层组合成部件,如眼睛、车轮
  • 深层形成语义概念,如”猫脸””一辆车”

每一层都在把上一层的输出变换成更抽象、更利于判别的表示。理论上单层宽网络也能拟合任意函数,但实践中深层结构的参数效率高得多,泛化也更好——这和写代码时分层抽象是同一个道理。

怎么学:反向传播

网络学参数靠的是反向传播(Backpropagation):

  • 前向:输入数据逐层流过网络,得到预测值
  • 算损失:用损失函数衡量预测与真实标签的差距
  • 反向:从输出层往回,用链式法则算出损失对每个权重的梯度
  • 更新:梯度下降(及其变体 Adam 等)沿梯度反方向微调权重

整个过程重复百万次,权重逐渐收敛到让损失较小的位置。可以说深度学习 = 大规模数据 + 可微网络结构 + 梯度优化。

过拟合与正则化

参数多了以后,模型可能把训练集”背”下来而不会举一反三,即过拟合。常用对策:

  • 正则化:L2 权重衰减、Dropout 随机失活神经元
  • 数据增强:翻转、裁剪、加噪扩充样本多样性
  • 早停:验证集效果不再提升时停止训练

深度学习不是银弹:它依赖大量数据和算力,且可解释性差。但在图像、语音、文本这些特征难以手工定义的领域,自动学习表示的优势是压倒性的,这也是它成为当前 AI 基石的原因。