N-Gram
马尔科夫假设:
一个词的出现仅仅依赖于它前面出现的有限的一个或几个词。
N-Gram模型用于中文,称为汉语语言模型CLM。
该模型基于这样的假设,第n个词的出现只与前面N-1个词相关,而与其他任何词都不相关,整句话的概率就是各个词出现概率的乘积。这些词的概率可以通过直接从语料库中统计N个词同时出现的次数得到。
假设语句T是由词序列W1,W2,W3,…Wn组成的,那么
P(T)=P(W1W2W3Wn)=P(W1)P(W2|W1)P(W3|W1W2)…P(Wn|W1W2…Wn-1)
这种方法的缺点:
(1)参数空间过大,不容易实用化。
(2)数据稀疏严重。
通过最大似然估计得到P(Wn|W1W2…Wn-1),即:
P(Wn|W1W2…Wn-1) = (C(W1 W2…Wn))/(C(W1 W2…Wn-1)),即统计序列C(W1 W2…Wn) 出现的次数和C(W1 W2…Wn-1)出现的次数。
Bi-Gram
假设:一个词的出现仅依赖于它前面出现的一个词,称之为bigram。
P(T) = P(W1W2W3…Wn)=P(W1)P(W2|W1)P(W3|W1W2)…P(Wn|W1W2…Wn-1)
≈P(W1)P(W2|W1)P(W3|W2)…P(Wn|Wn-1)
计算概率P(T)时,需要有词和词频表、词序列频度表。当词数很多时,词的个数=词序列个数。