自回归语言建模¶
句子的数量是无穷无尽的,训练集根本无法覆盖所有可能的句子。这就需要我们找到一种方法,能够基于有限的训练数据,对无线的句子空间进行概率建模。
概率语言模型¶
语言模型的核心任务是学习人类语言的内在规律,从而呢个够准确预测单词序列的概率。
人类的语言并非单词的随机组合,而遵循着一定的潜在规则。
- 单词之间不能随意组合。
- 单词之间的组合顺序也不是一成不变的。
概率语言模型的目标是建立一个统计模型,用来计算一句话对应的次元序列 \(W = w_1 w_2 \cdots w_n\) 的概率。
通常,概率语言模型使用概率链式法则,将词元的联合概率转换成一组条件概率相乘的形式。
条件概率描述在给定当前词元之前历史词元序列条件下,产生当前词元的概率,具有自回归特性,因此将其称为自回归语言模型。
计算条件概率有两种方法:
- 直接存储条件概率数值。
- 通过函数计算得到概率数值。
N 元语法语言模型¶
N 元语法模型应用有限阶马尔可夫假设,用前面 \(N-1\) 个词元近似完整历史,并通过统计条件概率对当前词元建模。基本形式为
通常 \(N\) 的取值不会超过 3 或 4,避免维数灾难。
困惑度¶
困惑度给出一个衡量模型预测准确度的指标。
神经网络语言模型¶
单词序列中的每个单词 \(w_i\) 通过函数 \(f_e\) 映射成低维空间中的一个向量,即 \(f_e : w_i \to z_i\)。接着使用神经网络 \(f\),基于以上低维向量计算下一个词的条件概率,即:
神经网络 \(f\) 输出的实际为一个向量,维度为 \(|V|\),其中 \(f_{w_n}\) 代表输出向量中与单词 \(w_n\) 对应的数值,且满足 \(\sum_{w \in V} f_w \left(z_1, \cdots, z_{n - 1} \right) = 1\)
神经网络语言模型也可以进行自回归的文本生成。生成的过程可以写作如下形式:
GPT 系列模型¶
GPT,全称是 Generative Pre-trained Transformer。每一代都有架构和规模上的升级,从发展的角度来说,一定是逐代训练集、参数量变多,模型架构逐渐复杂。
[!note] 截止到当下的 GPT-5,模型已经榨干了互联网上所有能查询到的高质量文本。单是一个 wiki 智库,都不是几个人能读完的文本量。
GPT-1 模型¶
GPT-1 是早期具有代表性的预训练自回归 Transformer,只使用解码器结构,在序列中预测下一个词元,采用“预训练 + 微调”的应用范式。
GPT-1 模型需要针对每个下游目标任务做特定的微调训练,而微调后的模型就变成了专用模型。
GPT-2 模型¶
GPT-2 模型的主要动机是建立一个能够处理多个任务的通用语言模型。
GPT-2 以建立一个能够处理多个任务的通用语言模型为目标,在实际应用中展现出了优异的零样本学习能力。
GPT-3¶
GPT-3 带来了全新的上下文学习范式,可以在无需微调的情况下实现单样本与少样本学习,只通过阅读任务描述和少量示例,掌握新任务的求解方法。