NLP语言模型
NLP语言模型包括概率语言模型和神经网络语言模型
统计语言模型:N-gram
神经网络语言模型:word2vec,fasText,Glove
N-gram
基于概率的判别模型,输入为一句话输出为这句话的概率,即单词的联合概率
特点:某个词的出现依赖于其他若干个词,获得的信息越多预测越准确。
n-gram本身是指一个由n个单词组成的集合,各单词之间有先后顺序且不要求单词之间互不相同,一般有Bi-gram和Tri-gram
n-gram中的概率计算:假设我们有一个由n个词组成的句子S=(w1,w2,⋯,wn)如何衡量它的概率呢?我们假设每个单词wi都要依赖从第一个单词w1到前一个单词wi-1的影响。
p(S)=p(w1w2⋯wn)=p(w1)p(w2∣w1)⋯p(wn∣wn−1⋯w2w1)
这个衡量方法的两个弊端
-
会造成参数过大
-
数据稀疏严重。
针对参数过大我们引入马尔科夫假设:一个词的出现只与他之前的若干个词相关
如果一个词的出现仅依赖于它前面出现的一个词那么我们就称他为Bi-gram: