应用于抄袭检测的信息指纹索引方法

文档序号:6334149阅读:408来源:国知局
专利名称:应用于抄袭检测的信息指纹索引方法
技术领域
本发明涉及一种文本抄袭检测技术,尤其涉及一种基于B树的应用于抄袭检测的 信息指纹索引方法。
背景技术
文本抄袭检测是指判断一篇文档是否抄袭或者拷贝了其他一篇或多篇文档的内 容。抄袭不完全等同于复制,而是通过一定的词位变换、同义词替换等多种手段来剽窃其他 文档的内容。目前,文本抄袭检测技术主要有两种方法一种是指纹检测法,一种是词频检测 法。所谓指纹法是指从文本内容中提取一些称为指纹的特征串,根据指纹雷同率来判断一 篇文档对哪些文档进行了抄袭或拷贝。所谓词频检测法是通过统计文本中各个词的出现频 率,对每篇文档得到一个特征向量,利用在两篇文档的特征向量上计算某种度量,对两篇文 档的相似度得出一个量化指标,依据此指标判断是否进行了抄袭或拷贝。传统的指纹检测法可以精确地定位到被抄袭内容。但是,由于需要读取大量的指 纹数据,不可避免的将发生大量磁盘1/0,使得检测效率比较低。词频检测法由于读取需要 的数据量较小,因此效率相对较高。但是,由于词频检测法对整个内容提取特征,当抄袭内 容指占整篇文本很小的一部分时,词频检测法很难检测出来。现在文本库的数据基本上是海量的,抄袭检测依靠人工检测无疑是大海捞针,即 便是使用计算机如果没有良好的算法和高性能的机器配置也是不可能完成的。指纹检测的 难点就在于找到一个很好的索引方法,这也是抄袭检测的核心技术。

发明内容
为解决上述中存在的问题与缺陷,本发明提供了一种应用于抄袭检测的信息指纹 索引方法。所述技术方案如下—种应用于抄袭检测的信息指纹索引方法,包括A、抄袭检测中的信息指纹索引的数据结构;B、为提取的信息指纹建立索引;C、插入与删除信息指纹索引项;D、通过建立的信息指纹索引进行检索。本发明提供的技术方案的有益效果是本发明可以快速的从文献中找到与待检测的文本最有可能有抄袭关系的文献,通 过对少量文献进行比对,便可以精确判断其抄袭的关系。


图1是本发明方法流程图;图2是本发明编码方式的实现方案3
图3是本发明系统部署图;图4是B+树结构图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方 式作进一步地详细描述参见图1,为本实施例实现方法流程,该方法包括以下步骤步骤10抄袭检测中的信息指纹索引的数据结构;步骤20为提取的信息指纹建立索引;步骤30插入与删除信息指纹索引项;步骤40通过建立的信息指纹索引进行检索。上述抄袭检测中的信息指纹的索引数据结构采用B+树的索引数据结构,首先将 文本数据库中的文本,以文本片段为单位,可以是一句话也可以是几句话,然后抽取这个文 本片段的信息指纹,此文本的记录号即文本ID片段在文本的位置,组成记录,这是一个海 量的额数据表,为了支持这个表中的数据检索必须要建立一个索引。上述B+树的索引数据结构满足以下条件(I)M-阶的B+树中每个结点至多有m个孩子;(2)除根结点和叶子结点外,其它每个结点至少有m/2个孩子;(3)若根结点不是叶子结点,则至少有2个孩子;(4)所有叶子结点都出现在同一层,叶子结点中包含了全部关键字(索引值)的信 息,及指向含这些关键字记录的指针,且叶子结点本身依关键字的大小自小而大顺序链接。(5)有k个孩子的非终端结点恰好包含有k个关键字。(6)通常在B+树上有两个指针,一个指向根结点,一个指向关键字最小的叶子结
点ο上述信息指纹索引项的插入分为两种情况不违规状态即叶子结点的父亲结点的孩子数小于m,只需在此父亲结点增加一 个关键字即索引值即可。违规状态即叶子结点的父亲结点的孩子数等于m,需要将该父亲结点分裂为两 个结点,它们所含关键字的个数分别为「(m + 1) /2]和「w/2l。并且它们的双亲结点中应同 时包含这两个结点中的最大的关键字。并把中间的一个关键字拿出来插到该节点的双亲结 点中去,双亲结点也可能是满的,就需要再分裂、再往上插,从而可能导致B+树可能朝着根 的方向生长。上述信息指纹索引项的删除同样存在两种情况不违规状态即叶子结点的父亲结点的孩子数大于m/2,只需在此父亲结点删除 一个关键字即可。违规状态即叶子结点的父亲结点的孩子数等于m/2,这种情况下,需要考察该结 点在B树种的左或右兄弟结点,从兄弟结点中移若干个关键字到该结点中来(这也涉及它 们的双亲结点中的一个关键字要作相应变化),使两个结点中所含关键字数基本相同;但 如果其兄弟结点的关键字个数也很少,刚好等于m/2,这种移动则不能进行,这种情形下,需要删除它的兄弟结点并将它们双亲结点中的相应关键字合并为一个结点。上述信息指纹的检索是通过建立的信息指纹索引进行检索将大大加快检索的速 度,也使我们能够在较短的时间内发现被抄袭的文章。上述信息指纹索引进行检索的具体过程如下首先将信息指纹的同根结点的数值进行比较,确定信息指纹所属的下一层结点, 迭代地自上而下地查找,查找到最后一层内部结点。如果没有叶子结点对应这种结点,则表 示文本库中不存在此指纹;如果找到叶子结点对应的结点则返回这个叶子结点。上述查找 每次都是从根结点通过内部节点和关键字走到叶子结点(如图4所示)。由于B+树中内部结点的键值是有序的,因此查找采用二分查找的方法。这样单个 结点内部的查找时间复杂度是0(log(m)),由于B+树叶子结点的深度是一样的,不妨设为 d,这样B+树查找一个信息指纹的时间复杂度为0 (d*log (m))。如果不重复的信息指纹的数 量为k,d = Iogffl (k)。如果信息指纹的重复率为η,记录为n,这样查找的时间复杂度就是 0(logm( n*n)*log(m)) ο如图2所示,为本实施例编码方式的实现方案,程序中,名字空间FingerPrintEx 中的类用来完成这种编码。FingerPrintIndexEx 类是指纹索引类,一个 FingerPrintIndexEx 对象就是一个 指纹索引实例。相关的结构结构FPIndexJfeaderEx存储了指纹索引的头部信息{1子索引数目2子索引的元信息数组};FP_SubIndex_MetaInfoEx 子索引元信息结构{1子索引的头部块号2本索引管理的起始记录号3本索引管理的结束记录号4本索引中每个索引项记录的是几个指纹的信息,基本索引为1,指纹组索引可能为2,3,...};FPSubIndexBase是子索引类,FPSubIndex是它的子类。真实应用中,采用 FPSublndex对象管理一个实际的一级子索引或二级子索引。构建索引时,FPSubIndex将主要工作交由FPSubIndexBuiIder对象负责。在查询时,FPSubIndex将主要工作交由FPSubSearcher对象负责。FPSubSearcher负责将查询条件转换为一组指纹,利用FPSubSearchToken对象获 取每个指纹的文本ID和位置列表(一个FPSubSearchToken对象负责一个指纹的查询)。 然后,在多个FPSubSearchToken对象之间对文本ID和位置进行匹配,满足匹配条件的结果 根据一定的策略得出相关度。
FPSubSearchToken类负责查询一个指纹的记录信息和位置信息,并提供遍历接□。FPSublndexBuilder类负责实现索引的构建,索引建立过程中也采用了多路归并 的思想。并且,在最后归并的时候,利用BTreeBuilder构建B树。CDAnalyzer负责对文本提取指纹,提取的指纹存储在CDTokenStream中。⑶TokenStream负责从提取的指纹列表中,提供迭代式访问接口。FPStrategy 是配置类,功能类似于 QuickIndex 中的 IndexStrategy。如图3所示,为本实施例提供的部署图,在新型的抄袭检测服务器上采用信息指 纹的索引方法,为在海量文本数据上进行文本抄袭检测提供高效的检索服务,通过使用本 服务器,可以在0. 1秒以内,快速的从4000万篇文献中快速的找到与待检测的文本最有可 能有抄袭关系的100篇文献。再通过对这些少量文献采用一定的对比,就可以精确判断其 抄袭关系。其系统硬件主要包括2台抄袭检测服务器,每台服务器配备32G内存。2台ITB 的阵列。阵列分别连接到指纹检测服务器上。其软件主要包括2套KBASE全文数据库管 理系统。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和 原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
应用于抄袭检测的信息指纹索引方法,其特征在于,所述方法包括A、抄袭检测中的信息指纹索引的数据结构;B、为提取的信息指纹建立索引;C、插入与删除信息指纹索引项;D、通过建立的信息指纹索引进行检索。
2.根据权利要求1所述的应用于抄袭检测的信息指纹索引方法,其特征在于,所述信 息指纹索引采用B+树的索引数据结构,该结构的特征包括M-阶的B+树中每个结点至多有m个孩子;除根节点和叶子节点外,其它每个结点即除根结点外的内部结点至少有m/2个孩子; 若根结点不是叶子结点,则至少有2个孩子。
3.根据权利要求1所述的应用于抄袭检测的信息指纹索引方法,其特征在于,所述步 骤A具体包括抽取文本片段的信息指纹并记录文本ID ;提取信息指纹的文本片段在文本的位置并与信息指纹和文本ID组成记录。
4.根据权利要求1所述的应用于抄袭检测的信息指纹索引方法,其特征在于,所述信息指纹索引项的插入具体包括不违规状态的插入和违规状态的插入,其中不 违规状态的插入和违规状态的插入是根据叶子结点的父亲结点的孩子数进行判定;所述信息指纹索引项的删除包括不违规状态的删除和违规状态的删除,其中不违规 状态的删除和违规状态的删除是根据叶子结点的父亲结点的孩子数进行判定。
5.根据权利要求4所述的应用于抄袭检测的信息指纹索引方法,其特征在于,当叶子结点的父亲结点的孩子数小于m,为不违规状态结点的插入,在此父亲结点增加 一个关键字;当叶子结点的父亲结点的孩子数等于m,为违规状态结点的插入; 当叶子结点的父亲结点的孩子数大于m/2,为不违规状态结点的删除; 当叶子结点的父亲结点的孩子数等于m/2,为违规状态结点的删除。
6.根据权利要求2所述的应用于抄袭检测的信息指纹索引方法,其特征在于,所B+树 的索引数据结构还包括所有叶子结点都出现在同一层,并在叶子结点中包含了全部关键字信息及指向含关键 字记录的指针,且叶子结点本身根据关键字的大小自小而大顺序链接; 有K个孩子的非终端结点恰好包含有K个关键字; 在B+树上有两个指针,一个指向根节点,一个指向关键字最小的叶子结点。
7.根据权利要求1所述的应用于抄袭检测的信息指纹索引方法,其特征在于,所述步 骤D具体包括将信息指纹的同根结点的数值进行比较; 确定信息指纹所属的下一层结点,直到最后一层内部结点; 检测有没有叶子结点对应的节点。
8.根据权利要求7所述的应用于抄袭检测的信息指纹索引方法,其特征在于,如果检 测不存在叶子结点对应的结点,则文本库中不存在抄袭检测的信息指纹;如果检测存在叶 子结点对应的结点,则返回叶子结点。
全文摘要
本发明公开了一种应用于抄袭检测的信息指纹索引方法,该方法包括抄袭检测中的信息指纹索引的数据结构;为提取的信息指纹建立索引;插入与删除信息指纹索引项;通过建立的信息指纹索引进行检索。本发明可以快速的从文献中找到与待检测的文本最有可能有抄袭关系的文献,通过对少量文献进行精确比对,便可以精确判断其抄袭的关系。更复杂精确比对算法并不在本发明之内。
文档编号G06F17/30GK101957864SQ20101051370
公开日2011年1月26日 申请日期2010年10月21日 优先权日2010年10月21日
发明者张振海, 王奎, 陈琳 申请人:同方知网(北京)技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1