核心要点

  • 定义 unigram/bigram/trigram 及马尔可夫近似

  • 解释 n-gram LM 概率计算与平滑

  • 联系 perplexity 评估

  • 说明从 n-gram 到神经语言模型的演进

简要回答

n-gram 是连续 n 个 token 的片段。n-gram 语言模型 用马尔可夫假设 $P(w_t|w_{1:t-1})approx P(w_t|w_{t-n+1:t-1})$ 估计下一个词概率,是统计 LM 基础;配合平滑(Kneser-Ney)可算 困惑度

标准回答

一、先给出结论和背景

  • 定义:n-gram = 文本中长度 n 的连续词序列。unigram=词,bigram=词对,trigram=三连。
  • 语言建模:估计序列概率 $P(w_1...w_T)=prod_t P(w_t|context)$。n-gram LM 用 $(n-1)$ 阶马尔可夫近似上下文。

二、拆开关键步骤和判断点

  • 训练:统计语料中 n-gram 计数 → 最大似然 → 平滑(加一、Good-Turing、Kneser-Ney)处理零计数。
  • 贡献:1. 拼写纠错、输入法候选
  1. 机器翻译候选评分(传统 SMT)
  2. 语音识别语言模型分支
  3. 文本分类特征(bag-of-n-grams)

三、补上落地边界和取舍

回答思路

  • 【定义】用一句话说清「什么是 N 元语法?对语言建模有何贡献」

  • 【原理】讲清关键机制或步骤(2~3 点)

  • 【例子】举一个真实项目、论文或产品中的例子

  • 【对比】与易混淆概念或替代方案比较(如有)

  • 【收尾】总结适用场景 + 一个局限或风险

延伸学习

知识库:语言模型入门。术语:语言模型PerplexityBLEU

常见误区

⚠️ 常见踩坑

误区一:容易答偏的地方:不说平滑;混淆 n-gram 特征与 n-gram LM;声称 n-gram 能建模长距离依赖。

追问

追问 1Kneser-Ney 平滑解决什么问题?

普通加一平滑对「未见上下文」分配概率不合理。Kneser-Ney 用低级 n-gram 的延续概率做回退,使「Francisco」在「San」后概率高于孤立词频暗示。

追问 2字符 n-gram 有何用途?

语言识别、拼写纠错、恶意 URL/垃圾检测、形态丰富语言;对 OOV 更鲁棒,但序列更长。工程上常配合哈希特征控制维度。

追问 3Perplexity 如何解释?

模型对测试集平均「分支因子」——困惑度 100 相当于每步在 100 个等概词中猜。要与词表大小、分词方式一起看,跨模型比较需统一 tokenization

🔗 相似问题

同一考点的不同问法,换着练更稳

延伸学习

按主题分类的相关资源,便于系统复习