AI大模型:探索神经网络的奥秘:从模型到深度学习

探索神经网络的奥秘:从模型到深度学习

摘要

神经网络是一种通过参数化数学公式实现通用函数逼近的模型。本文从"模型即数学公式"出发,系统阐述神经网络的基本原理、训练机制(梯度下降与反向传播)以及以 MNIST 手写数字识别为代表的经典案例。在此基础上,深入介绍深度神经网络的主要架构演化:卷积神经网络(CNN)、循环神经网络(RNN)及其变体 LSTM/GRU、Transformer 和残差网络(ResNet),并分析深度网络训练中梯度消失/爆炸、退化、过拟合等难题及其解决方案。附录提供完整的术语表与核心公式汇总,兼顾科普性与专业性。


第一部分:模型与神经网络基础

1.1 什么是模型?

在机器学习中,模型 本质上是一个带有可调参数的数学函数,它将输入数据映射为输出结果。设计模型就是设计能够解决真实问题的数学公式。

分类任务 是最常见的模型应用形式:

  • 输入:一组符合要求的特征数据(如图像像素、身长体重、文本前缀)
  • 已知:类别总数为 (n)(即 (n) 选 1)
  • 输出:经过公式计算后得到 (n) 个概率,分别代表输入属于每个类别的可能性。

典型示例

  • 输入一张手写数字图片 → 输出 0~9 的概率
  • 输入动物的身长和体重 → 输出 200 种动物的概率
  • 输入一段文本前缀 → 输出 30,000 个汉字作为下一个字符的概率

1.2 设计模型就是设计数学公式

早期研究者针对不同问题手工设计公式(例如线性回归 (y = ax + b))。然而,图像、语音、自然语言等复杂任务难以用简单公式描述。于是,科学家提出了神经网络------一种通用的、可学习的数学结构。

万能近似定理 指出:一个前馈神经网络,只要具有足够多的神经元,就能以任意精度逼近任何连续函数。这使神经网络成为"万金油"公式。

1.3 单个神经元的形式化定义

一个人工神经元模拟生物神经元的基本行为:

z = \\sum_{i=1}\^{n} w_i x_i + b = \\mathbf{w}\^\\top \\mathbf{x} + b \] \[ a = f(z)

  • (x_i):输入信号(可以来自原始数据或上一层的输出)
  • (w_i):权重,决定输入的重要性
  • (b):偏置,允许激活函数横向平移
  • (f(\cdot)):激活函数,引入非线性

常见激活函数

  • ReLU:(f(z) = \max(0, z)) (最常用)
  • Sigmoid:(f(z) = \frac{1}{1+e^{-z}}) (输出可视为概率,但易饱和)
  • Tanh:(f(z) = \frac{e^{z}-e^{-z}}{e^{z}+e^{-z}}) (零中心,比 Sigmoid 稍优)

1.4 多层神经网络与深度

多个神经元组成 ,多层堆叠形成深度神经网络。一个典型的前馈全连接网络包含:

  • 输入层:接收原始数据
  • 隐藏层:中间层,进行特征提取与变换
  • 输出层:产生最终预测(如分类概率)

当隐藏层数超过 5 层时,通常称为深度学习 。深度的核心优势在于分层特征提取:浅层学习简单模式(边缘、纹理),深层组合为复杂语义(物体、场景)。

1.5 补充案例:手动设计参数(非学习方式)

本案例来自原始讲义,用于说明参数设计比公式设计更难。

假设我们想让神经网络检测图像中的边缘,可以尝试手动设计第一层隐藏层的参数。设输入向量 (\mathbf{x}) 长度为 784(28×28 图像展平),我们希望隐藏层向量 (\mathbf{z}) 的每个元素为相邻像素的差值:(z[i] = x[i] - x[i+1])。这等价于设置权重 (w_i = 1),(w_{i+1} = -1),其余权重为 0,偏置为 0。例如:

z_0 = 1 \\cdot x_0 + (-1) \\cdot x_1 + 0 \\cdot x_2 + \\dots

这种手工设计虽然直观,但无法泛化到复杂任务。这正是需要机器学习自动确定参数的原因。


第二部分:线性分类完整案例(鳄鱼 vs 蛇)

本案例来自原始讲义,完整呈现了从随机初始化到迭代优化的全过程,是理解梯度下降和损失函数的极佳示例。

2.1 数据集

以下为 16 种鳄鱼和蛇的身长(米)与体重(公斤)数据:

动物 身长 (x) 体重 (y) 类别
扬子鳄 2.5 45 鳄鱼
直布罗陀鳄鱼 5 225 鳄鱼
森林鳄 6 420 鳄鱼
马来鳄 6 550 鳄鱼
奥里诺科鳄 4 225 鳄鱼
尼罗鳄 5 300 鳄鱼
美洲鳄 5.5 500 鳄鱼
盐水鳄 5.5 400 鳄鱼
眼镜王蛇 4 8
非洲岩蟒 7 70
网纹蟒 8 60
印度蟒 6 50
亚马逊绿水蟒 10 270
缅甸蟒 6 90
紫晶蟒 5 100
水蟒 8 200

任务:使用线性模型 (y = ax + b) 将两类动物分开(即直线的一侧为鳄鱼,另一侧为蛇)。

2.2 初始参数与误差计算

随机初始化 (a = 3, b = -5)。对于每个点,计算 (3x - 5 - y),并取平方作为该点的误差。例如:

  • 扬子鳄:(3 \times 2.5 - 5 - 45 = -42.5),平方 = 1806.25
  • 眼镜王蛇:(3 \times 4 - 5 - 8 = -1),平方 = 1

全部计算结果如下表:

动物 (3x-5-y) 平方误差
扬子鳄 -42.5 1806.25
直布罗陀鳄鱼 -225 50625
森林鳄 -420 176400
马来鳄 -550 302500
奥里诺科鳄 -218 47524
尼罗鳄 -300 90000
美洲鳄 -488.5 238632.25
盐水鳄 -488.5 238632.25
眼镜王蛇 -1 1
非洲岩蟒 -41 1681
网纹蟒 -41 1681
印度蟒 -37 1369
亚马逊绿水蟒 -270 72900
缅甸蟒 -90 8100
紫晶蟒 -100 10000
水蟒 -200 40000
总误差 1,136,019.75

2.3 迭代优化过程

使用梯度下降调整 ((a, b)),依次尝试多组参数,总误差变化如下:

(a, b) 总误差
(3, -5) 1,136,019.75
(9, 1) 888,195.75
(15, 7) 697,809.75
(21, 13) 564,861.75
(27, 19) 489,351.75
(33, 25) 471,279.75
(22, 89) 453,488.00
(9, 165) 447,527.75
... 持续下降

可见,通过不断调整参数,总误差逐渐减小,模型分类能力逐步提升。


第三部分:以 MNIST 手写数字识别为例

3.1 MNIST 数据集

MNIST(Mixed National Institute of Standards and Technology database)是手写数字识别的经典基准数据集:

  • 规模:70,000 张灰度图像,28×28 像素
  • 划分:60,000 张训练,10,000 张测试
  • 内容:每张图像包含一个手写数字(0--9)

3.2 网络结构与参数计算

一个用于 MNIST 的典型三层全连接网络结构如下:

输入维度 输出维度 参数公式 参数数量
输入 → 隐藏层1 784 784 (784 \times (784+1)) 615,440
隐藏层1 → 隐藏层2 784 28 (28 \times (784+1)) 21,980
隐藏层2 → 输出层 28 10 (10 \times (28+1)) 290
总计 637,710

该参数规模远超手工所能调节的范畴,必须依赖计算机自动学习。

3.3 Softmax 与概率输出

输出层的原始值(logits)通过 Softmax 函数 转换为概率分布:

p_k = \\frac{e\^{z_k}}{\\sum_{j=0}\^{9} e\^{z_j}}, \\quad k = 0,1,\\dots,9

Softmax 确保所有输出概率非负且和为 1,因此 (p_k) 可直接解释为输入图像属于数字 (k) 的置信度。

3.4 损失函数:交叉熵的具体数值例

本案例来自原始讲义,展示交叉熵损失如何随预测概率变化。

假设正确答案是数字"3"(one‑hot 编码中只有第3位为1,其余为0)。模型输出两组不同的概率分布:

  • 第一组 :(p_3 = 0.91),其他均为 0.01

    损失 = (-\ln(0.91) \approx 0.0943)

  • 第二组 :(p_3 = 0.41),其他分布较散

    损失 = (-\ln(0.41) \approx 0.8916)

结论:模型对正确答案越自信(概率越接近1),交叉熵损失越小。

一般形式的交叉熵损失(one‑hot 标签)为:

L = -\\sum_{c=0}\^{9} y_c \\ln(p_c) = -\\ln(p_{\\text{true}})


第四部分:训练机制------机器学习如何学习

4.1 训练流程

机器学习通过数据自动确定模型的最优参数。标准训练流程如下:

  1. 随机初始化所有参数(权重 (w) 和偏置 (b)),常用 He / Xavier 初始化。
  2. 前向传播:将一批训练数据输入网络,逐层计算,得到预测输出。
  3. 计算损失:使用损失函数(如交叉熵)评估预测与真实标签的差距。
  4. 反向传播 :从输出层向输入层逐层计算损失对每个参数的偏导数。这是利用链式法则高效计算梯度的关键算法。
  5. 梯度下降 :根据梯度方向更新参数,使损失减小: [ w_{\text{new}} = w_{\text{old}} - \eta \frac{\partial L}{\partial w} ] 其中 (\eta) 是学习率,控制每一步的步长。
  6. 重复步骤 2--5,直到损失收敛或达到预设迭代次数。

实际训练中常用小批量梯度下降:每次随机抽取一个小批量样本计算梯度,兼顾效率与稳定性。

4.2 梯度下降的直观理解

将损失函数视为一个地形曲面,参数为曲面上的坐标。梯度指向曲面最陡的上升方向。沿着梯度的反方向移动,相当于下坡,最终到达一个局部最低点。学习率决定每一步迈出多远------太大可能越过谷底,太小收敛缓慢。

4.3 补充案例:Next Token Prediction(语言模型训练)

本案例来自原始讲义,展示大语言模型的基本训练方式。

输入前缀:"刷新100米自由泳世界纪录!潘展乐为"

期望输出(Ground Truth):"中国泳军拿下首金!46秒40!北京时间8月1日凌晨..."

模型的任务是预测下一个字符(或子词)。这可以看作一个超大规模分类问题:类别数 = 字典大小(如 30,000 或 50,000)。训练时,模型输出每个可能下一个字符的概率,计算交叉熵损失(真实下一个字符的概率越高,损失越小),然后反向传播更新参数。

这一范式被称为 Next Token Prediction,是 GPT 系列模型训练的核心。


第五部分:深度神经网络的主流架构

随着网络加深,简单的全连接网络面临参数爆炸、梯度消失、难以捕捉空间或时间结构等问题。研究者针对不同数据类型开发了专用架构。

5.1 深度全连接网络(DNN)

最基础的深度网络仍由全连接层堆叠而成。优点是理论表达能力最强,缺点是参数量大、缺乏对数据结构的归纳偏置。适用于结构化表格数据,但不适合图像或长序列。

5.2 卷积神经网络(CNN)

卷积神经网络 专为图像等网格状数据设计,核心创新:

  • 局部感知:每个神经元只响应输入的一个局部区域(感受野),模仿视觉皮层的分层抽象。
  • 权重共享:同一个卷积核在整个输入上滑动,使用相同的权重,极大减少参数量。
  • 池化层:通过最大池化或平均池化降低空间维度,增强平移不变性。

典型结构:卷积层 → 激活函数 → 池化层 → ... → 全连接层。

里程碑模型

  • AlexNet(2012 ImageNet 冠军):首次引入 ReLU、Dropout 和 GPU 并行训练,引爆深度学习浪潮。
  • ResNet(2015):通过残差连接实现 152 层网络(详见 5.5)。

5.3 循环神经网络(RNN)及其变体

循环神经网络 用于处理序列数据(文本、语音、时间序列)。其核心是隐藏状态 (h_t),它随时间步传递历史信息: [ h_t = \tanh(W_{xh} x_t + W_{hh} h_{t-1} + b_h) ]

但传统 RNN 存在严重的梯度消失/爆炸问题,难以捕捉长距离依赖(例如句子开头的名词与末尾的动词的一致性)。

LSTM(长短期记忆网络) 通过三个门控单元解决该问题:

  • 遗忘门:决定丢弃多少旧记忆
  • 输入门:控制新信息的写入量
  • 输出门:调节记忆对当前输出的影响

GRU(门控循环单元) 是 LSTM 的简化版,将遗忘门和输入门合并为更新门,结构更精简,训练更快,性能相近。

5.4 Transformer 与自注意力机制

Transformer 完全摒弃了循环结构,基于自注意力机制 实现序列建模。自注意力允许序列中任意两个位置直接交互,并支持全并行计算,极大提升了训练效率。

自注意力计算: [ \text{Attention}(Q,K,V) = \text{softmax}\left(\frac{QK^\top}{\sqrt{d_k}}\right)V ]

  • (Q, K, V) 由输入序列经过线性变换得到
  • 缩放因子 (1/\sqrt{d_k}) 防止内积过大

Transformer 由编码器解码器堆叠而成(通常各 6 层),每个编码器/解码器包含多头自注意力和前馈网络,并带有残差连接与层归一化。

Transformer 是现代大语言模型(GPT-4、LLaMA、BERT)的基石。

5.5 ResNet 与残差学习

残差网络 通过跳跃连接将输入直接跨层传递到输出,使网络学习残差映射 (F(x) = H(x) - x) 而非完整映射 (H(x))。残差块的形式: [ H(x) = F(x) + x ]

为何有效

  • 跳跃连接为反向传播提供了"梯度高速公路",让梯度能直接从深层流回浅层,避免连乘衰减。
  • 如果理想映射是恒等映射,网络只需将 (F(x)) 逼近 0,这比直接学习 (H(x)=x) 容易得多。

ResNet 使得训练 152 层的网络成为可能,并在图像分类、目标检测等领域取得突破。


第六部分:深度神经网络的训练难题与解决方案

问题 描述 常用解决方案
梯度消失 反向传播时梯度逐层衰减,浅层参数几乎不更新 He/Xavier 初始化、批归一化、ReLU 激活函数、残差连接
梯度爆炸 梯度指数级增长,导致参数不稳定 梯度裁剪、恰当的初始化
网络退化 过深的网络训练误差反而高于较浅的网络 残差学习(ResNet)、恒等映射跳跃连接
过拟合 模型在训练集表现极好,测试集表现差 数据增强、Dropout、L1/L2 正则化、早停

6.1 梯度消失/爆炸的数学成因

在反向传播中,梯度流动涉及多个激活函数导数与权重矩阵的连乘。若激活函数导数 (f'(z)) 在大部分区域小于 1(如 Sigmoid 最大为 0.25),且权重的范数也小于 1,则连乘结果指数衰减至 0(消失);若大于 1,则指数增长(爆炸)。ReLU 在正半轴导数为 1,能缓解消失,但仍需配合适当的初始化(如 He 初始化)。

6.2 批归一化

批归一化(Batch Normalization)对每一层的输入进行标准化(减均值除方差),使每一层的分布保持稳定。这能平滑梯度流,允许更大的学习率,并起到一定的正则化作用。


第七部分:总结与展望

  • 模型 是带参数的数学函数,神经网络提供了一种通用的函数形式。
  • 机器学习 通过反向传播和梯度下降自动学习参数,无需手工设计特征。
  • 深度神经网络 通过增加层数实现分层特征提取,显著提升了图像、语音、自然语言等复杂任务的性能。
  • 主流架构
    • CNN:利用局部连接和权重共享处理图像。
    • RNN/LSTM/GRU:通过隐藏状态和门控机制处理序列。
    • Transformer:基于自注意力,实现全并行序列建模。
    • ResNet:使用残差连接解决深度退化问题。
  • 训练挑战:梯度消失/爆炸、退化、过拟合等已有成熟应对方案。

随着算力提升与数据规模扩大,神经网络正朝着更高效率、更强泛化、更低能耗的方向演进(如混合专家模型、模型蒸馏、自监督学习)。然而,本文所介绍的基础概念------模型、参数、损失函数、梯度下降------始终是理解一切机器学习方法的基石。


附录

附录 A:术语表(中英文对照)

中文 英文 简要解释
模型 Model 带有参数的数学函数
参数 Parameter 可学习的权重 (w) 和偏置 (b)
神经网络 Neural Network 多层神经元组成的计算图
深度神经网络 Deep Neural Network (DNN) 具有多个隐藏层的神经网络
激活函数 Activation Function 引入非线性的函数,如 ReLU、Sigmoid
损失函数 Loss Function 衡量预测与真实值的差距
交叉熵损失 Cross-Entropy Loss 分类任务中最常用的损失函数
梯度下降 Gradient Descent 沿梯度反方向更新参数的算法
学习率 Learning Rate 梯度下降的步长
反向传播 Backpropagation 高效计算梯度的算法
过拟合 Overfitting 训练集表现好,测试集表现差
正则化 Regularization 防止过拟合的技术(L1/L2, Dropout)
卷积神经网络 Convolutional Neural Network (CNN) 用于图像数据的专用网络
循环神经网络 Recurrent Neural Network (RNN) 用于序列数据的网络
长短期记忆网络 Long Short-Term Memory (LSTM) 带门控机制的 RNN 变体
门控循环单元 Gated Recurrent Unit (GRU) LSTM 的简化版本
Transformer Transformer 基于自注意力的序列模型
残差网络 Residual Network (ResNet) 使用跳跃连接的深度网络
跳跃连接 Skip Connection / Shortcut 跨层直接传递信息的连接
梯度消失 Vanishing Gradient 反向传播中梯度趋近于 0
梯度爆炸 Exploding Gradient 梯度指数级增长
批归一化 Batch Normalization 标准化各层输入以稳定训练
Dropout Dropout 训练时随机丢弃神经元

附录 B:核心公式汇总

  1. 神经元计算

    z = \\mathbf{w}\^\\top \\mathbf{x} + b, \\quad a = f(z)

  2. ReLU 激活函数

    \\text{ReLU}(z) = \\max(0, z)

  3. Softmax 函数

    p_k = \\frac{e\^{z_k}}{\\sum_{j} e\^{z_j}}

  4. 交叉熵损失(one‑hot 标签)

    L = -\\ln(p_{\\text{true}})

  5. 梯度下降更新

    w \\leftarrow w - \\eta \\frac{\\partial L}{\\partial w}

  6. 残差块

    H(x) = F(x) + x

  7. 自注意力机制

    \\text{Attention}(Q,K,V) = \\text{softmax}\\left(\\frac{QK\^\\top}{\\sqrt{d_k}}\\right)V

附录 C:MNIST 网络参数详细计算表(637,710)

输入维度 输出维度 参数公式 参数数量
输入 → 隐藏层1 784 784 (784 \times (784+1)) 615,440
隐藏层1 → 隐藏层2 784 28 (28 \times (784+1)) 21,980
隐藏层2 → 输出层 28 10 (10 \times (28+1)) 290
总计 637,710

附录 D:梯度消失/爆炸的链式连乘说明

以三层网络为例,损失 (L) 对第一层权重 (W^{(1)}) 的梯度为:

\\frac{\\partial L}{\\partial W\^{(1)}} = \\left\[ \\text{diag}(f'(z\^{(3)})) W\^{(3)} \\right\] \\left\[ \\text{diag}(f'(z\^{(2)})) W\^{(2)} \\right\] \\frac{\\partial L}{\\partial a\^{(3)}} \\cdot \\frac{\\partial a\^{(1)}}{\\partial W\^{(1)}}

若 (| \text{diag}(f'(z)) W | < 1),连乘导致梯度消失;若大于 1,则爆炸。ReLU 在正半轴 (f'(z)=1),配合 He 初始化可以保持范数稳定。

附录 E:重要概念补充说明

  • 学习率调度:训练过程中动态降低学习率(如余弦退火、分段常数衰减)有助于更好收敛。
  • 优化器变体:Adam、RMSProp 等自适应学习率方法改进了基本梯度下降。
  • 数据增强:对图像进行随机旋转、裁剪、颜色抖动等操作,生成更多训练样本以减轻过拟合。
  • 卷积层与池化层的区别:卷积层有可学习的权重,池化层无权重,仅作下采样。

参考文献与推荐阅读

  1. LeCun, Y., Cortes, C., & Burges, C. J. (1998). The MNIST database of handwritten digits.
  2. Krizhevsky, A., Sutskever, I., & Hinton, G. E. (2012). ImageNet classification with deep convolutional neural networks. NeurIPS.
  3. Hochreiter, S., & Schmidhuber, J. (1997). Long short-term memory. Neural Computation.
  4. Vaswani, A., et al. (2017). Attention is all you need. NeurIPS.
  5. He, K., Zhang, X., Ren, S., & Sun, J. (2016). Deep residual learning for image recognition. CVPR.
  6. Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning. MIT Press.
  7. Nair, V., & Hinton, G. E. (2010). Rectified linear units improve restricted Boltzmann machines. ICML.

我将缺失的"LLM运行模式"作为独立一章,补充进之前的完整文章中。


第八部分:走向通用智能------大语言模型(LLM)的运行模式

上一章节,我们通过"鳄鱼 vs 蛇"的线性回归案例和小型全连接网络(MLP),完整走通了机器学习的基本流程:定义模型 → 前向传播 → 计算损失 → 反向传播 → 梯度下降。这些基础原理,同样构成理解 GPT、Claude、DeepSeek 等当代大语言模型(Large Language Model, LLM)的底层框架 。不同之处在于,LLM 将数据从"身长体重"换成了"整个互联网的文本",同时解决了三个更深层次的问题:理解长上下文高效生成新文本 以及对齐人类的交互意图

8.1 核心理念:自回归生成与 next‑token prediction

与之前 MNIST 数字识别的"十选一"静态分类不同,LLM 擅长处理变化长度的序列数据。它的核心原理是**"猜下一个字"**:自动预测段落中合理的下一个字。

这并非通过查字典实现,而是通过大量的训练,让 LLM 学会从上下文中寻找复杂的数学-语义规律,进而推断出下一个最可能出现的词汇,这便是文本生成任务背后的"next‑token prediction"范式。

技术上,LLM 运行的精确术语是自回归生成(Autoregressive Generation):模型每次只生成一个 token(一个单词或一个子词),然后将新生成的 token 追加到输入序列的末尾,作为生成下一个 token 的"上文",如此循环往复,直到生成一个完整的回答或达到停止条件【6†L33-L34】。

🔬 深入理解:从统计规律到智能涌现

这种"猜词"能力的本质,是模型在训练阶段学习了海量人类文本(数万亿 token)的统计规律与隐含逻辑。它并非简单记忆下一个词是什么,而是根据"问题 + 已生成内容"的动态上下文,计算概率分布:前几个字可能率性而为,但一旦话题确定,接下来的用词和逻辑就需严格"紧扣主题"。

这种从海量文本统计中涌现出逻辑推断、知识回忆、甚至思维链的现象,构成了我们今天看到的大语言模型的通用智能基础。

8.2 如何训练新一代大语言模型?

LLM 的构建并非一蹴而就。为了让一个只会"拼单词"的原始模型,进化为一个能遵循指令、有安全边界的智能助手,工业界通常采用三阶段训练流程

  • 阶段一:基础预训练(Pre‑training)

    • "填鸭式"海量文本学习:收集来自互联网、书籍、论文等海量的原始文本,让模型在"无监督"状态下进行 next‑token prediction。在这个阶段,模型掌握语法、事实知识和推理能力,成为一个"通用语言模型"。
    • 本文第一部分介绍的神经网络前向传播、反向传播与梯度下降原理,在这一规模上被并行化应用于万亿级别的参数(如 GPT‑4 的 1.8 万亿参数)。
  • 阶段二:监督微调(Supervised Fine-Tuning, SFT)

    • 工业化应用的关键:为了让模型理解并执行"写一首诗"、"总结文章"等指令,或学会多轮对话的格式,需要使用"输入-输出"对(类似 Q&A 对话数据)进行有监督的微调。
    • 这一阶段将"词频统计器"初步转变为"懂指令的 ChatBot"。
  • 阶段三:人类反馈强化学习(Reinforcement Learning from Human Feedback, RLHF)

    • 最后的"价值观对齐":为了让模型回答更符合人类偏好,同时规避有害信息,RLHF 利用用户反馈对模型输出进行排序打分,使用强化学习算法优化模型,使其倾向于生成更受欢迎的回复。

💡 总结 :这三个阶段共同造就了 ChatGPT。预训练提供了"知识储备",SFT 教会模型"如何回应",而 RLHF 则确保了模型"懂得什么话该说,什么不该说"

8.3 推断:LLM 如何选择下一个 token?

当模型训练完毕后,在真实的对话推断(Inference)环境中,模型输出的是一个涵盖所有词汇的概率分布。如何从这个分布中抽取确定的一个 token 来生成最终答案呢?

现代 LLM 利用解码策略(Decoding Strategy) 来控制标准,从而在"创造力"与"保守性"之间取得平衡:

  • 贪婪搜索(Greedy Search):每次都 100% 选择概率最高的词汇。这种选择确定性极高,但容易导致输出单调、重复或陷入逻辑死循环。
  • 随机采样(Random Sampling):根据概率分布抽签,让模型有机会"跳出舒适区",探索概率较低的优质词汇。
  • Top‑k 采样:限定仅从概率最高的前 k 个词汇中抽签,过滤掉那些极低概率的胡言乱语(如 Top‑k=50 时,不论概率分布多广,模型只在前 50 强中选)。
  • Top‑p 采样(核采样):一种更灵活的采样方式,动态选择概率之和超过阈值 p 的最小词汇集合,再从中采样。
  • 温度调节(Temperature) :一个平滑因子,温度参数直接对底层的 logits 逻辑值进行"缩放",温度 = 0 时等价于贪婪选择,值越高,概率分布被拉得越平,模型的"脑洞"就越大。

在实际的中文互联网应用中,绝大多数的对话场景会动态混合使用 Top‑pTemperature 的组合,控制模型在文本生成时的"自由发挥"程度。

8.4 为什么 LLM 能看得懂上文?------ 详解除以 Transformer 为核心的 LLM 架构

尽管 GPT 系列的参数达到万亿级别,结构极其复杂,但从抽象的底层逻辑看,它依然遵循 多层解码器(Decoder‑Only) 的架构,由大量堆叠的、结构相同的Transformer 块组成。

我们会通过一个具体的例子,理解它是如何处理一段话的:

场景: 我们输入一个不完整的句子 "天空非常......" ,LLM 需要根据前文预测大概率的下一个词是正确的 "蓝" 而非 "硬"

处理步骤:

  • 步骤 1:分词与向量化(Tokenization & Embedding)

    • 大语言模型无法直接看汉字,会将输入文本切分为 token(子词单元)。例如:["天空", "非常", "......"] 被映射为高维空间的向量。
    • 模型还会加入位置编码(Positional Encoding) ,让模型感知词汇的前后顺序,否则模型会认为 ["非常", "天空"] 与输入等价。
  • 步骤 2:堆叠的解码器(Stacked Decoders)

    • 切分后的向量会依次流入堆叠的 N 层解码器(如 GPT‑3 有 96 层)进行深度特征提取。这也是完成下一词预测的核心环节,通过 多头掩码自注意力机制(Masked Multi-Head Self-Attention) 与前馈神经网络共同协作:
      1. 掩码自注意力层 :让模型在预测下一个词时,只能关注到当前词以及之前的所有词 ,而无法"偷看"后面的词语。比如预测"......非常的"的后半截,"蓝" 必须与前文的 "天空" 建立强关联。
      2. 注意力机制:具体的计算公式为 Attention(Q,K,V) = softmax((QK^T)/√d_k) * V,其中 Q、K、V 分别代表查询、键和值。这种机制可以被通俗地理解为**"阅读理解"**:计算每个 token 与其他所有相关 token 的匹配程度,找出逻辑上真正相关的关键信息。
      3. 前馈神经网络(Feed-Forward Network, FFN):该网络对注意力层筛选出的信息进行复杂的非线性处理,本质是一个"知识存储与特征转换"的模块,提取逻辑关系并准备生成输出。
  • 步骤 3:最终的输出生成(Output Generation)

    • 最后一层解码器输出的最终向量,会被传入 Softmax 层(与我们之前在 MNIST 分类案例中使用的机制原理相同),生成一个覆盖全词典的概率列表,如 P("蓝") = 0.85, P("高") = 0.1, P("轻") = 0.04 等。
    • 此时,系统会自动调用第 8.3 节中介绍的 解码与采样策略(贪婪、Top‑p 等) ,从中抽取一个 token(例如抽中了 "蓝"),确认最终的输出判定。

通过上述拆解,我们得以发现:尽管 GPT 的参数量达到了万亿级别,其数百层的"掩码自注意力"流程极其复杂,但从数学原理和模型结构 的底层逻辑来看,它并没有脱离前文介绍的神经网络基础架构

它仍然是那个"万能公式"------输入一串可以无限长的序列向量,通过海量的矩阵运算(计算量大幅提升),输出下一个单词的概率分布。所依赖的训练方式,仍然是前文的核心------前向传播、计算损失、梯度下降反向传播的大规模并行版本 。它是在此基础上,通过堆叠深度、引入掩码自注意力机制 ,并经历了预训练、SFT、RLHF 三阶段范式,才从基础的"单词统计器"淬炼为了当下的"通用人工智能引擎"。


参考文献与推荐阅读(本章节)

  1. Vaswani, A., et al. (2017). Attention is all you need. NeurIPS.
  2. Radford, A., et al. (2019). Language Models are Unsupervised Multitask Learners. (GPT-2).
  3. Brown, T. B., et al. (2020). Language Models are Few-Shot Learners. (GPT-3). NeurIPS.
  4. Ouyang, L., et al. (2022). Training language models to follow instructions with human feedback. (InstructGPT). arXiv.
  5. Rae, J. W., et al. (2021). Scaling Language Models: Methods, Analysis & Insights from Training Gopher. DeepMind.

文档版本 :4.0(补充 LLM 运行模式章节)
最后更新 :2026年4月
适用范围:机器学习与深度学习入门课程、自学笔记、教学辅助材料

您说得对,"高维"对于初学者来说确实是一个抽象概念,需要更直观的解释。以下我将补充一节 "什么是高维向量------从三维空间到千维空间",可以插入到 LLM 运行模式章节中(例如在 8.1 之后或作为独立附录)。内容保持通俗、有比喻、有例子,同时不丢失专业术语。


插曲:什么是"高维向量"?------从你熟悉的三维空间说起

在理解神经网络(尤其是大语言模型)时,你可能会频繁遇到"高维向量"、"嵌入空间"、"向量化"等术语。很多初学者会被"高维"这个词吓到,误以为需要理解四维以上的几何。其实,我们可以用非常简单的类比来理解。

1. 从三维坐标说起

你已经在中学数学中接触过三维空间:

  • 一个点可以用 (x, y, z) 三个数字表示,比如 (1, 2, 3)
  • 这三个数字就是维度。三维空间中,每个点有 3 个独立的坐标值。

在机器学习中,我们经常需要用一组数字来描述一个事物。例如:

  • 描述一个人:身高(cm)、体重(kg)、年龄(岁) → 三维向量 (175, 65, 25)
  • 描述一张手写数字图片:28×28 像素 → 784 个灰度值 → 784 维向量

关键点:维度就是"描述一个事物需要多少个独立的数字"。

2. 为什么需要几百甚至几千维?

低维度(例如 2 维、3 维)只能表达非常简单的信息。要区分一只猫和一只狗,仅用身长和体重往往不够(鳄鱼和蛇的例子就是 2 维,容易重叠)。但如果增加"耳朵长度、胡须数量、瞳孔形状"等几十个特征,就能更精确地区分。

在实际的深度学习中,我们并不手工设计这些特征,而是让神经网络自动学习。但为了让网络有足够的"表达空间",我们需要将输入映射到高维空间 (例如 256 维、768 维、4096 维)。在高维空间中,原本难以区分的数据可以被"拉伸"成容易分离的形状------这被称为维度诅咒的反面:高维空间拥有更强的表示能力

比喻:低维空间像一张白纸,你只能画简单的线条。高维空间像一个巨大的工具箱,里面有成千上万个"旋钮",你可以精细地调整每一条信息。虽然我们人类无法想象 768 维的空间,但数学上完全可以处理:无非就是 768 个数字排成一列。

3. 神经网络中的高维向量是如何产生的?

以 GPT 为例,输入文本被切分成 token(例如"天空")。模型不会直接使用"天空"这两个字,而是将它映射为一个高维向量 ,比如一个 768 维的浮点数列表:[0.12, -0.34, 0.56, ..., 0.78]。这个过程称为嵌入(Embedding)

这个向量并不是随机的,它是在训练过程中通过预测下一个词的任务逐渐学习出来 的。相似的词(如"天空"和"蓝天")在向量空间中会彼此靠近,不相关的词(如"天空"和"汽车")会远离。数学家称这种空间为嵌入空间表示空间

专业术语:词嵌入(Word Embedding)、向量空间模型(Vector Space Model)、表示学习(Representation Learning)。

4. 高维计算实际上很简单

你可能担心:768 维的向量计算会不会很复杂?其实,任何维度的向量计算都遵循相同的规则:

  • 加法:对应位置相加
  • 点积(内积):对应位置相乘再求和
  • 线性变换:乘以一个 768 × 768 的矩阵

这些操作都可以通过计算机并行完成,对电脑来说,处理 768 维和 3 维的难度几乎没有本质区别(只是多做一些乘加运算)。我们人类不需要"想象"768 维空间,只需要理解数学规则即可。

5. 小结

关键词 通俗解释
维度 描述一个事物所用的数字个数
低维 如二维平面、三维空间,容易想象但表达能力有限
高维 成百上千个数字,虽然无法想象,但数学处理很简单
嵌入向量 将原始数据(词、图片)转换为一串高维数字
嵌入空间 所有向量的集合,相似的向量在空间中距离近

一句话记住:高维就像给每个事物一张超长的"属性清单",计算机通过比较这些清单(向量)来做判断。你不需要想象清单长什么样子,只需要知道清单上的数字可以参与数学运算。


相关推荐
AI攻城狮5 小时前
DeepSeek 的 Vision 能力要来了吗?
人工智能·后端·openai
xiezhr7 小时前
别被AI吓到了,一文看懂AI到底是啥?
人工智能·llm·openai
AI攻城狮1 天前
CLAUDE.md 的最佳实践:为什么你的配置文件基本上是废的
人工智能·后端·openai
晴殇i1 天前
前端混合状态管理架构:Redux Toolkit + Zustand 协同设计、规范落地与性能优化
前端·openai
何雷 — 智能网联汽车1 天前
Harness Engineering学习一 —— 基本概念
langchain·openai·harness·智能体编程·ai驱动编程
今夕资源网1 天前
LM Studio API 对接测试诊断程序 OpenAI 兼容接口 API通讯检测工具
openai·ai工具·lm studio·lmstudio·openai接口测试·openai接口·openai对接工具
XinZong2 天前
【AI社交Skill】禁止人类发言”的AI闭环社交社区_ 到底什么是 clawreach 虾聊?
aigc·openai·ai编程
沸点小助手2 天前
「节前摸鱼实录 & AI 抢我饭碗的瞬间」沸点获奖名单公示|本周互动话题上新🎊
openai·沸点
Carson带你学Android2 天前
谁才是地表最强 Android Agent 大模型?Google官方测评来了!
android·openai