论文笔记【四】Semi-supervised Word Sense Disambiguation with Neural Models

基于神经模型的半监督词义消歧

Dayu Yuan  Julian Richardson  Ryan Doherty  Colin Evans  Eric Altendorf

Google, Mountain View CA, USA

 

摘要

确定文本中词语的意图 - 词义消歧(WSD) - 是自然语言处理中长期存在的问题。 最近,研究人员使用从神经网络语言模型中提取的单词向量作为WSD算法的特征,显示了有希望的结果。 但是,文本中每个单词的单词向量的简单平均或串联会丢失文本的顺序和句法信息。 在本文中,我们使用序列学习神经网络LSTM研究WSD,以更好地捕获文本的顺序和句法模式。 为了减轻全词WSD中训练数据的缺乏,我们在半监督标签传播分类器中使用相同的LSTM。 我们展示了最先进的结果,尤其是动词。

1 介绍

词义消歧(WSD)是自然语言处理(NLP)中一个长期存在的问题,具有广泛的应用。 已经为WSD研究了监督的,无监督的和基于知识的方法(Navigli,2009)。 然而,对于全词WSD,语料库中的所有单词都需要用单词意义进行注释,事实证明,击败强基线极具挑战性,强基线总是在不考虑上下文的情况下分配最常见的单词意义(Pradhan 2007a) ; Navigli,2009; Navigli 2013; Moro和Navigli,2015)。 鉴于已发布的有监督的WSD系统在提供特定单词的有效训练数据时表现良好(Zhong和Ng,2010),似乎缺乏足够的大型词汇标记训练数据是核心问题。

利用未标记数据的一种方法是在数据上训练神经网络语言模型(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节中提供了进一步的讨论和未来的工作。

2相关工作

大量词汇资源的开发,如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中使用词向量已经研究了许多不同的方法。有一些共同的元素:

上下文嵌入 给定一个文本窗口wn-k,...,wn,...,wn + k围绕焦点词wn(其标签在例句中是已知的或在分类的情况下确定), 计算上下文向量作为单词wi,i = n的词向量的串联或加权和。 在两者中都使用了各种上下文向量(Chen等,2014)和(Iacobacci等,2016)。

含义向量针对词义库(例如Word Net)中的每个单词含义计算词向量。 在(Rothe和Sch¨utze,2015)中,导出了关于词义向量的方程,其中嵌入了未分配词。 求解方程以计算词义嵌入。 在(Chen等人,2014)中,首先计算词义向量作为每个含义上的WordNet注释中的单词嵌入的加权和。 这些用于初始自举WSD阶段,然后由在此引导数据上训练的神经网络进行细化。

嵌入作为SVM特征 上下文嵌入(Iacobacci等人,2016; Taghipour和Ng,2015b),或特征是通过将上下文嵌入与有意嵌入相结合而计算得到的(Rothe和Sch¨utze,2015),可以用作受监督的WSD系统中的附加特征,例如, 基于SVM的IMS(Zhong和Ng,2010)。 事实上,Iacobacci等人(2016)发现使用嵌入作为IMS中唯一的特征可以提供有竞争力的WSD性能。

最近邻分类器 执行分类的另一种方式是找到与其词义向量最接近的分类上下文向量的词义,如通过余弦相似性测量的得到。 例如,这用于(Chen等人,2014)的自举阶段。

再培训嵌入 前馈神经网络可用于联合执行WSD并调整嵌入(Chen等,2014; Taghipour和Ng,2015b)。

在我们的工作中,我们从一个基线分类器开始,该分类器使用Word2VecMikolov等,2013)在1000亿字新闻语料库上训练的1000维嵌入。词汇由最常见的1,000,000个单词组成,没有词形还原或案例归一化。通过求平均值来计算词义嵌入,该平均值是由已经用该意义标记的句子的上下文嵌入得到的。为了对上下文中的单词进行分类,我们将分配与上下文嵌入具有最大余弦相似度的词义向量。当SemCor用作标记句子的来源时,该分类器具有与(Iacobacci等人,2016)中的最佳分类器类似的性能。使用词袋模型训练Word2Vec嵌入,即不考虑训练上下文中的单词顺序,并且在分类上下文中也不考虑单词顺序。在第3节中,我们展示了使用更具表现力的语言模型,该模型考虑了词序,产生了显着的改进。

半监督学习以前已成功应用于词义消歧。在(Yarowsky,1995)中,bootstrapping用于学习高精度WSD分类器。 从一小组标记的示例中学习了低召回率分类器,然后用来自未标记语料库的那些句子扩展标记组,分类器可以高可信度地标记这些语句。 然后重新训练分类器,并且该迭代训练过程继续收敛。 其他启发式方法有助于维持自举过程的稳定性。 该方法在一个小数据集上进行评估。

在(Niu等人,2005)中,提出了用于词义消歧的标签传播算法,并将其与自举和SVM监督分类器进行比较。 标签传播可以实现更好的性能,因为它分配标签以优化全局目标,而自举则根据示例的本地相似性传播标签。

在第4节中,我们描述了我们使用标签传播来改进最近邻居的分类。

3使用LSTM的监督WSD

具有长短期记忆(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,查询的最高预测与“sense1”LSTM预测重叠最多 - 我们预测'sense1'是正确的意义。这个预测虽然易于解释,但它只是在预测所保留的单词时对LSTM内部状态的离散近似。因此,我们直接使用LSTM的上下文层来计算预测作为上下文的表示(参见图1)。给定从LSTM提取的上下文向量,我们的监督WSD算法通过找到与上下文向量具有最大余弦相似性的有义向量来对上下文中的单词进行分类(图2a)。我们通过对具有相同意义的所有训练句子的上下文向量求平均来找到有义向量。我们在少数情况下观察到上下文向量远离保持字的嵌入,特别是当输入句子不提供信息时。例如,当我们保留“工作”时,LSTM语言模型将预测输入句子“我在[工作]睡着了”的“夜晚”。目前,我们将上述案例视为异常值。我们希望探索替代解决方案,例如,在进一步的工作中迫使模型预测接近所保留的单词的一个语义向量的单词。从SemEval全词任务和表6中可以看出,该LSTM模型具有比Word2Vec模型明显更好的性能。

4半监督的WSD

 

(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,因此与最近邻居算法相比算法较慢。

5实验

我们使用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维词向量。我们通过使用AdagradDuchi等人,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进行的研究(Navigli2006; 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得分。

6 结论和未来工作

在本文中,我们提出了两种WSD算法,它们结合了(1)在大的未标记文本语料库上训练的LSTM神经网络语言模型,以及(2)以例句形式标记的数据,以及(3)以附加句子的形式未标记数据。 使用LSTM语言模型比基于Word2Vec词向量的模型具有更好的性能。最好的性能是通过我们的半监督WSD算法实现的,该算法构建了一个图,其中包含标记例句,这些标记例句是用来自网络的大量未标记句子扩充的,并通过在该图中传播语义标签进行分类。

几个未解答的问题表明未来的工作线。 由于我们的一般方法适合结合任何语言模型,NNLM的进一步发展可能允许提高性能。我们还希望更好地理解语言建模对此任务的局限性:我们期望有某些情况 - 例如,在惯用语方面 – 这其中每个词的预测几乎没有信息。

我们认为我们的模型应该推广到英语以外的语言,但还没有探索过。字符级LSTM(Kim等人,2015)可以提供词法和变音符号的鲁棒性,甚至对英语中的拼写错误和没有收录到词库中的词显示有用。

我们希望看到我们对于多义词的结果是否可以通过整合全局(文档)上下文和多个词向量(黄et al .,2012)来提高。

最后,许多WSD系统对于分辨率要求命名实体与解决系统集成,因为表面形态往往重叠(莫罗et al .,2014;Navigli Ponzetto,2012)。这将需要语义库对齐和模型重构工作,因为我们目前使用非文档级,主题或知识库一致性特性。

我们感谢我们的同事和匿名评论者的深刻的评论。

posted @ 2018-11-12 10:13  bep_code  阅读(772)  评论(0编辑  收藏  举报