1.一种大规模文档相似性检测方法,其特征在于,包括如下步骤:S1、输入文档集,计算文档集中文档其他信息的相似度;
S2、文档集中每一篇文档内容对应一个初始化为0、长度为f的签名S,和一个初始化为0的f维向量V;
S3、通过NLPIR分词系统对文档内容进行分词处理,过滤掉语气词、助词,并去掉干扰符号后将文档内容转换为一组特征词;
S4、特征词x的权重综合使用TF-IDF技术和单词的主题相关性计算,将中文术语长度函数作为特征词x的主题相关性函数,中文术语长度函数为其中,x表示特征词的长度,
特征词x的权重计算公式为
其中,tfx,j×idfx表示关键词x在文档j的TF-IDF值,len(x)为单词x的主题相关性函数;
S5、将所有特征词使用相同的哈希函数映射为长度为f的签名h,遍历h的每一位,若h的第i位为1,i介于1到f之间,V的第i位加上该特征词的权重,否则减去;
S6、遍历V,如果V的第i位大于0,签名S的第i位设为1,否则设为0,最终生成的签名S就是文档内容对应的Simhash签名值;
S7、将文档内容对应的Simhash签名值分为n块,对同块的签名值使用相同的哈希函数,映射到桶,检查每一个桶中的元素,判断元素数量有没超过(1+μ1)×AVEn,其中AVEn为桶中元素的平均值,μ1为权重,桶中元素数量超过的话进行二次哈希;
S8、同一个桶的文档作为候选对,先使用文档内容对应的Simhash签名值进行海明距离的计算,然后使用第一步文档其它信息的相似度综合计算文档间的相似度,文档间的相似度的计算公式为其中Haming(A,B)表示A,B两篇文档
内容的海明距离,minHash(A,B)表示A,B两篇文档其它信息的相似度,μ2的取值为0.8~
0.9;
S9、判断同一个桶中文档之间的相似度是否小于m值,若同一个桶中文档之间的相似度小于m值,即输出为相似文档,若同一个桶中文档之间的相似度不小于m值,即输出为非相似文档。
2.根据权利要求1所述的大规模文档相似性检测方法,其特征在于:S1中所述文档其他信息包括文档关键字、文档的标签以及文档的引用文献。
3.根据权利要求1所述的大规模文档相似性检测方法,其特征在于,S1中所述计算文档集中文档其他信息的相似度,包括如下步骤:S11、提取文档中的其他信息,并将提取出的其他信息用集合的形式表示,将这一系列集合组成特征矩阵;
S12、使用MinHash的方法计算特征矩阵对应列之间的jaccard相似度。
4.根据权利要求3所述的大规模文档相似性检测方法,其特征在于,S12中所述使用MinHash的方法计算特征矩阵对应列之间的jaccard相似度,包括如下步骤:S121、对特征矩阵进行N次随机打乱生成签名矩阵;
S122、选用的N个随机哈希函数为hi(x)=(x+i)modN(i=1,2,3…N),通过签名矩阵对应列之间的jaccard相似度来估计特征矩阵对应列之间的jaccard相似度。
5.根据权利要求1所述的大规模文档相似性检测方法,其特征在于:S9中所述m值为
0.25。