[2014]LearningWord RepresentationConsidering Proximity and Ambiguity。Lin Qiu and Yong Cao and Zaiqing Nie andYong Rui
Word Embedding learning&词义消歧 类文章
主旨:发现CBOW和skip-gram模型都存在着的两点问题。1、在模型方面,模型没有考虑context里的每个词的顺序,即接近度(与目标词的远近)2、在语言学方面,没有考虑一词多义,没有提前处理语义消歧问题。
作者提出自己的proximity-ambiguity sensitive model,主要分为两大块:proximity和ambiguity。
l 解决proximity issue是通过在CBOW模型里将输入词向量互相间单纯的SUM改成带加权值的SUM,隐含的意思是:距离output词越远的input词的词向量的权重要小。
l 解决ambiguity issue是利用现成的工具进行词性标注从而区分词义(We train a CRF POS tagger on the Wall Street Journaldata from Penn Treebank III)。名词被标注后举例:entity#NN。 POS标注包括三种粒度,细、粗、中等。细粒度是指#后面的词性要完全一样。粗粒度是指#后面的词性只分为5类:N,V,J,R,OTHER。中等粒度是指#后面的词性分为14类:
但我感觉仅仅词义标注,没有解决这样的问题:同样的entity#NN 可能实际上代表两个不同的意思。比如 char#NN
实验分为几个:
(1)先不考虑word ambiguity,即不考虑语义消歧。比较三种不同的proximity modelings in CBOW。(自己与他人比较)。而且,作者在更大的数据集上测试了自己提出的proximity modeling,测试数据集利用了Mikolov的论文《Efficient estimation of wordrepresentations in vector space》里的test set 去衡量学习出的词向量的质量。
(2)POS标注是用于语义消歧的。比较不同粒度的POS归类方式的性能结果comparison of POS grouping。结果发现中等粒度的POS在CBOW和skip模型上都更胜一筹。(自己内部相互比较)
(3)同时考虑proximity modeling和word ambiguity(POS标注),构造作者自己的proximity-ambiguity senistive model简称PAS。通过比较原始的CBOW、skip-gram与作者自己的PAS CBOW、PAS skip-gram来比较。
[2012]improving word representations via global context and multiple word prototypes. Eric H.Huang, et al. Proceedings of the 50th Annual Meeting of the Association for Computational Linguistics: Long Papers-Volume 1. Association for Computational Linguistics.
这篇论文结合原始的词向量的获取,提出了一种改进方法,两处改进分别为:(1)不仅考虑词的局部段落(local context)信息,也增加考虑了全局文本(global context)信息,这样得到的词向量不仅能表示语义信息,也能表示句法信息。(2)利用多个词原型,提出了一种识别一词多义的方法,在聚类时同一个词的不同意思能划分到不同的类别之中。
下面是本文的一些要点:
1、 常见VSM(vector-spacemodel)的问题
一个词只能表示为一个向量,无法解决同音异义词(发音相同但意义不同)和一词多义的词。针对这一点,本文提出了一个新的基于神经网络的语言模型,该模型把局部和全局文本结合起来作为训练目标,结果表明这要比单独使用局部文本或单独使用全局文本的效果要好。
2、 global context-aware neural language model(考虑全局文本的神经网络语言模型)
这个模型的特点就是考虑了全局文本,训练的目标不再是给出一些词考虑下一个词是某个词的概率,而是学习得到一种有用的词表示方式。在给定词序列s以及文档d的情况下,试图从一批随机词中区别出位于s序列最后的一个正确的词。目标函数为:
其中g(s,d)为得分函数,g(sw,d)为s序列中最后一个词由词w替代后的得分函数。同时,需要把两者差值控制在[0,1]范围之内。
有了目标函数之后,神经网络的结构表示如下:
得分函数由两个神经网络构成,一个是针对局部上下文进行训练,一个针对全局文本进行训练。
针对局部上下文时,针对一个文本序列s,可以将其表示为一系列的向量x=(x1,x2…xm),得分函数如下:
其中f是一个激活函数,W1,W2为神经网络第一层和第二层的权重。a1是隐层的激活函数,b1,b2是每一层的偏差值。
针对全局上下文时,我们把整个文档表示为一个词向量列表,d={d1,d2…dk},首先计算出所有文档中的词的平均权重:
其中w(ti)表示词ti在文本中的重要度,这里可以用idf权值来表示。得分函数如下:
其中c就是平均权重,其余同局部上下文中的参数。最终的得分为两个得分之和:
局部score保留了文档中词的顺序以及句法信息,全局score视野了权重特征,这一点类似于词袋模型,其中保存了文档的语义和话题信息。
3、 multi-prototype neural language model(多原型神经网络语言模型)
该神经网络是为了解决一词多义的问题,使用不同的表示形式来描述某个词的多组意义。为了能够学习多原型,需要经过下面几个步骤:
-首先针对每个词出现的位置设定一个固定大小的窗口(前后各5),得到一个短句,对窗口中的词求其平均权重,这一点类似于求全局权重c的步骤
-其次使用spherical k-means聚类方法对这些短句进行聚类
-最后每个词在其所属的类别中被重新标记,用于训练类别中的词向量
两个词之间的距离可以定义如下:
其中p(c,w,i)为词w在给定上下文c的情况下属于类别i的概率,ui(w)表示w属于的第i个类别的中心点的向量表达,d(v,v’)为两个词之间距离计算函数。
4、 实验对比
本文提出了两种神经网络语言模型,故存在两个实验对比:
(1)针对单原型,使用loacal context alone的C&W model VS. our model
上表为对两种方法得到的聚类结果进行对比,其中C&W方法只使用了局部文本信息,可以看到本文提出的方法要优于该方法。因为,局部信息更多地受句法约束,比如一个单数词被认为只和别的单数词很相似。但是our model却认为markets 和 market很相似,考虑到了更多的语义。
上表为一词多义的聚类结果,可以看到效果还是挺不错的。能够区分一词形多语义。
_______________________________________________________________________________________________________________________________
[2010] Reisinger, J., and Mooney, R. J.Multi-prototype vector-space models of word meaning.