同一句“苹果”出现在水果介绍和手机评测中,后面可能接不同的词。语言模型怎样依据前文改变预测?读完本文,可以统计简单语料中的条件概率,检查未知上下文,并解释上下文窗口的作用。
分词、词向量和主题模型分别解决不同问题。语言模型进一步关注序列:给定已出现的内容,为下一项分配概率。现代模型通常操作 token,它不一定等于汉语的一个词;先理解小例子,再看复杂模型会更清楚。
文章目录
- 同一个词,为什么会引出不同的下一句
- 核心概念与工作机制
- 最小示例
- 验证结果
- 常见误区与适用边界
- 总结
同一个词,为什么会引出不同的下一句
观察两组短句:“我喜欢学习”“我喜欢写作”“我正在学习”。当上下文只有“我”时,下一项既可能是“喜欢”,也可能是“正在”;当上下文变成“我喜欢”时,候选又变为“学习”和“写作”。预测结果依赖前文,前文越具体,候选通常越集中,但也更容易受训练数据稀疏影响。
| 已知上下文 | 观察到的后续项 | 直观问题 |
|---|---|---|
| 我 | 喜欢、正在 | 哪个出现得更多 |
| 我喜欢 | 学习、写作 | 前文增加后分布如何变化 |
| 未见过的上下文 | 无直接计数 | 如何回退或泛化 |
核心概念与工作机制
条件概率。语言模型要估计P(下一个 token | 已有上下文)。旧式 n 元模型只看有限的前几个词,容易统计却难以处理未出现的组合。神经网络语言模型把上下文表示为向量,从相似语境中归纳规律。
上下文表示。输入先经过切分和编号,再变成模型能计算的向量。上下文窗口限定一次推理可直接使用的历史范围。窗口之外的信息不会自动保留,除非应用主动摘要、检索或