1、从独立性假设到联合概率链
朴素贝叶斯中使用的独立性假设为
P(x1,x2,x3,...,xn)=P(x1)P(x2)P(x3)...P(xn)(1) (1) P ( x 1 , x 2 , x 3 , . . . , x n ) = P ( x 1 ) P ( x 2 ) P ( x 3 ) . . . P ( x n )
去掉独立性假设,有下面这个恒等式,即联合概率链规则
P(x1,x2,x3,...,xn)=P(x1)P(x2|x1)P(x3|x1,x2)...P(xn|x1,x2,...,xn−1)(2) (2) P ( x 1 , x 2 , x 3 , . . . , x n ) = P ( x 1 ) P ( x 2 | x 1 ) P ( x 3 | x 1 , x 2 ) . . . P ( x n | x 1 , x 2 , . . . , x n − 1 )
其中,
xi x i 代表一个词,联合概率链规则表示句子中每个词都跟前面一个词有关,而独立性假设则是忽略了一个句子中词与词之间的前后关系。
2、从联合概率链规则到n-gram语言模型
联合概率链规则是考虑了句子中每个词之间的前后关系,即第n个词 xn x n 与前面 n−1 n − 1 个词 x1,x2,..,xn−1 x 1 , x 2 , . . , x n − 1 有关,而n-gram语言模型模型则是考虑了n个词语之间的前后关系,比如 n=2 n = 2 时(二元语法(bigram,2-gram)),第n个词 xn x n 与前面 2−1=1 2 − 1 = 1 个词有关,即
P(x1,x2,x3,...,xn)=P(x1)P(x2|x1)P(x3|x2)...P(xn|xn−1)(3) (3) P ( x 1 , x 2 , x 3 , . . . , x n ) = P ( x 1 ) P ( x 2 | x 1 ) P ( x 3 | x 2 ) . . . P ( x n | x n − 1 )
比如
n=3 n = 3 时(三元语法(trigram,3-gram)),第n个词
xn x n 与前面
3−1=2 3 − 1 = 2 个词有关,即
P(x1,x2,x3,...,xn)=P(x1)P(x2|x1)P(x3|x1,x2)...P(xn|xn−2,xn−1)(4) (4) P ( x 1 , x 2 , x 3 , . . . , x n ) = P ( x 1 ) P ( x 2 | x 1 ) P ( x 3 | x 1 , x 2 ) . . . P ( x n | x n − 2 , x n − 1 )
公式(3)(4)即马尔科夫假设(Markov Assumption):即下一个词的出现仅依赖于它前面的一个或几个词。
3、N-gram语言模型与马尔科夫假设
如果对向量 X 采用条件独立假设,就是朴素贝叶斯方法。
如果对向量 X 采用马尔科夫假设,就是N-gram语言模型。