一种基于文档签名技术的相似文档识别装置及方法

文档序号:6374555阅读:275来源:国知局
专利名称:一种基于文档签名技术的相似文档识别装置及方法
技术领域
本发明涉及数据挖掘与信息检索技术,尤其涉及一种基于文档签名技术的相似文档识别装置及方法。
背景技术
本发明所称文档,不仅指传统的结构化文本文档,也包括半结构化的超文本标记语言(HTML)网页、图片、视频 等多媒体数据。鉴于文本类文档应用范围较广,本说明书将以文本类文档为例进行说明。相似文档识别对于许多应用领域有着重要意义。以信息检索领域为例,有相关统计数据指出,互联网中存在40%以上的重复或是相似网页。在新闻、视频、图片等垂直搜索产品中,由于转载、分享等操作也产生了大量相似内容。识别出这些相似网页不仅有利于提高数据处理效率,更有助于降低搜索结果重复率以改善用户体验。此外,相似文档识别在抄袭检测、机器翻译等领域也有着重要应用。传统的重复文本识别技术方案采用计算文档MD5值等加密哈希技术,只能解决内容完全相同的重复文档识别问题。然而,相似文档在转载过程中的少许改动可能使得内容上存在一些差异,导致加密哈希技术的失效。目前文本相似性识别主要采用基于向量空间模型(Vector Space Model)的方法,如公开号为CN 102314418,名称为“一种基于上下文关联的中文相似度比较方法”的发明申请(以下称文献I),其将目标文档抽象成文本向量空间中的一个向量,文档中出现的关键词作为该向量的一个维度,通常使用该关键词在文档中出现的次数作为对应维度的值。可以计算两个向量的余弦相似度作为两个文档的相似度量。基于向量空间模型的方法一定程度上解决了相似内容的识别,但是其空间消耗巨大,需要存储每个文档的内容数据,或是压缩后仍然正比于文档内容长度的文本向量信息。公开号为CN101576904,名称为“一种基于有权图来计算文本内容相似度的系统与方法“的发明申请(以下称文献2),其采用从文档集合中构造出有权图,并基于有权图计算图中任意两个节点之间的相似度,进而得到文档的相似度的方法。但该方法只能处理静态的文档集合,不适用于信息检索等流式处理的应用场

-5^ O

发明内容
有鉴于此,本发明的主要目的在于提供一种基于文档签名技术的相似文档识别装置及方法,以解决现有相似文本识别技术中空间复杂度高、无法应对文本流式处理的应用需求,以及空间效率高的重复文本识别技术又无法识别相似文本等的问题;还在于为流式的海量文档提供一种快速的相似性识别方法。为达到上述目的,本发明的技术方案是这样实现的
一种基于文档签名技术的相似文档识别装置,主要包括内容提取模块,特征抽取模块,文档签名计算模块,文档签名索引模块以及相似文档查找模块;其中内容提取模块,用于抽取目标文档的文档标题、正文的文字内容,得到正文内容;特征抽取模块,用于将所述正文内容转换为对应的〈token, weight) 二元组集合的特征表示形式,并传递给所述文档签名计算模块;
文档签名计算模块,用于将原始token转化为对应的哈希值,并结合当前token对应的权重weight更新文档签名值,得到最终的固定长度的文档签名值;
文档签名索引模块,用于将上述的文档签名将存储在文档签名索引模块,或直接存储整个签名库集合;以及
相似文档查找模块,在已有的文档签名索引中查找与其距离小于一定阈值d的文档签名,并将返回相似文档对应的文档签名作为目标文档的最终ID。其中,所述距离为二进制编码的海明距离,所述阈值d为3。一种基于文档签名技术的相似文档识别方法,包括
A、抽取目标文档的文档标题、正文的文字内容,得到正文内容的步骤;
B、将所述正文内容转换为对应的〈token,weight) 二元组集合的特征表示形式,并传递给所述文档签名计算模块的步骤;
C、将原始token转化为对应的哈希值,并结合当前token对应的权重weight更新文档签名值,得到最终的固定长度的文档签名值的步骤;
D、将上述的文档签名存储在文档签名索引模块或直接存储整个签名库集合的步骤;
E、在已有的文档签名索引中查找与其距离小于一定阈值d的文档签名,并将返回相似文档对应的文档签名作为目标文档的最终ID的步骤。其中,所述步骤A具体为
Al、解析网页超文本标记语言HTML源码,找出包含标题、正文内容信息的文本块,在此过程中移除无关信息;
A2、在经步骤Al处理后得到的文本块中移除无关信息处理后,在得到的文本段中使用模板匹配法去除噪音信息。 所述步骤B具体为
BI、首先对文档进行分词处理,得到文本分词结果的term序列;
B2、对于term序列中连续的k个term,组成一个特征token,参数k为2 ;
B3、对于步骤B2中构造出的每一个token,计算对应的权重weight,取token在文档内容中出现的次数tf作为权重指标。所述步骤C中文档签名计算的过程为
对于完成步骤B后得到的〈token, weight)集合,将被作为源文档的特征表示传递给文档签名计算模块,该模块依次将原始token转化为对应的哈希值,并结合当前token对应的权重weight更新文档签名值;当完成特征表示中所有token的处理之后,得到最终的固定长度的文档签名值。其中,采用64bit的位串表示文档签名,总计能够表示264种状态。本发明所提供的基于文档签名技术的相似文档识别装置及方法,具有以下优点 本发明采用文档签名技术将文档表示为固定长度的文档签名值,将文档相似度计算问
题转化为签名值距离的计算问题,解决了传统加密哈希技术无法识别相似文档的问题。相较于基于向量空间模型的相似文档识别方法,固定长度的文档签名极大地降低了存储空间,更有助于高效地处理海量数据。本发明还采用增量式索引技术存储已有文档集合的文档签名,并基于该索引对目标文档的签名进行比较,从而适用于动态文本流的流式挖掘的应用场景。


图I为本发明基于文档签名技术的相似文档识别装置示意 图2为本发明的步骤3中文档签名过程的算法流程图。
具体实施例方式下面结合附图及本发明的实施例对本发明的装置及方法作进一步详细的说明。本发明针对现有的重复文本识别方法空间效率高但无法识别相似文本内容,以及基于向量空间模型的相似文本识别方法空间复杂度高等问题,提出了一种基于文档签名技 术的相似文档识别方法,目的是为流式的海量文档提供一种快速的相似识别方法。图I为本发明基于文档签名技术的相似文档识别装置示意图,如图I所示,为该相似文档识别装置的一实施例(相似新闻网页去重服务系统)包括五个主要功能模块内容提取模块,特征抽取模块,文档签名计算模块,文档签名索引模块以及相似文档查找模块;所述五个功能模块分别用于执行对应的五个处理步骤。步骤I :若对于目标新闻网页等文档,内容提取模块将抽取新闻(文档)标题、正文的文字内容。具体说来,又分为两个子步骤
步骤11、解析网页HTML源码,找出包含新闻标题、正文内容信息的文本块,在此过程中移除广告链接、导航栏等无关信息,有助于提高相似识别的准确率。步骤12、在经上述步骤11处理后得到的文本块中移除HTML标签等无关信息,并在得到的文本段中使用模板匹配的方法去除各大新闻站点常见的版权声明文本、将其“分享至1J”链接内容等噪首 目息,进一步提闻有意义正文内容提取的精度。内容提取过程对于目标文档D,首先提取其中有意义的“正文”内容部分C,排除源文档中无意义的噪音信息,从而起到提高相似文档识别准确率的目的。步骤2 :对于完成上述步骤I后得到的新闻网页(文档)正文内容C,通过特征抽取模块将其转换为对应的〈token, weight〉二元组集合的特征表示形式。其通过特征抽取模块将从中抽取出关键词token,并给出该关键词token的权重weight,对应的〈token,weight) 二元组集合将作为源文档的特征表示。具体说来,又分为三个子步骤
步骤21、首先对于新闻文本(文档)进行分词处理,得到文本分词结果的term序列。步骤22、对于term序列中连续的k个term,组成一个特征token,该实施实例中,参数k取值为2,相比于文献I将参数k设置为1,本发明中加入了对term位置信息的考虑,可以更好地避免term内容相同但出现顺序不同的误识别。步骤23、对于步骤22中构造出的每一个token,计算对应的权重weight,在本发明实施实例中采用token在文档文本内容中出现的次数tf作为权重指标,相比于文献2中直接采用单位权重的简单策略,本发明实施实例有助于避免与词频相关的误识别。步骤3 :对于完成步骤2后得到的〈token, weight〉集合,将被作为源新闻网页(文档)的特征表示传递给文档签名计算模块,该模块会依次将原始token转化为对应的哈希值,并结合当前token对应的权重weight更新文档签名值。当完成特征表示中所有token的处理之后,就可以得到最终的固定长度的文档签名值。其算法流程如附图2所示。在本发明实施实例中采用64bit (位)的位串表示文档签名,总计可以表示264种不同状态。如有必要,可以调整签名长度以适应不同的应用场景需求。步骤4 :对于历史新闻网页,通过步骤3计算出来的文档签名将都被存储在文档签名索引模块,最简单的策略就是直接存储整个签名库集合。经过上述处理,下一步即步骤5中的相似文档签名查找将是线性复杂度,在本发 明实施实例中,采用分片索引的方案,将64 bit签名位串等分为4个16 bit位串,并各自以16 bit位串为key存储于对应的索引结构中,换言之,整体索引由4个结构相似的子索引共同构成,每个子索引由相应的16 bit作为key,以共享这16 bit子串的所有文档签名列表作为value。这种索引方案使用一定的存储冗余,可以极大地加速步骤5中相似文档签名查找过程,因为一次key查找将线性查找的范围限制为原先范围的1/216。此外,用文档签名索弓I模块将其处理成一定的内部索引格式进行存储,一来可以使用压缩技术降低存储空间开销,二来有助于加快后续的相似文档查找的速度
相较于基于VSM的技术方案,本发明实施实例基于固定长度的文档签名已经极大地压缩了存储空间复杂度。步骤5 :对于经过步骤3计算得到的目标新闻网页文档签名S,在已有的文档签名索引中查找与其距离小于一定阈值d的文档签名,如果存在,返回相似文档对应的文档签名作为目标文档的最终ID,否则返回步骤3计算得到的文本签名值作为文档ID。在本发明实施实例中,采用二进制编码的海明距离(Hamming Distance)作为距离度量,最小相似距离阈值参数d选为3,也就是意味着两个64 bit 二进制位串之间存在差异的bit位数小于或等于3时,对应的两个新闻网页将被认为是相似文档。在新闻网页测试数据集上,本发明实施实例取得了 95%的准确率,远高于文献I、文献2中给出各自技术方案的准确率指标。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
1.一种基于文档签名技术的相似文档识别装置,其特征在于,主要包括内容提取模块,特征抽取模块,文档签名计算模块,文档签名索引模块以及相似文档查找模块;其中 内容提取模块,用于抽取目标文档的文档标题、正文的文字内容,得到正文内容; 特征抽取模块,用于将所述正文内容转换为对应的〈token, weight) 二元组集合的特征表示形式,并传递给所述文档签名计算模块; 文档签名计算模块,用于将原始token转化为对应的哈希值,并结合当前token对应的权重weight更新文档签名值,得到最终的固定长度的文档签名值; 文档签名索引模块,用于将上述的文档签名将存储在文档签名索引模块,或直接存储整个签名库集合;以及 相似文档查找模块,在已有的文档签名索引中查找与其距离小于一定阈值d的文档签名,并将返回相似文档对应的文档签名作为目标文档的最终ID。
2.根据权利要求I所述的基于文档签名技术的相似文档识别装置,其特征在于,所述距离为二进制编码的海明距离,所述阈值d为3。
3.一种基于文档签名技术的相似文档识别方法,其特征在于,包括 A、抽取目标文档的文档标题、正文的文字内容,得到正文内容的步骤; B、将所述正文内容转换为对应的〈token,weight) 二元组集合的特征表示形式,并传递给所述文档签名计算模块的步骤; C、将原始token转化为对应的哈希值,并结合当前token对应的权重weight更新文档签名值,得到最终的固定长度的文档签名值的步骤; D、将上述的文档签名存储在文档签名索引模块或直接存储整个签名库集合的步骤; E、在已有的文档签名索引中查找与其距离小于一定阈值d的文档签名,并将返回相似文档对应的文档签名作为目标文档的最终ID的步骤。
4.根据权利要求3所述的基于文档签名技术的相似文档识别方法,其特征在于,所述步骤A具体为 Al、解析网页超文本标记语言HTML源码,找出包含标题、正文内容信息的文本块,在此过程中移除无关信息; A2、在经步骤Al处理后得到的文本块中移除无关信息处理后,在得到的文本段中使用模板匹配法去除噪音信息。
5.根据权利要求3所述的基于文档签名技术的相似文档识别方法,其特征在于,所述步骤B具体为 BI、首先对文档进行分词处理,得到文本分词结果的term序列; B2、对于term序列中连续的k个term,组成一个特征token,参数k为2 ; B3、对于步骤B2中构造出的每一个token,计算对应的权重weight,取token在文档内容中出现的次数tf作为权重指标。
6.根据权利要求3所述的基于文档签名技术的相似文档识别方法,其特征在于,所述步骤C中文档签名计算的过程为 对于完成步骤B后得到的〈token, weight)集合,将被作为源文档的特征表示传递给文档签名计算模块,该模块依次将原始token转化为对应的哈希值,并结合当前token对应的权重weight更新文档签名值;当完成特征表示中所有token的处理之后,得到最终的固定长度的文档签名值。
7.根据权利要求6所述的基于文档签名技术的相似文档识别方法,其特征在于,采用64bit的位串表示文档签名,总计能够表示264种状态。
全文摘要
本发明公开了一种基于文档签名技术的相似文档识别装置及方法,主要包括内容提取模块,特征抽取模块,文档签名计算模块,文档签名索引模块以及相似文档查找模块。采用本发明,能够解决现有相似文本识别技术中空间复杂度高、无法应对文本流式处理的应用需求,以及空间效率高的重复文本识别技术又无法识别相似文本等的问题;还为流式的海量文档提供一种快速的相似性识别方法。
文档编号G06F17/30GK102831198SQ20121027840
公开日2012年12月19日 申请日期2012年8月7日 优先权日2012年8月7日
发明者温赟, 杨青 申请人:人民搜索网络股份公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1