码迷,mamicode.com
首页 > 其他好文 > 详细

词向量-LRWE模型

时间:2017-07-04 20:13:31      阅读:1543      评论:0      收藏:0      [点我收藏+]

标签:联合   指示   nim   同义词   数据   优化   建立   模型   blog   

    上一节,我们介绍利用文本和知识库融合训练词向量的方法,如何更好的融合这些结构化知识呢?使得训练得到的词向量更具有泛化能力,能有效识别同义词反义词,又能学习到上下文信息还有不同级别的语义信息。

    基于上述目标,我们尝试基于CBOW模型,将知识库中抽取的知识融合共同训练,提出LRWE模型。模型的结构图如下:

技术分享

    下面详细介绍该模型的思想和求解方法。

1. LWE模型

    在Word2vec的CBOW模型中,通过上下文的词预测目标词,目标是让目标词在其给定上下文出现的概率最大,所以词向量训练的结果是与其上下文的词相关联的。然而 CBOW模型只考虑了词语的局部上下文信息,无法很好的表达同义词和反义词等信息。例如下面的几个case:

技术分享

    为了解决上述问题,本文将同义词和反义词等词汇信息以外部知识的形式,作为词向量训练中的监督数据,让训练得到的词向量能学习到同义、反义等词汇信息,从而能更好地区分同义词和反义词。

1.1 模型思想

   记 ???? 的同义词和反义词集合为( ???? , ?????????? , ?????????? ),其中 SYN 表示同义词集合,ANT 表示反义词集合,我们的目标是已知目标词对应的同义词集合和反义词集合,预测目标词,使得目标词和它的同义词距离尽可能相近,与反义词距离尽可能远。 

   例如“The cat sat on the mat.”,已知sat有同义词seated,反义词stand,来预测目标词为sat。

   该模型称为词汇信息模型,模型结构图如下:

技术分享

   对于一个词语,我们根据它的同义词和反义词预测目标词,最大化词语和它的同义词同时出现的概率, 并降低词语和它反义词同时出现的概率。根据这个目标,定义以下的目标函数: 

技术分享

技术分享

    我们目标是在基于上下文的CBOW语言模型训练过程中,加入同义词反义词信息作为监督,使得训练所得词向量能学习到同义和反义知识。基于该想法,我们提出基于词汇信息的词向量模型(Lexical Information Word Embedding,LWE),目标函数为

技术分享

    模型的结构图如下:

技术分享

    需要注意的是,CBOW模型和词汇信息模型共用同一份词向量,这是为了通过共享表示来获得彼此的知识信息,使得词向量在训练的时候,能综合利用上下文信息和同义词反义词信息,从而得到更高质量的词向量。 

1.2 模型求解

    从模型结构图中可以看出,LWE可以看成两个CBOW模型的叠加,因此优化求解方法和CBOW模型一样,本文采用的是Negative Sampling进行优化。

    使用 Negative Sampling 的方法,目标词视为正样本,通过负采样的其它词称 为负样本,而在我们的模型之中,对于词语的同义词集合来说,目标词是正样本,在同义词集合之外的词语都为负样本,记????的同义词集合为 ??????????,对于??∈ ??????????则有负样本集合为???????? = |??| ???????????,记指示函数

技术分享

其中正样本标签为 1,负样本标签为 0。则对于样本 (??, ???? ),训练目标函数(3-1)中 

技术分享

反义词同理,所以对于整个词表 V 来说,整体的目标函数是: 

技术分享

1.3 参数更新

    要最大化目标函数(3-6),我们使用随机梯度上升法。用随机梯度上升方法求解时,需要分别求目标函数关于 eu 和 θw 的导数,为了方便推导,记 

技术分享从上式可看出同义词和反义词的目标函数除了定义域不同,其函数表达式是一样的,因此只需对函数 Ψ 进行求导。 函数 Ψ 对 ????求导,可得: 

技术分享

所以 ???? 的更新公式为: 

技术分享

2. RWE模型

    词语之间具有很多复杂的语义关系,例如上下位关系,“music”是“mp3” 的上位词,“bird”是“animal”的下位词,这里“animal”的下位词除了“bird” 外,还有有“fish”、“insect”等,具有相同上位词 “fish”、“insect” 和“bird”,某种意义上应该是相似或者说相关的,但 Word2vec 只利用大规模语料中的词语共现信息进行训练,所得的词向量只能学习到文本上下文信息,就无法学习到这种词语间的关系,所以其它复杂的语义关系也很难表达充分。 

    而知识图谱中含有实体词语丰富的关系信息,所以,本文提出基于关系信息的词向量模型,将语言模型和知识表示学习模型进行共同训练,在训练语言模型的时候,加入从知识图谱抽取的多种关系知识, 使得词向量训练过程不仅仅根据上下文词语共现的信息,还学习到对应的关系知识,从而提升词向量的质量。 

2.1 模型思想

    知识图谱中的知识,一般以三元组 (h, ??, ??) 的形式进行组织,根据CBOW的训练过程,我们可以构造样本 (h, ??, ????),其中 ?? 表示 ???? 关联的多种不同的关系, 例如(animal, _hyponymy, bird)。 

    在提取三元组数据后,需要对词语的关系建立表示,如TransE 模型,便是最方便有效的表示方法。基本思想是对于三元组 (h, ??, ??),若三元组是事实信息,则有 ?? + ?? ≈ ??,即 ?? + ?? 对应向量应与 ?? 更相近。

    该模型称为关系信息模型,模型结构图如下,模型的输入层是目标词 ???? 的对应的三元组集合(h, ??, ???? ),投影层做了恒等投影,输出层是在字典中预测目标词。 

技术分享

    对一个词语 ????,利用知识图谱中的关系三元组这种有监督的数据,我们希望能让词语学习到丰富的关系语义信息,根据这个目标,定义以下的目标函数: 

技术分享

    那么在基于上下文的 CBOW 语言模型训练过程中,加入丰富的关系信息作为监督,使得训练所得词向量能学习词与词之间的复杂语义关系。基于该想法,我们提出基于 关系信息的词向量模型(Relational Information Word Embedding,RWE),目标函数为: 

技术分享    模型结构图如下:两个模型共享同一套词向量,同时本文为三元组中的关系设置分配新的向量空间,也就是说关系向量和词向量独立表示,原因是为了避免与词向量产生冲突。

技术分享

2.2 求解方法

    同样,我们采用Negative Sampling进行优化。化简过程和1.2相似,这里给出整体的目标函数

技术分享

2.3 参数更新

    同样,采用随机梯度上升方法进行更新。求解时,需要分别求目标函数关于 eh+r 和 θw 的导数,为了方便推导,记

技术分享

函数 Ψ 对 θu 求导,可得:

技术分享

θu 的更新公式为:

技术分享

 3. LRWE模型

    前两节介绍了两个模型,分别是基于词汇信息的词向量模型和基于关系信息的词向量模型,两模型分别适合特定情景下的问题。 本文尝试将两个模型进行联合,让词向量在训练的时候,既能学习到同义词反义词等词汇信息,又能学习到复杂的关系语义信息,基于该目标,得到联合模型LRWE。

    联合的词向量模型目标函数如下:

技术分享

    模型的结构图如下:

技术分享3.1 模型特点

  • 通过共享词向量,同时学习多种信息
  • 不同模块具有独立的参数,保持任务差异性
  • 重新分配关系向量空间,避免冲突

3.2 模型的理论比较

    从参数个数角度,LWE 是在 CBOW 基础上使用词汇信息进行监督,共享一份词向量,同时需要多一份辅助参数向量,故参数个数为 2|??| × |??| + |??| × |??| = 3|??| × |??|; 同理,基于关系信息的词向量模型 RWE,与 CBOW 共享一份词向量,以及拥有独立的辅助参数向量,此外还有一份关系向量,故参数个数为3|??| × |??| + |??| × |??|; 联合的词向量模型 LRWE 是上述两模型的联合,故参数个数为 4|??| × |??| + |??| × |??|。

model

参数个数

CBOW

2|??| × |??|

LWE

3|??| × |??|

RWE

3|??|×|??|+|??|×|??|

LRWE

4|??|×|??|+|??|×|??|

    从时间复杂度角度,CBOW 模型通过扫描语料的每一个词,取该词及其上下文作为一个样本,因此接下来对比模型时,只分析训练一个样本的时间复杂度。

    CBOW 模型只有输出层 Softmax 预测需要大量的计算,其训练的复杂度为 ??(|??| × |??|),如果采用 Hierarchical Softmax 对输出层的 Softmax 做优化,可以加速到??(|??| × ??????|??|),而采用Negative Sampling,可进一步将复杂度优化到??(|??|)。而 LWE 和 RWE 可以认为是两个CBOW模型的叠加,时间复杂度为??(2|??|) ,虽然相比 CBOW 模型较复杂,但在线性时间内能学习到更多的语义信息,使得词向量表达更充分。 

     下一节我们将通过设计实现一系列实验任务,来验证和评估本文所提出模型的合理性和有效性,实验包括语义相关性、反义词同义词识别等自然语言处理任务,并给出实验结果与分析。

词向量-LRWE模型

标签:联合   指示   nim   同义词   数据   优化   建立   模型   blog   

原文地址:http://www.cnblogs.com/chenbjin/p/7106139.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!