简介
N-gram模型是一种语言模型,即给定语料库后,向模型输入一句话,模型输出该句话符合人说的话的概率。
动机
一般情况下,计算由m个词组成的一句话符合人说话的概率为: P ( w 1 , w 2 , . . . , w m ) = P ( w 1 ) P ( w 2 ∣ w 1 ) . . . P ( w m ∣ w m − 1 , w m − 2 , . . . , w 1 ) P(w_1,w_2,...,w_m)=P(w_1)P(w_2|w_1)...P(w_m|w_{m-1},w_{m-2},...,w_1) P(w1,w2,...,wm)=P(w1)P(w2∣w1)...P(wm∣wm−1,wm−2,...,w1)
可以看出这个概率不好计算。而N-gram模型实际上提供了一种计算这个概率的简便方法,即每次词出现的概率只和前N-1个词有关系(类似于马尔可夫过程),这样的话大大简化了计算。这里以N=2为例,则概率被修改为 P ( w 1 , w 2 , . . . , w m