词序列处理中的N - 元语法技术详解
在词序列处理领域,为了更准确地估计词序列的概率,有多种技术可供使用,下面将详细介绍线性插值、回退模型、Katz回退模型、Kneser - Ney平滑模型等方法,同时探讨工业级N - 元语法的应用以及语言模型质量的评估。
1. 可变长度N - 元语法的使用
在处理词序列时,我们常常会遇到未见过的N - 元语法,其概率估计会受到所含单词的影响。为了解决这个问题,我们引入了线性插值和回退模型这两种技术。
1.1 线性插值
线性插值,也称为删除插值,它将长度从1到n的最大似然估计进行线性组合。以三元语法为例,其计算公式为:
[P_{Interpolation}(w_n|w_{n - 2}, w_{n - 1}) = \lambda_3P_{MLE}(w_n|w_{n - 2}, w_{n - 1}) + \lambda_2P_{MLE}(w_n|w_{n - 1}) + \lambda_1P_{MLE}(w_n)]
其中,(0 \leq \lambda_i \leq 1) 且 (\sum_{i = 1}^{3} \lambda_i = 1)。这些参数值可以手动设置为常数,例如 (\lambda_3 = 0.6),(\lambda_2 = 0.3),(\lambda_1 = 0.1);也可以通过语料库进行训练和优化。
以下是使用 (\lambda_2 = 0.7) 和 (\lambda_1 = 0.3) 计算二元语法插值概率的示例表格:
| (w_{i - 1}, w_i) | (C(w_{i - 1}, w_i)) | (C(w_{i - 1})) | (P_{MLE}(w_i
超级会员免费看
订阅专栏 解锁全文
31

被折叠的 条评论
为什么被折叠?



