n元语法模型的基本概念和常用的数据平滑方法
n元语法
对于一个由L个基元组成的句子s=w1w2w3……wl,概率计算公式可以表示为:
即,第i个词是由前面已经产生的词决定的。如果考虑所有前面已经产生的基元,计算当前基元的概率,这样会需要计算大量的先验概率。如计算第i个词的概率,在考虑前面i-1个基元的情况下,一共需要计算Li个先验概率。首先带来的问题是,需要计算大量先验概率,其次,绝大多数的前i-1个基元的组合是不会出现在训练材料中。因此,(如果将生成第i个基元需要参考的前面的基元叫做参考基元)需要减少参考基元的数量。其中第i个基元和前面的参考基元的数量之和为n,上述条件的语言模型叫做n元文法或n元语法。 其中,当n=1的时候,第i个位置的基元与前面的基元没有关系。当n=2时,叫做二元文法模型,也被称为一阶马尔科夫链。在实际应用中,取n=3的情况比较多。
对于二元文法模型,为了使p(w~i~|w~i-1~)有意义,在句首加入一个句首标记<BOS>;为了使所有的字符串的概率之和为1,需要在句末加入一个句尾标记,并使之包含在概率计算的等式中。
语言模型性能评价:暂无
数据平滑:数据平滑技术用来解决词的统计概率为零概率这种问题的。平滑处理的基本思想是“劫富济贫”,即提高低概率,降低高概率,使概率分布趋于平均。
一种最简单的平滑技术:加一法
语言模型自适应方法
语言模型一般会有跨领域的脆弱性和独立性假设的无效性问题。
跨领域的脆弱性即语言模型对训练文本的类型、主题和风格等都十分敏感,而不同领域的语料在语言使用规律上往往存在差异。
独立性假设的无效性:例如n元语言模型的前提假设为一段文本的当前词只与他前面的n-1个词相关,但这种假设在很多情况下不成立。
为了提高语言模型对语料的类型、主题、领域、类型等因素的适应性,提出了自适应语言模型。有基于缓存的语言模型、基于混合方法的语言模型和基于最大熵的语言模型。