统计语言模型

统计语言模型
   基于概率的判别模型。统计语言模型把语言(词的序列)看作一个随机事件,并赋予相应的概率来描述其属于某种语言集合的可能性。给定一个词汇集合 V,对于一个由 V 中的词构成的序列S = 〈w1, · · · , wT 〉 ∈ Vn,统计语言模型赋予这个序列一个概率P(S),来衡量S 符合自然语言的语法和语义规则的置信度。用一句简单的话说,统计语言模型就是计算一个句子的概率大小的这种模型。
基本语言模型公式:
P(w1,w2,w3…,wi)=P(w1)P(w2|w1)P(w3|w1,w2)…P(wm|w1,w2,…wi−1)
P为概率,w1为一个句子的各个单词,等式左边为一个句子在训练数据集的概率,等式右边为当前词与前面所有词都有关的概率相乘。
缺点:
1 :基本语言模型是当前词与前面所有词都有关,但是当句子过于长的时候,就会出现参数过多的问题。
2:因为概率的计算是P(BA)/P(B),当B过多的时候,会出现数据稀疏问题。因为统计类语言模型是用one—hot编码,维度表示大部分都为0,导致了大量的空间浪费
联合条件概率:P(A,B) = P(A|B)P(B) = P(B|A)P(A)
N-gram语言模型公式:
P(w1,w2,w3,…wi)= P(w1)P(w2|w1)P(w3|w1,w2)…P(wi|wi-1,wi-2),n=3
当前词与前面n-1个词有关,一般情况下n都是取3的。
缺点:
1:没有考虑词与词之间的联系性
2:数据稀疏
以上属于统计型语言模型,像RNN, LSTM, Transformer等属于神经网络型语言模型

你可能感兴趣的:(NLP自然语言处理,自然语言处理)