相似文件的自动侦测方法技术

技术编号:2842450 阅读:224 留言:0更新日期:2012-04-11 18:40
一种自动侦测相似文件的方法,该方法是对一文件集里的每一篇文件进行词汇断词、标点符号删除、停用词过滤、词汇正规化等前置处理,然后建立每个词汇到每篇文件的一反向索引档,接着将每一篇待比对文件同样经过上述的步骤处理后,透过反向索引档提供的索引功能,快速查阅待比对文件中每个词汇在文件集内每一篇文件出现的次数,并按照给定的相似度公式,计算出待比对文件与其他文件的相似度,如此搜集文件之间的相似度,依照给定的相似度门槛过滤后,即可侦测所有相异的相似文件。

【技术实现步骤摘要】

本专利技术是有关于一种相似文件的侦测方法,且特别是有关于一种具备相似度定义弹性的自动侦测方法,其具有渐进式快速侦测所有相异的相似文件的特性。
技术介绍
电脑文书软体的普遍应用,造成数位文件的大量增加。在处理或管理数位文件时,常常需要某些自动侦测或比对文件的功能。就如同数位文字在生产与利用过程中,需要基本的词汇比对技术,数位文件本身也需要类似的功能,也就是“比对”的“对象”要从“词汇”提升到“文件”的层次。这里所说的“文件”,是指由自然语文或词汇形成的一段或一篇文字。例如一般的文章、文章的“段落”、文章的“句子”、公文的“主旨”等栏位、使用者提问的“问题”或服务人员回答的“答案”等,都可视为是一篇篇的“文件”。了解哪些“文件”雷同或相似,可以有很多应用。例如,当“文件”是使用者“提问的问题”时,侦测相似的文件,可以指引使用者参考过去已经有答案的类似问题,免除使用者等待其问题被回答的时间,同时避免类似的问题一再被提问。又如,当“文件”是公文的“主旨”时,侦测相似的文件,可以将同样案件的公文全部找出来,免除不知道要如何下查询词以找出所有同案公文的困扰。再如,当“文件”是文章的段落或句子时,侦测相似的文件,可以得知某些文章的内容,是否抄自某些文章的某些段落。再者,侦测相似文件,可以得知相同主题的文件,是否被分派到相同的类别,以便了解人工进行文件分类的一致性与可靠性。词汇的相似比对或侦测,可以简单用字串比对,以比对是否相同,或用过去习知的n-gram(n连字,即任意相连的n个字元)断词方法进行比对,以比对其近似性。例如“李远哲院长”与“李院长远哲”,用1-gram比,则两个词汇都包含了“李”、“远”、“哲”、“院”、“长”等五个单连字,因此近似度是1。但只用单连字比对,则“日本”与“本日”的近似度也是1。若同时以单连字与双连字来断词,将断词后的结果视为向量,再以向量夹角的余弦公式(cosine)来比对相似度,则“李远哲院长”与“李院长远哲”两个词汇,可转换成以(李,远,哲,院,长,李远,远哲,哲院,院长,李院,长远)为向量,其中(李,远,哲,院,长)为取自“李远哲院长”与“李院长远哲”的单连字,(李远,远哲,哲院,院长)为取自“李远哲院长”的2连字,而(李院,长远)则为取自“李院长远哲”的2连字,并以(李,远,哲,院,长,李远,远哲,哲院,院长,李院,长远)分别对照“李远哲院长”与“李院长远哲”两个词汇,以该对应各分量维度的字串在词汇中出现的次数做为该分量维度的向量分量值,而得到(1,1,1,1,1,1,1,1,1,0,0)与(1,1,1,1,1,0,1,0,1,1,1)两向量值,且由余弦公式可算出此两向量余弦夹角为7/9=0.78,表示两向量在最高值为1的度量中,相似度为0.78。同理,“日本”与“本日”的相似度,也拉开到2/4=0.5。从上例可知,比较词汇的相似度,跟断词方式、比对的度量公式有关。而比较文件的相似度,则跟更多因素有关。例如,文件中有标点符号、同义词汇、文句增删修改、词汇顺序更动、文句重组、某些词汇无比对意义(可称为“停用词”)、英文还有时态与大小写的变化等种种情况。本专利技术提出的方法,可将这些因素考虑进去,弹性的进行相似文件的比对与侦测。本专利技术所指的相似文件侦测问题,是指从一堆多篇文件的文件集中,为每一篇文件或某一篇新给定的文件,找出跟其相似度超过某一门槛的所有其他的相似文件。后续的应用如有需要,可再将侦测得到的相似文件组合在一起,以获得所有相异的相似文件群组。解决此问题的技术可运用于复本侦测(重复文件剔除)、同案追踪、抄袭侦测、近似问题比对、文件分类不一致侦测等,因此是相当具有应用价值的技术。在过去习知的方法中,跟解决上述问题的相关技术有资讯检索领域常提到的文件归类方法(document clustering)。例如,在1989年GerardSalton写的书中(“Automatic Text ProcessingThe Transformation,Analysis,and Retrieval of Information by Computer”Addison-Wesley),提到有两种主要的方法可对文件集进行归类的动作一种是可称为由上而下的“分割法”(Divisive Clustering);一种是由下而上的“凝固法”(Agglomerative Clustering)。“分割法”需事先假定要将文件集分割成几个群组,但此步骤本身就不符合我们的问题需求。例如在侦测文件复本时,我们事先根本不知道有哪几篇文件有复本以及有多少复本,因此不可能事先知道要分割成几个群组。在“凝固法”方面,其必须先算出任意两文件的相似度,再根据文件之间的相似度利用完全连结(complete-link)、单一连结(single-link)或其他类似的方法两两合并成更大的群组(或树状结构),直到全部文件都分在一个群组(树状结构)之下,当给定某个门槛值后,再利用拜访树状结构的演算法,求得超过门槛的各个群组。然而这整个计算过程,超乎我们问题的要求许多,很多过程是可以不必要的。例如,在侦测文件复本方面,不需计算任意两文件的相似度,亦即m*(m-1)/2个相似度,其中m是文件篇数,而只需计算比较有可能相似的文件即可,以加速相似文件的侦测。虽然Salton的书中,也有提到类似的加速作法,但其需要庞大的记忆体,因而不够实用。Salton书中提到的方法是利用反向索引档,将词汇出现的(对应到的)文件拿来计算其相似度,从而避开盲目计算两文件相似度的问题,但因要计算完所有词汇,两文件的相似度才算计算完成,因此计算机需要极庞大的主记忆体,来记录所有暂时的相似度,否则用到辅助记忆体,其速度将变得极缓慢,而失去运用该技术的价值。在我们实作的过程中发现,以“凝固法”对超过8千篇文件进行相似度计算,一般高阶桌上型电脑的主记忆体就容易用光,而难以进行更多文件的相似度计算动作。另外,相似度计算完成后,不管是以complete-link或single-link做归类,其运算量也相当可观。根据Hinrich Schütze的估计,complete-link的计算量约0(m2log(m)),而single-link的计算量为0(m2)。然而在本专利技术所指的侦测相似文件的问题中,超过门槛的相似文件,即可视为等价的文件,不再需要细分彼此间的相似度,因此可以有更有效率的演算法将所有相异的相似文件分群归类出来,而不必藉助complete-link或single-link等较复杂的演算方法。解决这里所提相似文件自动侦测的问题,真正比较相关的技术,目前还不是很多,在此详细介绍两种过去习知的自动侦测的方法,分述如下一、R-测量法(R-measure)Khmelev and Teahan在ACM SIGIR 2003年的会议中发表一篇论文,他们根据文件子字串的重复程度,提出R-measure的方法来计算文件集内每一篇文件在文件集中的相似度。所谓字串(string)可视为一连串的字元(character)。以T代表一字串,则以T代表其子字串(substring),其中i与j为正整数,且i<=j。若以|T|代表T的长度,则T=T,T为T的第i个字元,T称为T的字本文档来自技高网...

【技术保护点】
一种相似文件的自动侦测方法,用以自多个测试文件中侦测出与一待比对文件具有相似内容或相似主题的多个相似文件,其特征在于该自动侦测方法包括下列步骤:依照一断词策略,将该些测试文件分别进行断词处理,获得多个断词词汇;根据该些断词词汇,建立一文件向量资讯,其中该文件向量资讯包括对应该些测试文件的多个文件向量,而每一该些文件向量包括多个分量维度及多个向量分量值;将该文件向量资讯转换为词汇到文件的一反向索引档;将该待比对文件依上述步骤,求得一待比对文件向量;选择一相似度比对法,透过该反向索引档,计算出该待比对文件与该些测试文件间的多个相似度;判断该些相似度是否高于一门槛值;以及若高于该门槛值,则将该些相似度所对应的该些测试文件视为该些相似文件。

【技术特征摘要】

【专利技术属性】
技术研发人员:曾元显
申请(专利权)人:威知资讯股份有限公司曾元显
类型:发明
国别省市:71[中国|台湾]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1