基于神经模型的半监督词义消歧web
Dayu Yuan Julian Richardson Ryan Doherty Colin Evans Eric Altendorf算法
Google, Mountain View CA, USA数据库
摘要bootstrap
肯定文本中词语的意图 - 词义消歧(WSD) - 是天然语言处理中长期存在的问题。 最近,研究人员使用从神经网络语言模型中提取的单词向量做为WSD算法的特征,显示了有但愿的结果。 可是,文本中每一个单词的单词向量的简单平均或串联会丢失文本的顺序和句法信息。 在本文中,咱们使用序列学习神经网络LSTM研究WSD,以更好地捕获文本的顺序和句法模式。 为了减轻全词WSD中训练数据的缺少,咱们在半监督标签传播分类器中使用相同的LSTM。 咱们展现了最早进的结果,尤为是动词。网络
词义消歧(WSD)是天然语言处理(NLP)中一个长期存在的问题,具备普遍的应用。 已经为WSD研究了监督的,无监督的和基于知识的方法(Navigli,2009)。 然而,对于全词WSD,语料库中的全部单词都须要用单词意义进行注释,事实证实,击败强基线极具挑战性,强基线老是在不考虑上下文的状况下分配最多见的单词意义(Pradhan 2007a) ; Navigli,2009; Navigli 2013; Moro和Navigli,2015)。 鉴于已发布的有监督的WSD系统在提供特定单词的有效训练数据时表现良好(Zhong和Ng,2010),彷佛缺少足够的大型词汇标记训练数据是核心问题。app
利用未标记数据的一种方法是在数据上训练神经网络语言模型(NNLM)。从这样的NNLM(一般是Word2Vec(Mikolov等人,2013))提取的词向量能够做为特征结合到WSD算法中。 Iacobacci等人(2016年)代表,这能够大大提升WSD的性能,事实上,仅使用单词嵌入就能够得到竞争性能。性能
在本文中,咱们描述了两种新颖的WSD算法。第一种是基于长期短时间记忆(LSTM)(Hochreiter和Schmidhuber,1997)。因为该模型在分类时可以考虑单词顺序,所以其性能明显优于基于连续词袋模型(Word2vec)的算法(Mikolov等,2013; Iacobacci等,2016),尤为是动词。学习
而后,咱们提出了一种使用标签传播的半监督算法(Talukdar和Crammer,2009; Ravi和Diao,2016),根据它们与标记的句子的类似性来标记未标记的句子。这使咱们可以更好地估计词义的分布,得到更准确的决策边界和更高的分类准确度。测试
经过使用具备标签传播的LSTM语言模型实现了最佳性能。咱们的算法在许多SemEval全字任务中实现了最早进的性能。它还优于最多见的词义和Word2Vec基线10%(详见第5.2节)。优化
组织:咱们回顾了第2节中的相关工做。咱们在第3节介绍了监督的WSD算法,在第4节介绍了半监督的WSD算法。实验结果在第5节中讨论。咱们在第6节中提供了进一步的讨论和将来的工做。
大量词汇资源的开发,如WordNet(Fellbaum,1998)和BabelNet(Navigli和Ponzetto,2012),已经使基于知识的算法在全词预测任务中显示出有但愿的结果(Ponzetto和Navigli,2010; Navigli等,2013; Moro和Navigli,2015)。基于监督学习的WSD算法一般被认为比基于知识的WSD算法表现更好,但他们须要大量训练集才能表现良好(Pradhan等,2007a; Navigli等) al,2007; Navigli,2009; Zhong和Ng,2010)。得到大型培训集的代价很大。在本文中,咱们代表,监督的WSD算法能够很好地执行每一个含义上约20个训练样例。
在过去几年中,使用神经网络学习词向量(Mikolov等,2013; Levy和Goldberg,2014),构建语言模型(Mikolov等,2011),进行情感分析(Socher)取得了很大进展。等,2013),机器翻译(Sutskever等,2014)和许多其余NLP应用。
在WSD中使用词向量已经研究了许多不一样的方法。有一些共同的元素:
l 上下文嵌入 给定一个文本窗口wn-k,...,wn,...,wn + k围绕焦点词wn(其标签在例句中是已知的或在分类的状况下肯定), 计算上下文向量做为单词wi,i = n的词向量的串联或加权和。 在二者中都使用了各类上下文向量(Chen等,2014)和(Iacobacci等,2016)。
l 含义向量针对词义库(例如Word Net)中的每一个单词含义计算词向量。 在(Rothe和Sch¨utze,2015)中,导出了关于词义向量的方程,其中嵌入了未分配词。 求解方程以计算词义嵌入。 在(Chen等人,2014)中,首先计算词义向量做为每一个含义上的WordNet注释中的单词嵌入的加权和。 这些用于初始自举WSD阶段,而后由在此引导数据上训练的神经网络进行细化。
l 嵌入做为SVM特征 上下文嵌入(Iacobacci等人,2016; Taghipour和Ng,2015b),或特征是经过将上下文嵌入与有意嵌入相结合而计算获得的(Rothe和Sch¨utze,2015),能够用做受监督的WSD系统中的附加特征,例如, 基于SVM的IMS(Zhong和Ng,2010)。 事实上,Iacobacci等人(2016)发现使用嵌入做为IMS中惟一的特征能够提供有竞争力的WSD性能。
l 最近邻分类器 执行分类的另外一种方式是找到与其词义向量最接近的分类上下文向量的词义,如经过余弦类似性测量的获得。 例如,这用于(Chen等人,2014)的自举阶段。
l 再培训嵌入 前馈神经网络可用于联合执行WSD并调整嵌入(Chen等,2014; Taghipour和Ng,2015b)。
在咱们的工做中,咱们从一个基线分类器开始,该分类器使用Word2Vec(Mikolov等,2013)在1000亿字新闻语料库上训练的1000维嵌入。词汇由最多见的1,000,000个单词组成,没有词形还原或案例归一化。经过求平均值来计算词义嵌入,该平均值是由已经用该意义标记的句子的上下文嵌入获得的。为了对上下文中的单词进行分类,咱们将分配与上下文嵌入具备最大余弦类似度的词义向量。当SemCor用做标记句子的来源时,该分类器具备与(Iacobacci等人,2016)中的最佳分类器相似的性能。使用词袋模型训练Word2Vec嵌入,即不考虑训练上下文中的单词顺序,而且在分类上下文中也不考虑单词顺序。在第3节中,咱们展现了使用更具表现力的语言模型,该模型考虑了词序,产生了显着的改进。
半监督学习之前已成功应用于词义消歧。在(Yarowsky,1995)中,bootstrapping用于学习高精度WSD分类器。 从一小组标记的示例中学习了低召回率分类器,而后用来自未标记语料库的那些句子扩展标记组,分类器能够高可信度地标记这些语句。 而后从新训练分类器,而且该迭代训练过程继续收敛。 其余启发式方法有助于维持自举过程的稳定性。 该方法在一个小数据集上进行评估。
在(Niu等人,2005)中,提出了用于词义消歧的标签传播算法,并将其与自举和SVM监督分类器进行比较。 标签传播能够实现更好的性能,由于它分配标签以优化全局目标,而自举则根据示例的本地类似性传播标签。
在第4节中,咱们描述了咱们使用标签传播来改进最近邻居的分类。
具备长短时间记忆(LSTM)单元的神经网络(Hochreiter和Schmidhuber,1997)制做了考虑词序的良好语言模型(Sundermeyer等,2012)。 咱们训练LSTM语言模型来预测句子中保留的单词。 如图1所示,咱们首先用特殊符号$替换保留的单词,而后,在使用句子中剩余的单词后,将h维隐藏层投影到一个p维上下文层,最后用softmax预测出来单词。 默认状况下,LSTM模型具备2048个隐藏单元,512维上下文层和512维词向量。 咱们还研究了其余设置,详见5.2.2节。 咱们用大约1000亿个标记的新闻语料库训练LSTM,词汇量为1,000,000个单词。词汇表中的词汇既不是词形也不是归一化。
咱们的LSTM模型与Kgebck和Salomonsson的模型不一样(K˚ageb¨ack和Salomonsson,2016)。咱们训练LSTM语言模型,该模型根据上下文环境预测一个突出的单词,并将大量未标记的文本做为训练数据。巨大的训练数据集使咱们可以训练一个高容量模型(2048个隐藏单元,512维嵌入),实现了高精度而不会过分拟合。在咱们的实验中,这种定向LSTM模型比双向LSTM更快更容易训练,特别是考虑到咱们庞大的训练数据集。 Kgebck和Salomonsson的LSTM直接预测了词的含义,而且用有限数量的词义标记示例训练它。尽管使用正则化和dropout来避免过分拟合训练数据,但双向LSTM很小,只有74 + 74个神经元和100维词向量(K˚ageb¨ack和Salomonsson,2016)。由于咱们的LSTM一般适用于任何单词,因此它能够在全词WSD任务上实现高性能(详见第5节),这是本文的重点。 Kgebck和Salomonsson的LSTM仅针对Sem Eval 2和3的词汇样本WSD任务进行评估(K˚ageb¨ack和Salomonsson,2016)。
图1:LSTM:用特殊符号$替换焦点词w3,并在句子末尾预测w3。
LSTM的表现能够经过其预测来直观获得。 表1显示了LSTM语言模型在包含各类“股票”意义的句子中对“股票”一词预测的前10个单词。
在咱们的初始实验中,咱们经过它们的预测词之间的重叠来计算两个上下文之间的类似性。例如表1,查询的最高预测与“sense#1”的LSTM预测重叠最多 - 咱们预测'sense#1'是正确的意义。这个预测虽然易于解释,但它只是在预测所保留的单词时对LSTM内部状态的离散近似。所以,咱们直接使用LSTM的上下文层来计算预测做为上下文的表示(参见图1)。给定从LSTM提取的上下文向量,咱们的监督WSD算法经过找到与上下文向量具备最大余弦类似性的有义向量来对上下文中的单词进行分类(图2a)。咱们经过对具备相赞成义的全部训练句子的上下文向量求平均来找到有义向量。咱们在少数状况下观察到上下文向量远离保持字的嵌入,特别是当输入句子不提供信息时。例如,当咱们保留“工做”时,LSTM语言模型将预测输入句子“我在[工做]睡着了”的“夜晚”。目前,咱们将上述案例视为异常值。咱们但愿探索替代解决方案,例如,在进一步的工做中迫使模型预测接近所保留的单词的一个语义向量的单词。从SemEval全词任务和表6中能够看出,该LSTM模型具备比Word2Vec模型明显更好的性能。
(b)带有标签传播的半监督WSD
图2:WSD分类器。 填充节点表示标记的句子。 未填充的节点表示未标记的句子。
第3节中描述的非参数最近邻居算法具备如下缺点:
l 对于每一个语义簇它假设为球形,因为示例数量有限,没法准确地对决策边界进行建模。
l 它没有训练数据,也没有先前语义的模型,忽略了极其有用的潜在标记。
为了克服这些缺点,咱们提出了一种半监督方法,该方法利用来自网络的大量未标记的句子来加强标记的例句。 而后将词义标签从标记的句子传播到未标记的句子。 添加大量未标记的句子使得不一样语义之间的决策边界变得更。
标签传播图由(a)具备多个标记种子节点的顶点和(b)无向加权边组成。 标签传播(LP)(Talukdar和Crammer,2009)迭代计算图顶点上的标签分布,来最小化如下的加权组合:
l 种子标签与其计算标签分布之间的差别。
l 链接顶点的标签分布之间的不一致。
l 一个正则化项,它对与先前不一样的分布(默认状况下,均匀分布)是不利的。
咱们为每一个词目构建一个图形,其中带有标记顶点的标记例句,以及包含词的句子的未标记顶点,从一些附加语料库中提取。类似句子的顶点(基于下面讨论的标准)经过边链接,该边的权重是各个上下文向量之间的余弦类似度,使用LSTM语言模型。为了对词的出现进行分类,咱们为新句子建立了一个额外的顶点,并运行LP将词义标签从种子顶点传播到未标记的顶点。
图2(b)说明了图形配置。空间接近度表示到每一个顶点的句子的类似性,而且每一个节点的形状表示单词词义。填充节点表示具备已知单词意义的种子节点。未填充的节点表示没有语义标签的句子,而?表示咱们想要分类的单词。
边太多,语义标签传播得太远,精度低。语义标签太少,传播不充分,召回率低。咱们发现当咱们经过类似性对顶点对进行排序并将这些组合链接在95%以上时,该图具备关于常见词义的正确密度。这可能使得少见的词义被不多的链接到,所以咱们另外添加边以确保每一个顶点链接到至少10个其余顶点。咱们的实验(表9)显示该设置在WSD上实现了良好的性能,而且当85%到98%之间时性能稳定。因为它须要针对每一个分类运行LP,所以与最近邻居算法相比算法较慢。
咱们使用WordNet做为词义库,在标准SemEval全字任务上评估带有和不带标签传播的LSTM算法。咱们提出的算法在许多SemEval全字WSD任务上实现了最早进的性能。为了评估训练语料库大小和语言模型能力的影响,咱们还使用新牛津美国词典(NOAD)词义库与SemCor(Miller等,1993)或MASC来评估咱们的算法。
5.1语义评测任务
在本节中,咱们研究了咱们的分类器在Senseval2(Edmonds和Cotton,2001),Senseval3(Snyder和Palmer,2004),SemEval-2007(Pradhan等,2007b),SemEval-2013 Task12(Navigli等, 2013)和SemEval-2015任务13(Moro和Navigli,2015)之上的性能。 咱们将研究重点放在全词WSD任务上。 为了与相关工做进行公平比较,分类器在对全词(多义词和单词)上进行评估。
如下相关工做,咱们使用SemCor或OMSTI(Taghipour和Ng,2015a)进行训练。在咱们的LP分类器中,每一个词的未标记数据包含1000个句子,其中包含从Web中随机抽样的词目,或包含词目的全部OMSTI句子(无标签)。
表2:SemEval全词任务的F1得分。 T:SemCor表明用SemCor训练的模型。 U:OMSTI表明使用OMSTI做为半监督WSD中的未标记句子。 IMS + Word2Vec分数来自(Iacobacci等,2016)
表2显示了Sem-Eval结果。 除了Sem-Eval 2013以外,咱们提出的算法实现了最高的全词F1分数。Weissenborn等人(2015)仅消除了名词的歧义,而且它在Sem-Eval 2013上的表现优于咱们的算法4%,但在Senseval-3和SemEval-7任务的F1分数比咱们的算法低6%以上,排名落后于咱们的算法。。Unified WSD(Chen et al,2014)在名词(Sem-Eval-7 Coarse)上得到了最高的F1分数,但咱们的算法在其余词性标签上的表现优于Unified WSD。
设置 为了公平地比较Word2Vec和LSTM,咱们不使用预先训练的词向量(Iacobacci等,2016),而是在一个1000亿字的新闻语料库上训练Word2Vec和LSTM模型,该语料库包含了一个最多见的1,000,000词的词汇表。咱们自我训练的词向量具备与预训练的词向量类似的性能,如表2所示.Word2Vec词向量为1024维。LSTM模型具备2048个隐藏单元,输入是512维词向量。咱们经过使用Adagrad(Duchi等人,2011)最小化采样的softmax损失来训练LSTM模型(Jean等人,2014)。 学习率为0.1。 咱们尝试了其余学习率,而且在训练收敛后没有观察到显著的性能差别。 咱们也以与(Mikolov等,2013)相同的方式对频繁术语进行下采样。
Word2Vec vectors Vs. LSTM 为了更好地比较LSTM与词向量,咱们还使用Word2Vec词向量和SemCor示例句子构建了一个最近邻分类器Word2Vec(T:Sem Cor)。 它的表现相似于IMS + Word2Vec(T:SemCor),这是一种基于SVM的分类器(Iacobacci等,2016)。 表2显示LSTM分类器彻底优于Word2Vec分类器。
SemCor Vs. OMSTI 与(Iacobacci等,2016)观察到的结果相反,使用OMSTI训练的LSTM分类器比使用SemCor训练的LSTM分类器表现更差。 彷佛OMSTI训练数据集的较大尺寸被其自动生成的标签中存在的噪声所抵消。虽然在(Iacobacci等人,2016)研究的SVM分类器可能可以学习应对这种噪声的模型,可是咱们的朴素最近邻分类器没有学习模型而且对噪声标签处理得不太好。
标签传播 咱们使用DIST EXPANDER(Ravi和Diao,2016)的实现。咱们使用SemCor或OMSTI做为标记数据集和OMSTI或来自web引文的1000个随机句子做为未标记数据来测试标签传播算法。该算法对不一样的数据集执行相似的操做。
表3显示了Sem-Eval 2015的结果。具备LSTM语言模型的LSTM LP分类器在名词和副词以及总体F1上得到了最高分。 LSTM分类器在动词上具备最高的F1。
表3:Sem Eval-2015英语数据集的F1分数。 BFS基线使用Babel Net第一感。
5.2 NOAD Eval
许多字典词和词义在SemCor或OSTMI中没有例子,当这些语料库用做训练数据时,致使全部单词WSD的损失。上述SemEval分数不区分因为缺乏某些标签的训练数据或不许确的分类器而致使的错误。为了更好地研究所提出的算法,咱们使用新牛津美国词典(NOAD)(Stevenson和Lindberg,2010)训练分类器,其中每一个词义都有例句。
5.2.1 Word Sense Inventory
NOAD专一于美国英语,以牛津英语词典(ODE)为基础(Stevenson,2010)。 它以与ODE相同的方式区分粗(核)和细粒(子)词义。先前使用ODE进行的研究(Navigli,2006; Navigli等,2007)代表,ODE库引发的粗粒度词义可解决WordNet的细粒度库存问题,而且库存对于词义消歧颇有用。
对于咱们的实验,咱们使用NOAD的核心意义,咱们还使用由牛津大学出版社提供的语义英语语言数据库(SELD)中的词典编纂者例句。为了评估性能,咱们用NOAD词义手动注释了英语SemCor语料库和MASC语料库的全部单词。 表4显示了NOAD / SELD(如下称为NOAD),SemCor和MASC中多义词的总数(不止一个核心词义)和每一个多义词的平均语义数。 SemCor和MASC分别覆盖了大约45%和62%的NOAD多义词。
表4:NOAD,SemCor和MASC中的NOAD多重外le
表5给出了这些数据集的标记句子数。 请注意,虽然NOAD的标注句子多于SemCor或MASC,但数据集中句子的每一个含义的平均数是类似的。这是由于NOAD标记了每一个词义的句子,而SemCor(MASC)只涵盖了词汇和语义的子集(表4)。 表5的最后一列显示SemCor和MASC中的每一个带注释的单词具备平均超过4个NOAD的核心意义。 所以,随机猜想的精度约为1/4。
表5:每一个数据集中的示例数量和每一个示例的平均检测计数。
在默认设置中,咱们使用NOAD示例句子做为标记的训练数据,并在SemCor和MASC上进行评估。 咱们评估了语料库中的全部多义词。
5.2.2 LSTM classifier
咱们将算法与两种基线算法进行比较:
最多见的词义:计算词义频率(来自标记的语料库)和标签词w与w的最多见词义。
Word2Vec:具备Word2Vec词向量的最近邻分类器,其与SemEval任务(Iacobacci等,2016)中研究的尖端算法具备类似的性能。
表6比较了LSTM和基线算法的F1得分。LSTM在全部单词上的表现优于Word2Vec超过10%,其中大部分收益来自动词和副词。 结果代表,由LSTM很好地模拟了被Word2Vec忽略的句法信息,而句法信息对于区分动词和副词的词义很重要。
表7:LSTM分类器的宏F1分数
表6:LSTM算法与基线比较的F1得分
改变训练数据 默认状况下,WSD分类器使用NOAD示例句子做为训练数据。 咱们经过添加来自SemCor和MASC的标记句子来构建更大的训练数据集,而且研究表6中的F1得分的变化。在全部词性标签和数据集中,在添加更多训练数据以后F1得分增长。 咱们经过使用SemCor(或MASC)做为训练数据(没有NOAD示例)进一步测试咱们的算法。 SemCor(或MASC)训练的分类器与NOAD训练的分类器在F1分数上相同。 然而,前者的宏观F1得分远远低于后者,如表7所示,由于SemCor和MASC中罕见词义和单词的覆盖范围有限。
改变语言模型容量 在该实验中,咱们经过改变隐藏单元的数量h,输入嵌入的尺寸p和衡量F1来改变LSTM模型容量。图3示出了F1与语言模型的容量之间的强正相关性。可是,较大的模型训练的速度较慢而且使用更多内存。为了平衡准确性和资源使用,咱们默认使用第二好的LSTM模型(h = 2048和p = 512)。
图3:具备不一样容量的LSTM模型的F1得分:h是隐藏单位的数量; p是嵌入维度。
5.2.3 Semi-supervised WSD
咱们在本小节中评估了咱们的半监督WSD分类器。 咱们按照第4节中的描述构建图并运行LP以将词义标签从种子顶点传播到未标记的顶点。咱们经过比较eval节点上的预测标签和黄金标签来评估算法的性能。 从表8中能够看出,当使用Word2Vec语言模型时,LP没有产生明显的效益。咱们确实看到了显着的改进,使用LP和LSTM语言模型,SemCor增长了6.3%,MASC增长了7.3%。 咱们假设这是由于LP对图距离的特性敏感。
表8:标签传播的F1得分
Change of seed data: 从表8中能够看出,当训练数据集是SemCor + NOAD或MASC + NOAD时,LP基本上提升了分类器F1。 正如第4节所讨论的那样,改进可能来自对语义先验的明确建模。经过增长每一个词目的无标签句子数量,咱们没有看到太多的性能提高。
Change of graph density:默认状况下,若是两个节点的紧密度超过95%,咱们经过链接两个节点来构建LP图。咱们还强制每一个节点链接至少10个邻居以防止孤立的节点。表9经过改变百分数阈值显示了LP算法的性能。当百分位数介于85到98之间时,F1得分相对稳定,但当百分位数降至80时,F1得分会下降。此外,在一个更密集的图上运行LP算法须要更长的时间。 咱们在默认设置中选择95百分位来得到高F1分数和运行时间。
表9:在具备不一样图密度的NOAD上训练的LSTM LP的F1得分。
在本文中,咱们提出了两种WSD算法,它们结合了(1)在大的未标记文本语料库上训练的LSTM神经网络语言模型,以及(2)以例句形式标记的数据,以及(3)以附加句子的形式未标记数据。 使用LSTM语言模型比基于Word2Vec词向量的模型具备更好的性能。最好的性能是经过咱们的半监督WSD算法实现的,该算法构建了一个图,其中包含标记例句,这些标记例句是用来自网络的大量未标记句子扩充的,并经过在该图中传播语义标签进行分类。
几个未解答的问题代表将来的工做线。 因为咱们的通常方法适合结合任何语言模型,NNLM的进一步发展可能容许提升性能。咱们还但愿更好地理解语言建模对此任务的局限性:咱们指望有某些状况 - 例如,在惯用语方面 – 这其中每一个词的预测几乎没有信息。
咱们认为咱们的模型应该推广到英语之外的语言,但尚未探索过。字符级LSTM(Kim等人,2015)能够提供词法和变音符号的鲁棒性,甚至对英语中的拼写错误和没有收录到词库中的词显示有用。
咱们但愿看到咱们对于多义词的结果是否能够经过整合全局(文档)上下文和多个词向量(黄et al .,2012)来提升。
最后,许多WSD系统对于分辨率要求命名实体与解决系统集成,由于表面形态每每重叠(莫罗et al .,2014;Navigli Ponzetto,2012)。这将须要语义库对齐和模型重构工做,由于咱们目前使用非文档级,主题或知识库一致性特性。
咱们感谢咱们的同事和匿名评论者的深入的评论。