Skip to content
知识

/knowledge/deep-learning

深度学习与神经网络

剥去炒作,一个神经网络不过是一摞矩阵乘法,加上一点非线性的扭转,靠在自己的错误上下山来训练。理解那一个想法,便揭开了整个领域的神秘。

学于
深度学习与神经网络进阶 · 表示学习
时间
机器学习与 AI 课程
应用于
当模型走向深层
阅读 / 复习
约 17 分钟阅读2026-06-26

深度学习驱动着那些感觉像魔法的东西——图像识别、翻译、今天 AI 背后的大语言模型。一旦你看清 其机理,魔法就(以一种好的方式)消散了:一个神经网络是一大摞简单操作——矩阵乘法,中间夹着一点非线性——而「训练」不过是梯度下降推动数百万个数字、好让错误变小。 没有任何单个部件是神秘的;力量来自规模,以及这些部件如何组合。

这一页从神经元起一路搭建,倚靠你已经有的线性代数页与微积分页。回报是那一个让深度学习豁然 开朗的想法:网络学习它自己的特征,而非被人递给它。

01

真正新的是什么:学习特征

经典机器学习倚靠人来设计好的 特征:你决定测量什么,模型在那些手挑的输入上学习权重。这行得通,直到特征微妙到无法命名—— 在原始像素里,区分一只猫和一只狗的特征究竟什么?

深度学习的决定性一招是表示学习:网络不是被给予特征,而是从原始数据中、一层 一层地出它们。早期的层捕捉简单的模式(在图像中是边缘),后面的层把它们组合成 复杂的(纹理,然后形状,然后人脸)。「深」不过意味着许多层叠在一起,好让这些表示能彼此 搭建。这正是它在图像、音频与语言上胜过经典方法的全部原因——它发现了我们无法指明的特征。

02

神经元:加权和,再来个弯折

构建块是人工神经元。它接受输入 x1,,xnx_1, \dots, x_n,把每个乘以一个权重,加上一个偏置,再把结果通过一个非线性的激活函数 σ\sigma

a=σ ⁣(i=1nwixi+b)a = \sigma\!\left( \sum_{i=1}^{n} w_i x_i + b \right)

那个加权和就是线性回归。关键的额外 之物是 σ\sigma,那个非线性——而它并非可选。没有它,叠层就 毫无意义:线性映射的复合仍然只是一个线性映射,所以一个深网络会坍缩成一个单层网络,永远 只能画出笔直的边界。激活正是让深度为你换来表达力的东西。

现代的默认是 ReLUσ(z)=max(0,z)\sigma(z) = \max(0, z)——简单至极,而它「要么平、要么线性」 的形状避开了那个在深堆叠里困扰较老的 S 形 sigmoid 的梯度消失问题。

03

一层就是一次矩阵乘法

不过是一次性算出的许多神经元。把它们的权重堆进一个矩阵 WW、 把它们的偏置堆进一个向量 bb,整层就是一个干净的表达式:

a=σ ⁣(Wx+b)\mathbf{a} = \sigma\!\left( W\mathbf{x} + \mathbf{b} \right)

这就是为什么线性代数是深度学习的语言,也是 为什么 GPU 要紧——它们生来就是并行地做这件事,巨大的矩阵乘法。一个深网络只是把这些串起来:a(1)=σ(W(1)x+b(1))\mathbf{a}^{(1)} = \sigma(W^{(1)}\mathbf{x} + \mathbf{b}^{(1)}),然后 a(2)=σ(W(2)a(1)+b(2))\mathbf{a}^{(2)} = \sigma(W^{(2)}\mathbf{a}^{(1)} + \mathbf{b}^{(2)}),如此一路到输出。

04

前向传播

让输入穿过这条链以得到一个预测,就是前向传播——喂进数据,一层接一层地 乘-加-激活,在末端读出答案。在权重固定时,那就是一个训练好的网络做出预测的全部。有意思的 问题是那些权重是怎么变好的,那是本页的其余部分。

输入前向传播预测损失反向传播 → ∇更新权重
训练循环。前向传播把输入变成一个预测;损失衡量它有多错;反向传播把那个误差向后推,以得到每个权重的梯度;梯度下降把每个权重往下坡推一点。重复数百万次。

05

损失与梯度下降

要改进,网络需要一个表示它有多错的数字:损失 LL(回归用均方 误差,分类用交叉熵)。于是训练是一个优化问题:找到让 LL 尽可能小的权重。

有数百万个权重,最小值没有公式,所以我们朝它走。梯度下降计算损失对每个权重的 梯度——最陡上升的方向——并朝相反方向迈步:

w    wηLww \;\leftarrow\; w - \eta\, \frac{\partial L}{\partial w}

学习率 η\eta 设定步长,它是一个微妙的旋钮:太小,训练就爬行、 或在一个糟糕的位置停滞;太大,它就过冲、发散。实践中我们用随机梯度下降——一次 从一小批样本估计梯度,这便宜得多,而且有帮助的是,那点噪声有助于逃离糟糕的极小值。

06

反向传播:大规模的链式法则

还剩一个问题:当损失只在最末端被计算时,你如何为一个深埋在堆叠里的权重得到 L/w\partial L / \partial w反向传播就是答案,而它不过是来自微积分的链式 法则,被系统地应用。

输出处的误差被向后传播穿过网络。链式法则说,损失对一个早期权重的敏感度,是沿着从 该权重到损失这条路径上各个局部敏感度的乘积:

Lw(l)=La(l)a(l)w(l)\frac{\partial L}{\partial w^{(l)}} = \frac{\partial L}{\partial a^{(l)}} \cdot \frac{\partial a^{(l)}}{\partial w^{(l)}}

通过复用它已经为后面的层算出的量,反向传播在单次向后扫掠中得到每一个权重的梯度—— 高效到足以训练带数十亿参数的网络。前向传播得到预测、向后传播得到所有梯度、一步梯度下降, 重复。那个循环,在规模上运行,就是深度学习。

07

CNN、RNN 与 Transformer

总的配方是相同的;架构的不同在于它们如何连接各层以匹配数据的结构:

  • CNN(卷积网络)——用于图像。它们不是把每个像素都连到每个神经元,而是把小的 滤波器滑过图像、共享权重。这把「一个特征(一条边、一种纹理)无论出现在哪里都意味着同一 件事」这一想法内建进去,并大幅削减参数量。
  • RNN(循环网络)——用于序列(文本、时间序列)。它们把一个隐藏状态一步步向前 携带,给网络一份对此前之事的记忆。强大,但在长序列上难以训练(又是梯度消失)。
  • Transformer——现代语言 模型背后的架构。它们的注意力机制让每个位置都能直接看向每个其他位置,无需 逐步穿过一个序列就能捕捉长程关系——而且它并行得极好,这就是为什么它扩展到了今天的巨型 模型。

08

为何是现在——以及诚实的局限

核心思想已有数十年之久。变了的是三样东西的巧合:数据(互联网造出了巨大的 带标签数据集)、算力(GPU 让矩阵数学变便宜)、以及让深网络真正可训练的技巧(ReLU、dropout、更好的初始化、注意力)。它们一起把深度学习从一件 稀奇之物推成了主导的方法。

09

它在我工作中的体现

10

60 秒回顾

反向传播/梯度下降的划分、梯度消失与学习率的告诫,反映了当前的深度学习参考文献,以及机器 学习课程。