从词向量到大模型:NLP 技术演进浅记

发布时间:2026/6/25 23:05:21
从词向量到大模型:NLP 技术演进浅记 斋藤康毅的《深度学习入门》介绍了最基础的深度学习知识感知机、激活函数、损失函数、误差反向传播、超参数、正则化、CNN、深层网络。这本《深度学习进阶》则是在深层网络基础上继续前行聚焦于自然语言处理领域重点围绕两大核心内容展开(1)词的分布式表示即 embedding——用一组浮点数向量代表一个词的含义(2)序列生成。从词的分布式表示到序列生成再到现代大模型架构可清晰看到一条完整的技术演进脉络。1. 书内内容1.1 同义词作为词义表达的基础方式其概念早于现代 NLP20 世纪 50 年代随着自然语言处理领域萌芽开始最初通过同义词互释的方式表达词义为后续词的向量表示奠定基础核心是通过相似语义关联理解词的含义。1.2 上下文共现词的概率统计PPMI基于共现矩阵与点互信息PMI。正点互信息 PPMI 于 1990 年代在 NLP 中逐步成熟基于一个词的含义可由其周围的上下文词决定这一核心概念通过统计目标词与上下文词的共现概率结合 PPMI 处理得到词的分布式表示属于传统的词向量构建方法。1.3 上下文的神经网络学习word2vec2013 年提出的 word2vec本质是单层隐层的神经网络分为 CBOW 和 Skip-gram 两种模式仅包含两个权重矩阵——输入侧权重矩阵词表大小×嵌入维度和输出侧权重矩阵嵌入维度×词表大小。多个上下文词共享同一输入权重矩阵其输入经求和/平均后传入隐层训练完成后输入侧权重矩阵即为词的 embedding。1.4 基于神经网络的长序列预测RNN循环神经网络1980s 年提出但直到 2010s 才在 NLP 领域大规模应用技术重心从词的 embedding 学习切换到序列建模与预测。word2vec 虽能实现简单预测但依赖固定大小的上下文窗口无法利用上下文之前的历史输入而 RNN 通过给每个网络单元引入前序序列的 hidden state将前序序列的信息总结并传递实现了变长序列的建模。1.5 RNN 的改进与 LSTM简单 RNN 处理长序列时极易出现梯度消失 / 爆炸难以训练。LSTM长短期记忆网络于 1997 年提出但直到 2014 年左右才流行。LSTM 在简单 RNN 基础上新增了三个门控结构——遗忘门、输入门、输出门。所谓门控是通过 sigmoid 函数计算出 0~1 之间的权重值cell state长期记忆或者 hidden state短期输出乘以该权重值。门控也是深度学习中控制信息流动的核心组件。1.6 Seq2Seq 架构于 2014 年提出以 RNN或 LSTM为基础通过堆叠形成 encoder→decoder编码器→解码器架构。早期 Seq2Seq 中encoder 将输入序列编码为一个固定维度的 hidden state再传递给 decoder相当于整个输入序列被压缩为单个 hidden state。1.7 Attention 结构2014 年提出用于解决编码器将序列压缩为单个向量导致的信息丢失问题。对 encoder→decoder 架构进行微调优化使得 encoder 将所有 hidden state 均传递给 decoder 的模式。其核心逻辑是decoder 每一步的 hidden state都会与 encoder 所有词的 hidden state 计算内积得到注意力权重经 softmax 归一化后再与 encoder 的 hidden state 做加权求和得到上下文向量然后再和 hidden state 结合后做输出。这个 Attention 和后面的 QKV 矩阵计算很像。本书内容至此结束结合后续自然语言处理技术的发展其演进脉络进一步延伸2. 书外延伸2.1 Transformer 结构2017 年在《Attention is All You Need》论文中提出基于带有 Attention 组件的 Seq2Seq 架构演进而来整体仍保留 encoder→decoder 框架但不再使用 RNN 的循环结构实现全序列并行计算而非按位置串行同时开始加深层数并且内部核心组件替换为以下关键部分•Attention 计算升级为 Multi-Head Self-Attention多头自注意力通过 Q查询向量、K键向量、V值向量三个矩阵计算实现注意力查找核心逻辑仍是先通过 Q 与 K 的内积计算注意力权重再通过权重与 V 的加权求和提取信息。与此前 Attention 的核心区别在于此前是 decoder 向 encoder 获取信息交叉注意力而 Self-Attention 是序列内部的词与词之间相互关注实现序列内部依赖关系的建模。在此基础上Transformer 引入了 Multi-Head多头机制将 Q、K、V 各自拆分为多个头head每个头独立进行注意力计算最后将所有头的输出拼接concat后通过一个线性投影合并。多头的意义在于让模型能同时从不同的表示子空间捕捉信息——例如一个头关注语法关系另一个头关注语义相似性——从而显著增强模型的表达能力。这也是后续 GQA分组查询注意力、MLA多头潜在注意力等改进的基础。•Cross-Attention交叉注意力原始 Transformer 的 Decoder 层实际上包含三个子层Masked Self-Attention → Cross-Attention → FFN。其中 Self-Attention 负责目标序列内部的建模带掩码防止看到未来的词Cross-Attention 则负责 Decoder 向 Encoder 获取信息——Q 来自 Decoder 的 Self-Attention 输出K/V 来自 Encoder 最后一层的输出本质上就是 1.7 中 Attention 结构在 Transformer 中的延续。也就是说Transformer 的 Decoder 同时包含了 Self-Attention序列内部关注和 Cross-Attention跨序列关注两种注意力机制。后续演进到 Decoder-only 架构后由于去掉了 EncoderCross-Attention 随之消失仅保留 Self-Attention。•FFN前馈神经网络计算在输出之前进行两次矩阵投影先通过上投影up-projection将特征维度提升再通过下投影down-projection将维度还原中间加入非线性激活函数增强模型的表达能力。2.2 位置编码Positional Encoding与 Transformer 同时于 2017 年提出为适配 Transformer 的并行计算特性而引入。由于 Transformer 抛弃了 RNN 的顺序输入模式采用所有词同时输入的并行方式无法天然捕捉语序信息因此需要额外为每个词添加位置标签位置编码让模型能够分辨词的顺序。其中固定正余弦编码于 2017 年提出主流的 RoPE旋转位置编码于 2021 年提出大幅提升了模型对长文本的处理能力和建模精度。2.3 归一化Normalization位置优化Post-Norm 随 2017 年 Transformer 提出Pre-Norm 思想更早在 Transformer 架构中于 2019–2020 年逐步流行。为解决极深网络的训练不稳定性问题对归一化的位置进行了调整从早期的 Post-Norm先完成层计算再进行归一化演进到如今主流的 Pre-Norm先进行归一化再执行层计算这种调整让残差不受 Norm 的影响有效缓解了深层网络的梯度消失问题保证了深层网络尤其是万亿参数级模型训练的稳定性是大模型能够落地的重要基础。