目录
将分词进行向量化的表示
独热表示(one-hot representation)
仅符号化词,不包含任何语义信息。
词空间模型(word space model)
用于词义消歧。
目前被直接成为分布表示(distributional representation)<二十世纪90年代>
1.基于矩阵的分布表示
a.词-文档(该词所在文档)
比较稀疏
b.词-词(固定宽度的上下文)
比较稠密,效果优于词-文档
c.词-n元词组(unigram,bigram)
保留语序信息
2.基于聚类的分布方法
通过聚类手段构建词与其上下文间的关系。最经典的方法是布朗聚类(Brown clustering)
3.基于神经网络的分布方法
一般称为词向量、词嵌入(word embedding)或分布式表示(distributed representation),该方法通过神经网络进行建模,可表示复杂的上下文。
构建上下文与目标词之间的关系,最自然的一种思路是使用语言模型。
语言模型
对一段文本的概率进行估计。
若文本太长,概率公式很复杂,故提出简化模型(n元模型,距离大于等于n的上文词会被忽略):
n=1 unigram model
n=2 bigram model
n=3 trigram model
一般选用3元组,当n较大会遇到数据稀疏问题。同时配合平滑算法降低数据稀疏带来的问题。
常用模型:
1.神经网络语言模型(NNLM)Neural Network Language Model
采用普通的三层前馈神经网络结构
输入层为条件部分的整个词序列(词向量顺序拼接),输出为目标词的分布
2.log双线性语言模型(LBL)Log-Bilinear Language Model
log双线性结构
没有**函数tanh
只有一份词向量
3.循环神经网络语言模型(RNNLM)Recurrent Nerual Network based Language Model
可利用所有的上文信息,预测下一个词
模型逐个读入词,隐藏层不断更新,此时包含当前词的信息及上一个隐藏层的信息
4.C&W模型
上述模型都是求解条件概率,本模型是对n元短语打分(语料中出现的n元短语打高分)
第一个直接生成词向量
输入目标词在内的此信息,输出为打分值
5.CBOW模型(Continuous Bag-of-Words)
输入上下文,输出目标词
没有隐藏层,使用的是log线性结构
去除上下文各词的语序信息,使用各词词向量的平均值
6.Skip-gram模型
输入目标词,输出上下文
7.Order模型
输入上下文词向量的拼接
使用CBOW模型预测目标词