利用深度学习的文本相似度计算方法*

2018-05-29 01:16汪一百叶剑锋
湘潭大学自然科学学报 2018年2期
关键词:汉明计算方法语料库

汪一百, 陈 实, 叶剑锋

(1.新型药物制剂研发湖南省重点实验室培育基地,湖南 长沙 410219; 2.长沙医学院 信息工程学院,湖南 长沙 410219;3.南京航空航天大学 机电学院,江苏 南京 210016)

随着互联网技术和计算机硬件设计的快速发展,以及各类新业务、新需求的不断涌现,现代社会的数据信息呈现爆发式增长.在这些海量数据中,信息共享程度越来越高,给人们的工作和生活带来极大便利的同时,也给识别、区分和查找有效数据带来了非常大的困难.如何鉴别信息的相似性已经成为了海量数据文本处理中亟待解决的课题[1].

文本相似度是表示两个及以上文本之间匹配程度的一个度量,其取值的大小反映了文本相似程度的高低.取值越小,文本相似度越低;取值越大,文本相似度越高.一般来说,文本相似度计算可以分为两个方面:语义相似度计算和非语义相似度计算.文本相似度计算是自然语言处理中的基础问题,在信息检索、自动问答和机器学习等领域应用广泛[2].目前,已有很多成熟的研究方法可用于非语义文本相似度的计算.然而,语义文本相似度计算仍然有很多工作要做[3].

文献[4]针对传统文本相似度计算的缺点,提出了一种考虑文本向量空间模型相似度比较、文本长度参数和互信息特征次抽取的改进算法,有效提高了文本相似度计算的准确性和有效性.文献[5]在DNA序列比对算法的启发下,提出了一种基于词位置与序列匹配的相似度计算方法(文本流算法),实验结果表明了所提算法在释义检测、文本蕴涵识别和文档聚类中的优越性.文献[6]提出了一种基于字袋特征和多层语义特征的新型文本分类方法,通过将在线线性辨别分析扩展为多层主题模型,即可实现文本的语义要素提取.文献[7]针对生物医学领域中的句级语义相似度计算,提出了字符串相似度、分布式向量、一般及特定领域本体等多种检测算法,并综合这些算法研发了基于监督回归的相似度计算模型.文献[8]利用DNA计算技术实现了磨损刀具图片的相似度检测,为图片文本的模式识别提供了一种解决方案.文献[9]针对临床决策支持系统中的文本相似度计算问题,提出了一种考虑语义相似关键词和文本相似关键词对文本相似度所产生的影响的改进方法,提高了计算结果的准确性.

本文在上述研究的基础上,提出一种基于神经网络深度学习和高频词滤波的文本相似度计算方法:在建立词向量模型的基础上,利用深度学习算法计算文本语义相似度,并利用高频词滤波降低词频对文本相似度的干扰,从而提高计算精度,保证计算效率.此外,通过对大量中文词库中的内容进行训练验证了所提方法的有效性.

1 文本相似度深度学习计算方法

1.1 词向量模型

为了计算文本相似度[10],首先必须对文本中的词进行建模,因此首先给出包括输入层、中检测、输出层的词向量模型建立方法.文本中的句子S可以表示为词的向量W,即

S→W=(W1,W2,…,Wn),

式中Wi代表词的权重,i=1,2,…,n.通过求取词W的上下文[11]Con(W),即可得到包括r个词向量的输入层R,即

通过对输入层R中的向量进行累积求和,即可得到中间层M:

此时,利用下式即可计算得到词向量的输出:

(1)

由于公式(1)得到的词向量还存在一定的冗余,因此需要对其进行优化.此时,通过把区间[-5,5]进行500等分,得到x1,x2, …,x500,计算每个xk(k=1, 2, …, 500)的Logistic函数:

此时,即可利用下式对公式(1)所示的输出层词向量进行训练,得到向量T:

式中a为训练次数.最后,通过下式删除T中的高频词,即可得到优化后的输出层词向量F:

式中γ为高频滤波常数.通过这些优化措施,即可实现输出层词向量免受干扰影响,并大幅度降低信息冗余.

2.2 文本相似度计算

在计算文本相似度之前,需要计算表征词一致性程度的语义距离[12],其取值越大表明词一致性程度较高,反之则较低.词向量Y=(y1,y2, …,yn)、Z=(z1,z2,…,zn)之间的语义距离为:

在利用词向量计算语义文本相似度的基础上,即可通过计算特征词语义相似度来比较文本的相似度,这是文本相似度计算的主要方法.文本相似度U计算公式如下:

U=2θ/(θY+θZ),

式中θ代表文本长度.

表1 语料库

表2 语义距离结果

2 实验分析

为了验证所提方法的有效性,利用网络爬虫从“百度新闻”“新浪新闻”“腾讯新闻”等多个网站获取语料库,用于实验分析(如表1所示),并与传统的、基于汉明距离的文本相似度计算方法[13]进行了对比.

在表1所示语料库中选择约2 000 000个中文句子进行词向量训练,获得约800 M词向量文件,同时选择中心词“房价”来计算语义距离,得到表2所示的结果.

从上述结果可以看出,越靠近中心词的单词,语义距离就越大.然而部分词从直观上讲与中心词的语义距离应该不会很大,但计算结果却变得比较大,这可能是由于语料中存在关联单词导致的.因此,语料库的选定对词向量的训练结果有着重要的影响.

在分析完语义距离计算的相关问题后,开始利用基于汉明距离的算法和提出的算法分别计算纯文本的文本相似度.测试文本由网络爬虫从新浪新闻网站获得,包括8 500组需要进行比较的纯文本和10组需要比较的语义文本,计算结果分别如图1、2所示.

对于纯文本来说,基于汉明距离算法计算的文本相似度为0.576,而利用提出的算法计算的文本相似度为0.915.对于语义文本来说,基于汉明距离算法计算的文本相似度为0.358,而利用提出的算法计算的文本相似度为0.952.

由此可知,对于纯文本,当文本的相似度较高或者较低时,这两种算法的计算结果几乎相同;而当文本部分相似时,这两种方法则存在比较明显的区别.这是因为汉明距离算法只能处理相同关键词的关联关系,而提出的算法则可以处理文本中的所有词.对于语义文本,提出的方法明显好于汉明距离算法.这是因为汉明距离算法只能处理相同的关键词,而当这些相同的关键词较少或较多时,计算结果会变得很差.但是,词向量方法则可以直接计算出语义距离,从而简化了文本相似度计算复杂度,大大提升了计算精度.

3 结 论

本文提出一种基于深度学习方法的文本相似度计算方法,通过与基于汉明距离的算法进行实验对比,证明提出的基于深度学习的词向量方法不仅保证了非语义文本的相似度计算的准确性,而且提高了语义相关文本之间的相似度计算精度.

参考文献

[1] 高雪霞, 炎士涛. 基于WordNet词义消歧的语义检索研究[J]. 湘潭大学自然科学学报, 2017, 39(2): 118-121.

[2] 曹海, 彭龑. 一种基于图像内容的对应关系在语义检索中的应用[J]. 湘潭大学自然科学学报, 2017, 39(2):122-126.

[3] 武永亮, 赵书良, 李长镜,等. 基于TF-ID F和余弦相似度的文本分类方法[J]. 中文信息学报, 2017, 31(5): 138-145.

[4] WANG J,YANG L,YAN T, et al. Text similarity computing method based on vector space model[J]. Science Mosaic, 2017(2):9-13.

[5] MRABET Y,KILICOGLU H,DEMNER-FFSHMAN D. TextFlow: a text similarity measure based on continuous sequences[C]//Acl: the Conference of the Association of Computational Linguisitics, 2017: 118-125.

[6] CHEN H C,GUO X H,LIU L Q, et al. A short text similarity measure based on hidden topics[C]//International Conference on Computer Science & Technology, 2017: 1101-1108.

[7] SOGANCIOGLU G, ÖZTÜRK H, ÖZGÜR A. BIOSSES: a semantic sentence similarity estimation system for the biomedical domain[J]. Bioinformatics, 2017, 33(14): 41-49.

[8] D’ADDONA D M,ULLAH A M M S,MATARAZZO D. Tool-wear prediction and pattern-recognition using artificial neural network and DNA-based computing[J]. Journal of Intelligent Manufacturing, 2017, 28(6): 1-17.

[9] WANG W,JIANG Q,LV T, et al. An improved text similarity algorithm research for clinical decision support system[C]//International Conference on Cloud Computing & Intelligence Systems, 2016: 155-159.

[10] 邢长征, 赵全颖, 王伟,等. 基于优化密度的耦合空间LDA文本聚类算法研究[J]. 计算机应用研究, 2017, 34(7): 1966-1970.

[11] CHEN Y,LIN Z, ZHAO X, et al. Deep learning-based classification of hyperspectral data[J]. IEEE Journal of Selected Topics in Applied Earth observations & Remote Sensing, 2017, 7(6): 2094-2107.

[12] 党红恩,赵尔平,刘炜,等.利用数据变换与并行运算的闭频繁项集挖掘方法[J]. 湘潭大学自然科学学报, 2018, 40(1): 119-122.

[13] 胡维华, 鲍乾, 李柯. 结合汉明距离及语义的文本相似度量方法研究[J]. 杭州电子科技大学学报, 2016, 36(3): 36-41.

猜你喜欢
汉明计算方法语料库
浮力计算方法汇集
极限的计算方法研究
具有最优特性的一次碰撞跳频序列集的新构造
《语料库翻译文体学》评介
媳妇管钱
不同应变率比值计算方法在甲状腺恶性肿瘤诊断中的应用
基于JAVAEE的维吾尔中介语语料库开发与实现
语篇元功能的语料库支撑范式介入
一种伺服机构刚度计算方法
一种新的计算汉明距方法