计算机信息论文面向协调搜索的文本相似度计算方法
所属栏目:电子技术论文
发布时间:2014-08-21 15:46:16 更新时间:2014-08-21 14:48:54
经济的发展使得计算机走进了千家万户,成为了人们日常工作、生活中获取信息,了解新闻资讯,甚至是购物等的重要帮手。网络的发展给人们的生活带来了极大的便利,从网上查找信息与看报纸、听新闻相比更加快捷和全面,越来越多的网民习惯于一键上网,获取所需的资讯。
摘要:近年来文本相似度计算在文本聚类、智能检索、网页问答、结果去重等其他许多自然语言处理领域具有举足轻重的地位,尤其是在搜索引擎中。该文简单论述了文本相似度计算的常用方法,以及本系统如何利用文本相似度计算判断多文本的同一性。更重要的是提出了迭代搜索的概念,进一步细化信息检索工作,尽可能确保信息检索的正确性,提高效率,解放人工。
关键词:计算机信息论文,空间向量,相似度,迭代搜索
Text Similarity Calculation Based on Search System
SUN Cheng-cheng, LI Ai-ping, HUANG Jiu-ming
(National University of Defense Technology, Changsha 410000, China)
Abstract: In recent years, text similarity calculation has played a decisive role in text clustering, Web intelligent information retrieval, question answering system, Webpage duplicate removal, Natural Language Processing and many other files, especially in the search engine. This article briefly discusses the commonly used methods of text similarity computing, as well as the system of how to use text similarity calculation to determine the same multiple text. More important thing is proposing the concept of the iterative search, which made further refining information retrieval, as far as possible to ensure correctness, information retrieval to improve the efficiency, the liberation of artificial.
Key words: space vector; similarity; iterative search
1 概述
我们都曾经或正在遭受着TB级数据的困扰,如何快速在这浩如烟海的信息中,快速准确的获取相关信息不仅仅能够节省大量的时间,提高工作效率,也是测评搜索系统性能的关键。又由于汉语具有的不同于英文的独特的特点,使得针对于汉语言的具有针对性的搜索更加富有挑战性。为了提升系统性能,满足用户从互联网上得到对于特定问题更精确的答案,本系统应用余弦向量计算出依据用户搜索条件返回的文本之间的相似度,去除无关重要的噪音信息,确保系统的可靠性能。通常情况来说,由于搜索条件单一或者不准确等问题会影响初次搜索结果的准确性和深度,为了得到更多更全面的信息,我们往往要进行多次迭代搜索。传统做法中,一般都是利用人工在搜索返回的结果中反复比对,判断是否是相同信息,或者说是否是搜索的目标信息,为了保证结果的准确性,必然要耗费大量的人力和时间。
本系统应用文本相似度计算就是要将人工从大量繁琐的信息检索和比对过程中释放出来,同时保证结果准确。虽然人工干预仍然是不可避免的,但是能够大大减少成本开销就是不容忽视的进步。我们用文本相似度来表示两个或者多个文本之间的匹配程度,相似度值是由0~1之间的数字来表示,相似度值越接近1,我们就认为待比较的文本之间的相似度就越高,反之,如果相似度值越接近0,我们则认为待比较文本之间的相似度就越低。文本相似度计算不仅仅应用在文本聚类、智能搜索等方面,更是在网页去重等很多自然语言处理领域中被广泛使用。能否有效的计算文本相似度是问题是否能解决的关键。本系统中文本相似度计算应用于判断搜索到的网页信息之间的相关程度,以提升智能化程度。
2 传统的基于向量空间的文本相似度计算
伴随着计算机技术的发展,人们越来越重视文本相似度的计算,到目前为止,已经完成了很多的算法研究,也有不同的侧重点,如Saton等研究的信息索引方法,用来计算短语与篇章之间的相似度[1];Willett研究的文档分类算法,用来计算篇章与篇章之间的相似度[2];Callan研究的文章段落检索等[3]。用到的文本相似度计算方法均是基于统计学的计算方法:向量空间模型、广义向量空间模型、隐性语义索引模型、基于属性论的方法、基于海明距离的计算方法、基于数字正文的重构方法等。这些方法均是基于大规模语料库和长时间的训练得到实验数据,具有很大的局限性。本系统中使用的是基于TF-IDF算法的空间向量模型,最大的不同之处在于,其他方法无论是研究篇章与篇章还是其他应用,都是判断较少文本之间的相似度,本系统立足于信息检索需求,围绕共同的事件或是其他搜索条件,进行信息搜索。相似度计算的目的是从返回的搜索返回的大量的文本中判断相似度,便于用户快速定位目的信息,给用户更好的使用体验。 在比较个两个文本相似度时,常用的基于向量空间的计算公式是根据欧几里得点积和量级公式推导:
[a?b=a?b?cosθ]
得到相似度计算公式:
[Similarity=cosθ=A?BA?B=ni=1Ai+Bini=1Ai2ni=1Bi2]
通过测量两个向量内机的夹角的余弦值来度量他们之间的相似性,如图1:
图1 余弦向量相似度模型
一般情况下来说,对于两篇给定的文档,如果经过文本预处理后得到的所有特征词都相同,那么我们就可以说,这两个文档相似度值为1;反之,如果所有特征值都不相同,我们就说,这两个文档相似度为0。通常来说,这种方法就可以判断出两篇或者少量文本之间的相似度。但是由于这种计算方法,忽略了同一特征词在不同文档中的词频,权重计算的策略过于简单,计算出来的结果往往不够准确。
例如,A和B是两篇待计算的文档,表1中的两篇文档有三个词汇是相同的,根据以上算法,则两篇文档的相似度是极高的。但是从表中我们可以看到,文档A中词频数最高的是E,其次是D,在文档B中词频数都为0,文档B中词频数最高的是G,在文档A中的词频数同样为0,如果简单按照相同特征词数量进行比对必然会不恰当。
表1 两篇文档词汇词频对照
[文档 词汇\&D\&E\&F\&G\&H\&I\&A\&3\&5\&1\&0\&1\&1\&B\&0\&0\&1\&5\&1\&1\&]
在现有系统中,如果只考虑词频数后的搜索结果如图1所示。
3 基于TF-IDF算法的空间向量模型
TF-IDF(term frequency―inverse document frequency)是一种用于资讯检索与文本挖掘的常用加权技术。它是一种基于统计的,评估某个字词对于特定的文件集或者语料集中某个文档的重要程度的方法。
TF-IDF实际上是:TF * IDF,算法的主要思想是利用词频来进行分了,经常与Cosine算法一起来计算文本相似度。最常用的TF-IDF算法为:
[TF-IDF= 某个词在文章中的出现次数文章的总次数 ×log文档总数包含该词的文档总数+1]
将改进后的算法应用到系统中后,明显感觉到计算结果的改变。
图2
虽然引入TF-IDF后的结果,还有一定的不足,精确度还有待提升,但是我们可以很清楚的看到,在同一事件分类上,已经能够更大程度的减少人工干预,虽有不足,但依然可取。
4 迭代查询中的文本相似度计算
为了使检索结果更加精确化,我们在系统中引入了迭代搜索的概念。为了查找我们想要的信息,启动搜索系统后我们键入预先设定的搜索条件,由于搜索语言表述的不精确等原因,通常无法一次就能完成信息检索。我们在系统中提出了迭代搜索的功能,当用户再次搜索时,系统将根据初次检索的结果计算后得到的查询条件提供给用户,用户可以挑选这些查询条件进行迭代搜索,搜索结束后,系统将自动比对当次返回结果与最初返回结果的相似度,根据返回结果判断是否是同一事件。
在保证准确性和提高效率的基础上,这一过程最大程度上节省了人力和时间开销,当然关键信息不可避免的要掺杂人工干预,虽然不能彻底将人工从信息检索过程中解放出来,但是对于搜索系统性能提升具有重大意义。这一信息检索提示功能类似于百度搜索引擎中的相关信息提示,不同的是,百度中的提示关键词是根据海量用户搜索整理出的词频算计的出,需要庞大的知识库做后盾,本系统中的搜索条件推荐,是根据用户的搜索意愿计算得出,具有鲜明的用户倾向。
为了测试系统中条件生成策略是否正确,我们组织人力进行大量的实验。首先,从网络新闻中筛选出200个事件集,作为搜索的输入条件,经过大量反复的试验后,最终确定了推荐条件生成的最优策略。
因此文本相似度计算的精确度是整个过程的关键点,是整个系统性能和效率的保证,在日后的工作中,将致力于文本相似度计算,尤其是在同一事件研判方面,以求极大程度将人工从浩瀚的数据中解放出来。
(下转第4485页)
(上接第4462页)
5 结束语
本文通过实验验证了不同算法下文本相似度计算的结果,证明了用这种方法判断同一事件的可行性,并指出了缺点。提出了多次搜索基础上的信息获取,当然有很多的不足之处,还亟待解决。后续工作将致力于解决实际应用过程中出现的各种问题,不断完善算法,期望得到更好的识别效果,提高效率和精确度,逐步将人工从信息搜索中解放出来。
参考文献:
[1] SALTONG, BUCKLEYC. Term-Weightingapproaches in automatic text retrieval[J]. Inf Processand Manage,1988,24(5):513-523.
[2] WILLETTP.Recent trends in hierarchicaldocument clustering, a criticalrevieW [J]. Inf Processand Manage,1988,24(5):577-597.
[3] CALLAN JP.Passage-levelevidenceindocumentretrieval [C]//Proceedings of the SeventeenthAnnualInternational ACM SIGIR Conference on Researchand Developmentin Information Retrieval.Dublin,1994:302-310.
[4] 李星毅,曾路平,施化吉.基于单词相似度的文本聚类[J].计算机工程与设计,2009(8):1966-1968.
[5] 苟恩东,颜伟.基于语义网计算英语词语相似度[J].情报学报,2006(1):43-48.
[6] 涂新辉,张红春.中文维基百科的结构化信息抽取及词语相关度计算方法[J].中文信息学报,2012(5):109-115.
[7] Clement Farabet,Camille Couprie,Laurent Najman,et al.Learning Hierarchical Features for Scene Labeling[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2013.