语言模型定义
语言模型是用来计算一个句子的概率的模型,也就是判断一句话是否合理的概率
N-gram模型
是一种基于统计的语言模型
基于统计概率,计算一个句子的概率大小概率的公式为:
当概率值越大,则说明句子越合理,概率小,则说明不合理
上面的公式不能直接进行计算,使用条件概率可以将上述公式转换成:
条件概率:
P(B|A)表示:A条件下B发生的概率
在条件概率的公式如下所示:
直接将计算一个句子的公式按照条件概率展开计算,即对每一个词都考虑到它前面的所有词,这在实际应用中意义不大,因此引出N-gram模型
1)马尔可夫假设
马尔可夫假设是指每个词出现的概率只跟它前面的少数几个词有关,例如,二阶马尔可夫假设只考虑前面两个词,相应的语言模型是三元模型
一元模型(unigram model):
二元模型(bigram model):
三元模型(trigram model):
2)极大似然估计
可以通过对训练语料做极大似然估计:
3)链式法则
以二元模型为例,
N-gram模型的优缺点
1)优点
训练方便,仅仅是一个统计词频的工作
2)缺点
无法获得相对较长的上下文依赖
泛化能力比较弱,只是基于频次进行统计,更多的特征信息没有学到,也没办法进行学到