李 峰,侯加英,曾荣仁,凌 晨
1.中国人民解放军后勤科学研究所,北京 100166
2.北京航空航天大学 计算机学院,北京 100191
3.昆明理工大学 信息工程与自动化学院,昆明 650504
融合词向量的多特征句子相似度计算方法研究*
李 峰1,2+,侯加英3,曾荣仁1,凌 晨1
1.中国人民解放军后勤科学研究所,北京 100166
2.北京航空航天大学 计算机学院,北京 100191
3.昆明理工大学 信息工程与自动化学院,昆明 650504
在归纳常见的句子相似度计算方法后,基于《人民日报》3.4万余份文本训练了用于语义相似度计算的词向量模型,并设计了一种融合词向量的多特征句子相似度计算方法。该方法在词方面,考虑了句子中重叠的词数和词的连续性,并运用词向量模型测量了非重叠词间的相似性;在结构方面,考虑了句子中重叠词的语序和两个句子的长度一致性。实验部分设计实现了4种句子相似度计算方法,并开发了相应的实验系统。结果表明:提出的算法能够取得相对较好的实验结果,对句子中词的语义特征和句子结构特征进行组合处理和优化,能够提升句子相似度计算的准确性。
词向量;句子相似度;Word2vec;算法设计
句子相似度计算是自然语言处理领域中十分重要而又较为基础的研究工作。例如:在机器翻译研究中,用于查找最为相似的例句[1-2];在问答系统中,用于查找可能的答案[3];在噪音信息过滤中,用于剔除可能的垃圾信息[4];在文本自动摘要研究中,用于计算摘要句的权重分配[5];在分类或聚类中,用来判定句子或文档的类别[6],等。目前常见的句子相似度计算方法大体上可分为以下3类:
(1)基于表层信息的相似度计算。该方法通常计算句子中词形相似度、词序相似度和句长相似度等信息[7],分别如式(1)~(3)所示。
式(1)中,S1和S2代表两个句子;same(S1,S2)表示两个句子中重叠词的个数;L(S1)和L(S2)分别代表两个句子的词数。
式(2)中,v1n和v2n分别代表由句子S1和S2的N-Gram表示的向量;当n值为1时,取词的tf-idf值;当n值大于1时,若句子包含重叠词,则向量值取1,否则取0。
式(3)中,L(S1)和L(S2)分别代表两个句子中词的个数。
(2)基于句子结构的相似度计算。这种方法主要考查两个句子在结构上的相似性,如基于词类串结构、本体结构、词性及词性依存结构等进行句子的相似度计算。这里引用文献[8]提出的基于词性及词性依存的句子结构相似度计算方法来进行介绍。该方法认为句子主要由主成分和修饰成分组成,主成分由句子中的核心动词担任并作为句子的支配者,修饰成分则作为支配者。同一主成分可以被不同的修饰成分修饰,达到不同的效果。其中,句子的成分信息可由词性来反映,词性依存关系中各成分之间的修饰关系能够体现句子的整体性。因此,可以通过计算词性及词性依存信息来把握句子间的相似性。该方法首先通过计算得到句子S1和S2词性相似度矩阵,如式(4)所示:
其中,sij表示句子S1中第i个词性和句子S2中第 j个词性的相似度,若两词性相等,则 sij=1;否则sij=0。然后使用式(5)计算两个句子的结构相似度:
其中,c为句子S1和S2中相同词性的个数;d为相邻对应词间距;r为句子中词性对应总数;表示两句中能够对应上的词性权值均值线性和;为能够对应上的词性前余及后余词性权值均值线性和;表示两句中无法对应上的词性权值均值线性和。
最后,在式(4)、(5)计算的基础上,通过双向最佳路径匹配搜索算法得到结构相似度的最大值作为句子S1和S2的结构相似度。
(3)基于语义资源的相似度计算。该方法主要通过已建成的语义资源来考察词间的语义关系,从而计算句子的相似度,具有代表性的主要有基于Word-Net、HowNet或同义词林等的句子相似度计算方法。主要思路为:首先利用语义资源获取句子S1和S2中词语间的相似度s(wk,wn),词义相似度计算方法请见相应的参考文献[9-11],这里不再赘述。
其次,利用式(6)计算求得句子S1中词语和句子S2中词语的平均最大相似度Q1和Q2:
其中,m、n分别为两个句子中词的个数;s(wk,wn)表示当前句子中第k个词与另一个句子中第n个词的语义相似度值。
最后利用式(7)得到双向平均最大相似度的算术平均值作为句子S1和句子S2的相似度值:
上述3种方式能够从不同的角度计算出两个句子之间的相似度信息,并得到了较为广泛的应用。也有学者尝试将几种方法融合起来应用于句子的相似度计算,也取得了较好的效果[12]。
本文则在前人研究的基础上,提出了一种融合词向量的多特征句子相似度计算方法。该方法综合考察两个句子中词的语义信息和句子的结构信息来测量句子的相似度。其中,在词义计算过程中,除了考虑两个句子中重叠词的个数、连续性,还通过引入词向量特征来刻画非重叠词之间的语义相似性;在句子结构相似度计算过程中,则分别计算了重叠词在句子中出现的词序和两个句子的句长相似性两个因素。本文第2章将基于Word2vec工具使用大规模《人民日报》语料训练词向量模型,同时测试不同字面词之间的相关性;第3章将详细描述本文提出的融合词向量的多特征句子相似度计算方法;第4章将开发并实现相应的实验系统,对多种句子相似度算法进行实验和分析,并给出实验结论;第5章对全文进行总结。
2.1 词向量和相关语言模型
语言模型的建立与训练是自然语言处理领域十分重要的组成部分,常见的有经典的N-Gram模型[13]以及最近得到广泛讨论的深度学习模型(deep learning)[14-15]等。词向量作为深度学习模型中一种词的分布式表达(distributed representation),能够较好地解决数据稀疏对统计建模的影响,克服维数灾难,取得了较好的应用效果[16],得到了研究者们广泛的关注。采用词的分布式表达来表示词向量最早由Hinton[17]提出,也称之为Word Representation或Word Embedding。该方法采用一组低维度的实数向量来刻画词的特征,常见形式为[-0.047 339 3,-0.125 004 8, 0.223 884 4,0.051 308 5,…],其优点主要表现在两个方面:一是可以通过计算词向量之间的距离来测试词之间的相关或相似性,例如“西安”、“郑州”和“中医”3个词中前两个词较为相关,则对应的词向量距离就较小,反之亦然;另外通过使用较低维度的特征来刻画词,可以大幅降低计算的复杂度,从而提高方法的实际应用价值。
词向量的数值一般是从大量未经标注的文本数据中,通过无监督的语言模型训练同步得到。鉴于下文使用的Word2vec工具主要包括CBOW(continuous bag of word)模型和Skip-gram模型[18-19],这里重点介绍这两个模型。两个模型均由Mikolov[18]提出,架构示意如图1所示,模型的主要目标在于以较小的计算量获取较好的词向量表示。
Fig.1 CBOW model and Skip-gram model图1CBOW模型与Skip-gram模型示意图
Skip-gram模型通过“跳过一定字符”的方式来训练当前词的上下文词向量,用于刻画上下文信息,可以简单地理解为根据上下文对当前词进行分类。该模型训练的目标是寻找参数集合θ来最大化式(9)中Τ的值。其中,w和c均表示一个词;D为所有单词w和它的语境中单词构成的组合的集合。
CBOW模型通过计算当前词的上下文来得到当前词出现的概率,认为上下文中所有词对当前词出现的影响程度是相同的,而不考虑这些词出现的顺序,因此被称为连续空间中的词袋模型。该模型包括输入、投影和输出3层,输入与输出层表示词向量,维数通常在50至100之间。设投影层维数为D,输入层上下文窗口长度为N,训练语料词典大小为|| V,CBOW模型的训练复杂度Q为:
采用同样的表达方式,若上下文窗口长度为N,Skip-gram模型的训练复杂度Q为:
通过式(8)、(10)可以看出,相同条件下Skipgram模型与CBOW模型相比计算复杂度要高。研究表明[20-21],两个模型的差异在于:CBOW模型能够在训练中获取更好的语法信息,得到较高的语法测试准确性,而Skip-gram模型对词的特征刻画相对更加准确,具备更好的语义区分性,能够得到相对较高的语义计算精度。
CBOW模型和Skip-gram模型的共同优点在于能够从数亿级的海量未经标注的数据中得到高质量的词向量训练结果,能更好地刻画词之间的相关或相似性,能够描述词和短语之间的相关性,对长距离跨度的词间关系能够进行有效的表达。同时训练的结果模型可以作为自然语言处理应用中词、句子或篇章主题相似或相关性计算的基础资源。
2.2 Word2vec与语义相似度计算
Word2vec是谷歌2013年发布的词向量训练与生成工具,能够从大规模未经标注的语料中高效地生成词的向量形式,并提供了CBOW模型和Skip-gram模型的实现(https://code.google.com/p/word2vec)。因其简单易用,获取词向量的结果较好,而受到了广泛的关注。目前,Word2vec工具已有多个编程语言实现包,如C、Java、Python等,较为方便研究者学习和调用,也因此成为可利用的基于词的语义相似度计算工具之一。尽管学界已经推出了Sentence2vec[22-23]、Topic2vec[24]、Doc2vec[25]等句向量、话题向量或篇章向量计算方法,但由于词一直是自然语言处理研究的基础之一,加之以词为统计元素,语料相对更为丰富,计算复杂度也易为大众接受,相比较而言Word2vec近几年应用则更为普遍[26-28]。
本文采用ansj编写的Java版本的Word2vec作为词向量的训练工具(https://github.com/ansjsun/Word-2vec_java)。为方便测试,采用《人民日报》2014年6月30日至2015年9月6日共434天的报纸文本作为训练语料,在训练之前剔出图片类、广告类新闻、正文句子数少于两句的新闻,使用NLPIR2015(http:// ictclas.nlpir.org/downloads)进行分词处理并剔除词性信息,最后共34 033篇语料参与训练,词总数为202 119。由于Word2vec最初开发时主要针对英文语言的应用,而众所周知,英文和中文之间存在着一定的差异,如中文重语义,更倾向于通过上下文来确定词的具体使用含义,英文则可通过词法等结构信息来体现时态和使用含义。文献[19]通过研究和大规模语料实验表明,Word2vec工具可以较好地适用于中文处理,且采用Skip-gram模型要优于采用CBOW模型。同时当词向量维度保持在170至250维之间时,能够取得相对稳定和准确的效果。在多次训练后,本文设置上下文窗口长度为5,维度为200,并采用Skip-gram模型进行训练。训练结束后,抽样了几种不同类型的词的前5个相近词,按向量距离倒序排列,结果如表1所示。
不难看出,对于名词、动词及形容词这些内容词而言,使用Word2vec工具能够取得较好的结果。在句子相似度计算中,无论以何种方式通常都撇不开词之间关系的计算,而词间关系的计算往往更侧重于实词。基于前人的研究和上述实验结果(http:// www.kaxiba.com/data2015.zip),可以认为:在句子相似度计算过程中,融入词向量特征强化非重叠实词间的相似性度量,能够提升句子相似度计算的准确性。下文基于该假设设计了一种融合词向量的多特征句子相似度计算方法,并进行了实验分析。
两个句子之间的相似程度取决于多个因素,如句子中的词数、词义、词序、句子结构、上下文语境等。限于句子结构及上下文语境等计算资源的获取或计算实现难度太大,一般倾向于通过句子中词义间的相关性和句子的表层信息来计算句子的相似性。本文提出的融合词向量的多特征句子相似度计算方法主要考察句子中重叠词的词数、重叠词的连续性、重叠词在句子中的顺序以及非重叠词的语义相似性等因素。
算法主要框架流程如图2所示,主要包含以下几个步骤。
步骤1求取句子间的公共词块列表。对于输入句子S1和S2,如果两个句子值不为空且长度大于0,分别进行分词处理和词性标注,提取动、名、形3类词作为内容词后,运用动态规划算法求取两个句子的公共词块列表C。该列表中不仅包含词,而且包含词块,但不包含单个字。
例如,对于两个句子“习近平同哈萨克斯坦总统纳扎尔巴耶夫会谈”和“本报北京8月31日电(记者李伟红)国家主席习近平31日在人民大会堂同哈萨克斯坦总统纳扎尔巴耶夫举行会谈”,经分词处理及计算后得到的公共词块列表C中元素依次为“习近平”、“哈萨克斯坦总统纳扎尔巴耶夫”、“会谈”。
Fig.2 Process flowchart of algorithm图2 算法处理流程图
Table 1 Sampling based on the results of Word2vec training model表1 基于Word2vec训练结果的抽样
步骤2以公共词列表为基础计算两个句子的相似度。以公共词列表C为基础,从句子S1和S2重叠词个数、重叠词在两个句子中的连续性和词序一致性三方面来计算两句的相似度。其中重叠词个数和词在句子中的连续性使用式(11)计算:
其中,m为C中元素的个数;L(ci)表示C中第i个元素中包含词的个数;k为连续词加权系数。当ci为独立单词时,L(ci)为1,公式起不到加权的作用,当L(ci)大于1时,即由连续词构成了词块,系数k起到加权的作用。
对于句子S1和S2重叠词在两个句子中词序的相似性,计算步骤为:
(1)以单个词为单位获取两个句子重叠词列表W。
(2)顺序遍历S1,标记同时属于S1和W的词wi在S1中的索引I1,同一词在句子S1中多次出现时,仅记录首次索引,最终得到的索引形如I1=[1,2,3,4,5]。
(3)顺序遍历S2,标记同时属于S2和W的词wj在S1中的索引I2,同一词在句子S2中多次出现时,仅记录首次索引,最终得到的索引形如I2=[4,3,1,2,5]。
(4)计算I2中索引的次序,对不是正常顺序的索引进行惩罚,计算公式如式(12):
其中,当I2中第n个索引比第n-1个索引值小时,对词序相似度进行惩罚,其中Q表示索引差值,δ表示惩罚因子,取值范围为0至1;当I2中第n个索引比第n-1个索引值大时,表示该词在S2中出现的顺序与S1中保持一致,记语序相似度值为1。计算完成后,使用式(13)得到句子中词序相似度的总体值:
式(13)中C(I2)表示索引列表I2中元素的个数。
步骤3使用词向量模型计算非重叠词相似度。对于句子S1和S2中非重叠词部分相似度的计算,采用本文第2章训练的词向量模型进行。
(1)使用两个句子重叠词列表W对句子S1和S2进行过滤,得到非重叠词列表A和B。
(2)循环遍历列表A和B中的词,两两计算词间的相似度wij,计算时采用Word2vec模型中词间的向量距离来度量,如式(14):
其中,n表示Word2vec模型训练时向量的维数;m为向量vi和vj下标值。例如可通过式(14)计算得到“总统”和“国家”、“主席”间的相似度值分别为0.297 951 4和0.522 891 6。在计算完成后,得到词间的相似度矩阵,如式(15)所示:
(3)通过动态规划算法求解句子S1和S2非重叠部分最大相似度值之和dsim并返回。
步骤4融合多特征计算句子整体相似度。在得到句子S1和S2中词的相似度值、词序的相似度值之后,本文通过式(3)计算两个句子的句长相似度lsim,最后采用参数化线性叠加的方式得到两个句子的整体相似度值,计算公式如式(16)所示:
其中,α、β、γ分别为词义、句长、词序相似度调节因子,三者之和为1;k为连续词块加权系数;minL(S1,S2)表示两个句子中最短句包含的实词个数。由于式(12)中计算词序的得分是在句子S1和S2具有公共词块基础上进行的,这里对两者得分相乘。
4.1 实验方法与数据
在实际应用中,句子相似度计算主要用于从一个句子集中找到与目标句子最为相似的句子,或者计算句子集中两两句子的相似度并排序,如自动问答与文本自动摘要等应用,但本质依然需要计算两个句子间的相似度。对于新闻文本而言,一般都有标题和正文两个部分,而标题作为新闻话题的标识,其意义在正文中一般都会通过一个句子或多个句子再次体现。据此,本文以新闻标题为目标句,要求算法从正文中计算与标题最为相似的句子并返回。最后统计算法计算结果与人工选择结果的差异,来考察算法的准确性。
为保证实验的科学可靠,避免新闻文本正文中出现雷同句,本文采用《人民日报》2015年9月1日至9月3日的新闻作为实验源数据,在删除图片类、广告类以及一句话新闻之后,剔除了标题类似“记住那历史瞬间”以及“报告”、“宣言”类主题意义不明显的新闻之后,随机抽取100篇新闻参与实验。在实验进行之前,使用正则表达式结合标点符号进行断句处理,使用NLPIR2015进行分词和词性标注。在词向量计算部分,采用本文第2章《人民日报》语料训练的Word-2vec模型作为词向量计算基础资源。邀请一名汉语语言文学专业硕士研究生手动标记这100篇新闻正文中与标题最为相似的句子作为参考答案。
实验过程中,加上本文提出的句子相似度算法,共有4种算法参与对比分析,分别为:(1)基于字面特征的句子相似度算法;(2)基于多特征融合的句子相似度算法;(3)融合词向量与字面特征的句子相似度算法;(4)融合词向量的多特征句子相似度算法。
为保证实验的顺利进行,方便验证各个算法的实际应用效果,本文对参与实验的算法进行了全部的编码实现,并开发了相应的句子相似度计算与实验系统,主界面如图3所示。
该实验系统能够加载不同的词向量模型,能够基于上述4种算法,通过设置不同的参数,分别从新闻文本中找出与标题最为相似的句子,并输出统计结果。为提高系统的应用价值,该系统采用了开放式设计,不仅能够支持中文,而且可以支持其他语种;不仅能够支持新闻类文本,也可以支持其他类似格式文本,以期为后续学者提供一个便捷的句子相似度研究与实验平台1))实验数据、实验结果、算法源代码、实验系统程序及源代码下载地址为http://www.kaxiba.com/sim2015.zip。。
Fig.3 Main interface of sentence similarity computing experiment system图3 句子相似度计算实验系统主界面
4.2 实验结果分析
在实验过程中,本文以10篇、20篇、50篇、100篇分段统计各种算法的准确率P@10、P@20、P@50和P@100,并统计平均准确率P@avg,α、β、γ、δ的取值分别为0.5、0.3、0.2、0.8,加权系数k为1.5。为方便表示,上述4种算法分别对应简称为LM、MFM、LM_W2V和MFM_W2V算法。在分析过程中,主要考察多特征的引入对句子相似度计算准确率的影响,词向量的引入对句子相似度的影响,以及4种不同的句子相似度计算方法的计算效果。
(1)多个特征的引入对句子相似度计算的影响。基于字面特征的算法和基于多特征融合的算法在本实验中取得的准确率值对比如图4所示。可以看出,对于仅基于字面重叠的算法而言,当引入词的连续性特征和句子中重叠词块的顺序特征后,准确率得到了改善。在实验数据较少时,统计特征不够明显,多特征的改善作用不突出,当超过20篇实验语料后,基于多特征融合的句子相似度计算方法能够取得约10%准确率的提升。可以认为,这两项特征的融入提高了句子相似度计算的准确性。
Fig.4 Accuracy of LM and MFM algorithms图4LM和MFM两种算法的准确率
(2)词向量的引入对句子相似度计算的影响。随后,本文在前述两种算法的基础上融入词向量特征,考察词向量特征引入能否提高句子相似度计算的准确率。引入词向量特征后的对比结果如图5和图6所示。
Fig.5 Accuracy of LM and LM_W2V algorithms图5LM和LM_W2V两种算法的准确率
Fig.6 Accuracy of MFM and MFM_W2V algorithms图6MFM和MFM_W2V两种算法的准确率
从图5中可以看出,基于字面的句子相似度计算方法在融入词向量特征后,取不同比率的实验语料,均能够得到较为明显的准确率提升,平均准确率提升约9%。同时,两种算法的准确率变化趋势较为一致,可以认为,词向量的引入对于提升基于字面的句子相似度计算方法的准确率起到了积极的作用。
图6显示了当在多个特征的基础上再融入词向量特征后句子相似度计算的准确率情况。不难发现,融合词向量特征后,当取不同比率的实验数据时依然能够提升句子相似度计算的准确性,平均提升准确率约5个百分点。同时,从整体上看,融入词向量的多特征句子相似度计算方法准确率趋势仍然和仅基于多特征计算的方法保持大体一致。
综合图5与图6可以得出,融合词向量特征能够提升句子相似度计算的准确率,当特征较少时作用更为明显。
(3)各种相似度算法总体结果对比。为从总体上观察实验中各种方法取得的准确率,图7给出了实验中4种句子相似度计算方法在不同比率实验数据条件下取得的平均准确率情况。
Fig.7 Accuracy of 4 sentence similarity calculation methods图7 4种句子相似度计算方法准确率
从图7中可以观察到,特征的选取以及选取特征的数量对句子相似度计算有着明显的影响。在相同的条件下,词向量的融入能够明显提升句子相似度计算的准确性。同时本文设计的融合词向量的多特征句子相似度计算方法能够取得相对更好的准确率。
4.3 相关结论
在句子相似度计算中,字面重叠和词向量特征属于句子中词义层面的计算,可以视为句子中词义层面的特征;重叠词的连续性、在句子中的语序以及两句的句长特征则倾向于归类为句子结构层面的特征。通过上文实验不难得出如下结论:
(1)在句子相似度计算时,通过词的语义层面或句子结构层面的优化,均有利于提升句子相似度计算的准确性。
(2)单个层面的优化结果往往不如多个层面融合的结果更能提升句子相似度计算的准确性。如图7所示,融合词向量与字面特征的句子相似度算法并没有优于没有融入词向量的多特征融合的句子相似度算法。
(3)词向量的融入能够提升句子中所包含词语义层面计算的准确性,同时结合句子结构层面的特征,能够取得相对最好的句子相似度计算准确率。
句子相似度计算在自然语言处理领域中是一项基础性研究工作,伴随着自然语言处理的发展,相关方法不断演进。本文对前人的研究进行了归类,总结了前人的研究成果,并给出了具有代表性方法的计算公式。基于词向量的语义表示近年来在自然语言处理研究中得到了广泛的关注。首先详细分析了词向量与语义相似度计算的关系,基于《人民日报》语料运用Word2vec工具训练了相关的语义相似度计算模型;随后详细描述了融合词向量的多特征句子相似度计算方法,包括方法的整体框架流程、实现步骤及相关的计算公式。基于前人的研究与本文提出的方法,设计实现了4种句子相似度计算方法,开发了相应的句子相似度实验系统,并基于《人民日报》语料进行了较为详尽的实验。最后从多个特征的引入对句子相似度计算的影响、词向量对句子相似度计算的影响和4种句子相似度计算方法的总体准确率3个层面分析讨论了实验结果,表明了本文方法的有效性及可行性,并基于前文的算法与实验分析,给出了相关结论。
未来的研究将在本文的基础上,一方面尝试采用不同的方法在不同体裁的文本上进行测试,比如在微博、短信息等短文本上的测试情况;另一方面拟扩大语种范围,测试本文方法在英文、俄文等语言上的模型、参数选择和实际应用效果等。
[1]Cranias L,Papageorgiou H,Piperidis S.A matching technique in example-based machine translation[C]//Proceedings of the 15th Conference on Computational Linguistics,Kyoto,Japan,Aug 5-9,1994.Stroudsburg,USA:ACL,1994: 100-104.
[2]Lin C Y,Och F J.Automatic evaluation of machine translation quality using longest common subsequence and skip-bigram statistics[C]//Proceedings of the 42nd Annual Meeting on Association for Computational Linguistics,Barcelona, Spain,Jul 21-26,2004.Stroudsburg,USA:ACL,2004:605.
[3]Pradhan N,Gyanchandani M,Wadhvani R.A review on text similarity technique used in IR and its application[J]. International Journal of Computer Applications,2015,120 (9):29-34.
[4]Adafre S F,Rijke D M.Finding similar sentences across multiple languages in Wikipedia[C]//Proceedings of the 11th Conference of the European Chapter of the Association for Computational Linguistics,Trento,Italy,Apr 3-7,2006. Stroudsburg,USA:ACL,2006:62-69.
[5]Sarkar K,Saraf K,Ghosh A.Improving graph based multidocument text summarization using an enhanced sentence similarity measure[C]//Proceedings of the 2nd IEEE International Conference on Recent Trends in Information Systems,Kolkata,India,Jul 9-11,2015.Piscataway,USA:IEEE, 2015:359-365.
[6]Lin Y S,Jiang J Y,Lee S J.A similarity measure for text classification and clustering[J].IEEE Transactions on Knowledge and Data Engineering,2014,26(7):1575-1590.
[7]Zhang Lin,Hu Jie.Sentence similarity computing for FAQ question answering system[J].Journal of Zhengzhou University:Natural Science Edition,2010,42(1):57-61.
[8]Lan Yanling,Chen Jianchao.Chinese sentence structures similarity computation based on POS and POS dependency [J].Computer Engineering,2011,37(10):47-49.
[9]Chen Lisha.The research and implementation on WordNetbased sentence similarity of automatic question answering system[D].Guangzhou:South China University of Technology,2014.
[10]Xia Tian.Study on Chinese words semantic similarity computation[J].Computer Engineering,2007,33(6):191-194.
[11]Tian Jiule,Zhao Wei.Words similarity algorithm based on Tongyici cilin in semantic Web adaptive learning system[J]. Journal of Jilin University:Information Science Edition, 2010,28(6):602-608.
[12]Zhang Peiying.Model for sentence similarity computing based on multi-features combination[J].Computer Engineering andApplications,2010,46(26):136-137.
[13]Brown P F,Desouza P V,Mercer R L,et al.Class-based ngram models of natural language[J].Computational Linguistics,1992,18(4):467-479.
[14]Mikolov T,Kombrink S,Burget L,et al.Extensions of recurrent neural network language model[C]//Proceedings of the 2011 IEEE International Conference on Acoustics,Speech and Signal Processing,Prague,Czech,May 22-27,2011. Piscataway,USA:IEEE,2011:5528-5531.
[15]Devlin J,Zbib R,Huang Z,et al.Fast and robust neural network joint models for statistical machine translation[C]// Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics,Baltimore,USA,Jun 23-25, 2014.Stroudsburg,USA:ACL,2014:1370-1380.
[16]Zhang Jian,Qu Dan,Li Zhen.Recurrent neural network language model based on word vector features[J].Pattern Recognition andArtificial Intelligence,2015,28(4):299-305.
[17]Bengio Y.Deep learning of representations:looking forward [C]//LNCS 7978:Proceedings of the 1st International Conference on Statistical Language and Speech Processing,Tarragona,Spain,Jul 29-31,2013.Berlin,Heidelberg:Springer, 2013:1-37.
[18]Mikolov T,Chen K,Corrado G,et al.Efficient estimation of word representations in vector space[EB/OL].[2015-10-15]. http://arxiv.org/pdf/1301.3781v3.pdf.
[19]Yu Mo,Dredze M.Improving lexical embeddings with semantic knowledge[C]//Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics, Baltimore,USA,Jun 23-25,2014.Stroudsburg,USA:ACL, 2014:545-550.
[20]Xiong Fulin,Deng Yihao,Tang Xiaosheng.The architecture of Word2vec and its application[J].Journal of Nanjing Normal University:Engineering and Technology Edition,2015, 15(1):43-48.
[21]Zhang Dongwen,Xu Hua,Su Zengcai,et al.Chinese comments sentiment classification based on Word2vec and SVM [J].Expert Systems withApplications,2015,42(4):1857-1863.
[22]Iyyer M,Boyd-Graber J,Daumé III H.Generating sentences from semantic vector space representations[C]//Proceedings of the 2014 Conference on Neural Information Processing Systems Workshop on Learning Semantics,Montréal,Canada,Dec 8-13,2014.
[23]Singh P.Decompositional semantics for document embedding[D].Indian Institute of Technology Kanpur,2015.
[24]Niu Liqiang,Dai Xinyu.Topic2Vec:learning distributed representations of topics[EB/OL].[2015-10-15].http://arxiv. org/pdf/1506.08422.pdf.
[25]Matt K,Yu Sun,Nicholas K,et al.From word embeddings to document distances[C]//Proceedings of the 32nd International Conference on Machine Learning,Lille,France,Jul 6-11,2015:957-966.
[26]Wolf L,Hanani Y,Bar K,et al.Joint Word2vec networks for bilingual semantic representations[J].International Journal of Computational Linguistics and Applications,2014,5 (1):27-44.
[27]Goldberg Y,Levy O.Word2vec explained:deriving Mikolov et al.'s negative-sampling word-embedding method[EB/OL]. [2015-10-15].http://arxiv.org/pdf/1402.3722.pdf.
[28]Su Zengcai,Xu Hua,Zhang Dongwen,et al.Chinese sentiment classification using a neural network tool—Word2vec [C]//Proceedings of the 2014 International Conference on Multisensor Fusion and Information Integration for Intelligent Systems,Beijing,Sep 28-29,2014.Piscataway,USA: IEEE,2014:1-6.
附中文参考文献:
[7]张琳,胡杰.FAQ问答系统句子相似度计算[J].郑州大学学报:理学版,2010,42(1):57-61.
[8]蓝雁玲,陈建超.基于词性及词性依存的句子结构相似度计算[J].计算机工程,2011,37(10):47-49.
[9]陈丽莎.自动问答系统中基于WordNet的句子相似度计算研究与实现[D].广州:华南理工大学,2014.
[10]夏天.汉语词语语义相似度计算研究[J].计算机工程, 2007,33(6):191-194.
[11]田久乐,赵蔚.基于同义词词林的词语相似度计算方法[J].吉林大学学报:信息科学版,2010,28(6):602-608.
[12]张培颖.多特征融合的语句相似度计算模型[J].计算机工程与应用,2010,46(26):136-137.
[16]张剑,屈丹,李真.基于词向量特征的循环神经网络语言模型[J].模式识别与人工智能,2015,28(4):299-305.
[20]熊富林,邓怡豪,唐晓晟.Word2vec的核心架构及其应用[J].南京师范大学学报:工程技术版,2015,15(1):43-48.
LI Feng was born in 1982.He received the Ph.D.degree in computational linguistics from PLA University of Foreign Languages in 2012.His research interests include natural language processing,big data analytics and corpus linguistics,etc.
李峰(1982—),男,河南固始人,2012年于解放军外国语学院计算语言学专业获得博士学位,主要研究领域为自然语言处理,大数据分析,语料库语言学等。
HOU Jiaying was born in 1993.She is an M.S.candidate at Kunming University of Science and Technology.Her research interests include nature language processing and information retrieval,etc.
侯加英(1993—),女,山东泰安人,昆明理工大学硕士研究生,主要研究领域为自然语言处理,信息检索等。
ZENG Rongren was born in 1973.He received the M.S.degree in computer science and technology from National University of Defense Technology in 1997.His research interests include information system design,artificial intelligence and radio frequency identification,etc.
曾荣仁(1973—),男,福建莆田人,1997年于国防科技大学计算机科学与技术专业获得硕士学位,主要研究领域为信息系统设计,人工智能,射频识别等。
LING Chen was born in 1980.He graduated from PLA University of Science and Technology in 2001.His research interests include big data analysis,information system design and artificial intelligence,etc.
凌晨(1980—),男,山东淄博人,2001年毕业于解放军理工大学,主要研究领域为大数据分析,信息系统设计,人工智能等。
Research on Multi-Feature Sentence Similarity Computing Method with Word Embedding*
LI Feng1,2+,HOU Jiaying3,ZENG Rongren1,LING Chen1
1.Logistics Science Research Institute of PLA,Beijing 100166,China
2.School of Computer Science and Engineering,Beihang University,Beijing 100191,China
3.School of Information Engineering and Automation,Kunming University of Science and Technology,Kunming 650504,China
+Corresponding author:E-mail:li_bopr@126.com
Based on the summarization of sentence similarity computing methods,this paper applies 34 000 pieces of texts of People's Daily to train word vector space model for semantic similarity computing.Then,based on the trained word vector model,this paper designs a multi-feature sentence similarity computing method,which takes both word and sentence structure features into consideration.Firstly,the method takes note of possible effects of the number of overlapping words and word continuity,and then applies word vector model to calculate the semantic similarity of non-overlapping words.Regarding the aspect of sentence structure,the method takes both overlapping word order and sentence length conformity into consideration.Finally,this paper designs and implements four different sentence similarity calculating methods,and further develops an experimental system.The experimental results show that the method proposed in this paper can get satisfactory results and the combination and optimization upon the features of words and sentence structures can improve the accuracy of sentence similarity calculating.
word embedding;sentence similarity;Word2vec;algorithm design
10.3778/j.issn.1673-9418.1604029
A
TP391
*The National Natural Science Foundation of China under Grant No.61370126(国家自然科学基金);the National High Technology Research and Development Program of China under Grant No.2015AA016004(国家高技术研究发展计划(863计划));the National Social Science Foundation of China under Grant No.15GJ003-154(国家社会科学基金);the Fund of the State Key Laboratory of Software Development Environment under Grant No.SKLSDE-2015ZX-16(软件开发环境国家重点实验室探索性自主研究课题基金).
Received 2016-04,Accepted 2016-06.
CNKI网络优先出版:2016-06-23,http://www.cnki.net/kcms/detail/11.5602.TP.20160623.1401.020.html
LI Feng,HOU Jiaying,ZENG Rongren,et al.Research on multi-feature sentence similarity computing method with word embedding.Journal of Frontiers of Computer Science and Technology,2017,11(4):608-618.