一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于改进Simhash算法的大数据文本去重技术的制作方法

2021-11-05 22:55:00 来源:中国专利 TAG:

一种基于改进simhash算法的大数据文本去重技术
技术领域
1.本发明公开了一种基于改进simhash算法的大数据文本去重技术,涉及自然语言处理领域。


背景技术:

2.21世纪以来,人类活动产生了大量数据,网络与大数据的发展也让越来越多的科研人员对大数据进行研究,而在研究大数据时,首先就应该对大量的数据进行预处理,数据去重技术就是数据预处理的第一步。通过该技术可以去除大量重复数据,从而可以大大加快数据查询速度,降低存储空间,节约存储开支。重复数据去重技术可以查找出数据中的重复部分并去除,传输并存储去重结果数据,并使用指针来将存储的数据对象指向重复数据,来达到删除重复数据甚至相同的数据文档只有一份以节约存储空间的目的。通常情况下,文档数据的签名值可以使用哈希函数计算得出,但是使用普通的哈希函数会存在碰撞问题,就是即使是不同的文档也会出现相同的哈希签名值。针对目前数据去重算法存在的问题,本发明引进了基于单词词性和单词长度计算特征权值的tf

idf技术,提高最后生成的simhash签名值的精度。之后改进了签名值的检索过程,是签名值的分布均匀,提高检索效率,然后提出了一个全新的签名值计算公式,计算出文章最后的签名值,比较文档的相似程度。为大数据文本去重提供技术支持。


技术实现要素:

3.为了解决当前大数据时代产生的大量数据冗余和重复等问题,本发明公开了一种基于改进simhash算法的大数据文本去重技术。
4.为此,本发明提供了如下技术方案:1.一种基于改进simhash算法的大数据文本去重技术,主要包括以下步骤:(1)采用分词工具进行分词;(2)对分好的关键词赋予相应的权重;(3)通过关键词权重计算文档内容签名与文章摘要签名;(4)计算找出相似文档。
5.2.根据权利要求1所述的一种基于改进simhash算法的大数据文本去重技术,其特征在于:所述步骤(1)中,选用了中国科学院计算机研究所经过十几年研发的nlpir

ictclas分词系统,该系统在ictclas(institute of computing technology,chinese lexical analysis system)分词系统的基础上,内核升级10余次,用户超过30万。功能强大,主要包括中英文分词;词性标注;命名实体识别;新词识别;关键词提取,分词速度和精度也都有很大的提升。
6.3.根据权利要求1所述的一种基于改进simhash算法的大数据文本去重技术,其特征在于:所述步骤(2)中,对tf

idf算法做出了改进,不完全将逆文件频率作为关键词权重的评判标准,同时引入了对关键词词性与关键词长度的评判标准,让分词后的更重要的关
键词拥有更高的权重。
7.4.根据权利要求1所述的一种基于改进simhash算法的大数据文本去重技术,其特征在于:所述步骤(3)中,根据生成的关键词词频和文本段首句生成文章摘要,然后分别计算文章摘要和文章内容的签名值,签名值计算采用传统simhash算法的签名值计算方法,分好的关键词权重特征值进行哈希,哈希结果加权在降维,最后得出文章摘要和文章内容的签名值。
8.5.根据权利要求1所述的一种基于改进simhash算法的大数据文本去重技术,其特征在于:所述步骤(4)中,提出了一种全新的文档签名值计算方法,对文档内容的签名值和文章摘要的签名值进行海明距离的比较,在签名值进行比较的过程中,本发明也进行了优化,采用二次哈希让数据分布的更均匀,最后得到两篇文档的最终的汉明距离。
9.改进内容1.本发明是一种基于改进simhash算法的大数据文本去重技术,为现在的大数据时代所产生的大量重复数据提供一个更加高效更加准确的去重方法。
10.2.本发明改变了传统的simhash算法的分词技术与词频计算权重的方式,采用中国科学院计算机研究所研发的nlpir

ictclas分词系统,在中文分词领域更加快速和准确,在计算关键词权重的过程中引入了关键词词频和关键词词性作为参数,使签名值计算更加精确。
11.3.本发明提出了对simhash签名值匹配新的改进方法,那就是判断各个桶中签名值的分布是否均匀,对不均匀的桶的哈希过后的签名值数据在进行第二次的哈希操作,第二次进行哈希的结果存在在一个桶中的数据进行海明距离的比较,这样虽然增加了算法啊占用空间,但是能减少哈希值的对比次数,提高算法效率。
12.4.本发明根据文章摘要的概念,提出了一种全新的文档签名值计算方法,文章摘要是通过关键词词频和文本段首句生成的。然后使用改进后的tf

idf算法分别计算出文档内容和文章摘要的主题词权重。分别输入改进的simhash签名值计算方法计算出属于文档内容和文章摘要的签名值,然后对文档内容的签名值和文章摘要的签名值进行海明距离的比较,最后得到两篇文档的最终的汉明距离,使去重结果更加准确。
附图说明
13.图1为本发明实施方式中的一种基于改进simhash算法的大数据文本去重技术流程图。
14.图2为本发明指纹权重变化对算法效果的影响结果图。
15.图3为本发明实施方式中的准确率对比结果图。
16.图4为本发明实施方式中的召回率对比结果图。
17.图5为本发明实施方式中的执行时间对比结果图。
具体实施方式:
为了使本发明的实施例中的技术方案能够清楚和完整地描述,以下结合实施例中的附图,对本发明进行进一步的详细说明。
19.本发明实施例基于改进simhash算法的大数据文本去重技术的流程,如图1所示,
包括以下步骤。
20.步骤1获取重复文本数据集的过程如下:在搜狗新闻数据:https://www.sogou.com/labs/resource/ca.php,数据5000条中文新闻文本数据,分十大类别:'汽车','财经','科技','健康','体育','教育','文化','军事','娱乐','时尚',各500条相似数据,并混入2000条不相关数据。
21.步骤2文本集合进行分词及特征权值的计算过程如下:步骤2

1选用了中国科学院计算机研究所经过十几年研发的nlpir

ictclas分词系统,功能强大,主要包括中英文分词;词性标注;命名实体识别;新词识别;关键词提取。是当前使用人数最多也最知名的汉语分词工具。该分词系统还具有高效的词语提取功能,能自动过滤不常用词,大大提高了海量数据预处理速度与精度;步骤2

2对于词频权重计算的tf

idf算法,计算关键词权重时只依据关键词出现的次数,虽然经过分词工具处理的关键词条已经去除了大部分的无用词,但是在计算逆向文件频率时,会认为出现次数多的关键词不重要,出现次数少的关键词重要,但在实际中,如果一个关键词在文档中多次出现,那就说明这个词能比较好的代表文本特征,这就是tf

idf算法的不足之处。
22.所以本发明对tf

idf算法做出了改进,不完全将逆文件频率作为关键词权重的评判标准,同时引入了对关键词词性与关键词长度的评判标准,让分词后的更重要的关键词拥有更高的权重。首先是在词性方面的改进,词性是指关键词的属性,比如在一句话中,主语肯定是最重要的,因为这句话都在围绕主语展开,通常一句话的主语都用名词表示。谓语作为表达主语所处的状态或者动作,重要性仅次于主语,通常用动词表示。宾语一般都是对主语的解释和补充,包含一些名词和形容词。还有一些其他结构,但是在句子中都不是重要部分。所以可以给名词和动词更高的权重,例如一句话“算法优化的方法”,分词之后有“算法”,“优化”,“的”,“方法”四个词。按照出现的频率来说,都出现了一次,但是这句话中“算法”肯定是更加重要,所以应该赋予更高的权重来表示这句话的特征。而且这样的关键词权重在计算simhash签名值时会更加精确。因此,根据结合上述论证得到词权重表表1。
23.表1词性权重名词3动词2形容词1其他0其次是在词长方面的改进,根据2017出版业研究关键词盘点——基于6种cssci出版学术期刊的分析中的关键词的词长进行了统计,发现最多的时3到5个字的关键词最多,所以应该在分词之后,给三个字以上的关键词更高的权重。那么关键词权重的计算公式就变为:w=tf
ij
·
idf
i
λ(w
ni
len(w
i
))其中,λ为参数,len(w
i
)取值与文档长度有关,定义如下:
使用改进后的关键词计算公式准确的计算出关键词的特征权值,从而也能更加精确的计算出来的simhash签名值。
24.步骤3simhash签名值检索阶段过程如下:本发明提出了对simhash签名值匹配新的改进方法,那就是判断各个桶中签名值的分布是否均匀,对不均匀的桶的哈希过后的签名值数据在进行第二次的哈希操作,具体步骤如下:(1)输入任意文档集进行计算,检查各个桶之间的签名值分布是否均匀,如果有分布不均匀的桶,则在原签名值之上,把这第一次进行比较的这一块剔除掉。不均匀的判断方式为:首先判断桶中数据量,数据量大于(1 权重)乘桶中元素平均值,则认为数据不均匀。
25.(2)计算去除了不均匀桶的其他桶的海明距离,将海明距离小于3的数据输出,作为这部分文件数据集的相似度比较结果。
26.(3)对于那些不均匀的桶,去除最先的用来的块,用剩余的签名值位数在进行分块,然后将剩余的签名值块使用相同的哈希函数再次哈希到桶中。第二次进行哈希的签名值块映射到相同桶中的签名值块做相似性比对,进行海明距离的计算。
27.步骤4改进文本距离计算方法过程如下:传统的simhash文档签名值的计算是比较两篇文档内容的汉明距离,为了保证在文本去重的时间复杂度不受太多影响的情况下,同时提高simhash算法的精度,本文根据文章摘要的概念,提出了一种全新的文档签名值计算方法,文章摘要是通过关键词词频和文本段首句生成的。然后使用改进后的tf

idf算法分别计算出文档内容和文章摘要的主题词权重。分别输入改进的simhash签名值计算方法计算出属于文档内容和文章摘要的签名值,然后对文档内容的签名值和文章摘要的签名值进行海明距离的比较,最后得到两篇文档的最终的汉明距离,得到重复的文档集。
28.计算公式如下:f(a,b)=μchaming(a,b) (1

μ)shaming(a,b)其中f(a,b)是两篇文档的签名距离,chaming(a,b)是两篇文档的文档内容汉明距离,shaming(a,b)是两篇文档的文章摘要汉明距离。μ为两个距离的权重。
29.为了确定μ的取值,必须通过实验得到。所以使用搜狐新闻的1100条新闻,其中相似的新闻为100条,μ的取值从0到1,用步长为0.01的μ值作为横坐标,因为在simhash算法中,汉明距离小于3时认为文章是重复的,本文根据simhash算法的签名值计算经验选定文本距离为3。可以得到算法的准确率(precision)和召回率(recall rate)的计算结果如图2所示:可以从图中看出,当μ的值为0.7时,也就是(1

μ)为0.3,可以得到比较高的准确率和召回率。将μ代入两片文档的汉明距离计算公式,可以得到两篇文档的汉明距离f(a,b)为:f(a,b)=0.7chaming(a,b) 0.3shaming(a,b)当f(a,b)小于3时,认为两篇文档是重复的。
30.步骤5实验结果及分析实验结果如下:本文选用了经典的评价数据去重算法好坏的准确率与召回率,定义如下:
实验结果如图3与图4,通过观察实验得到的准确率与召回率,发现改进后的准确率和召回率比经典的simhash算法提高了接近5%左右,因为改进的simhash算法不单单计算了文档内容,还从分词工具,特征权值计算tf

idf算法,签名值计算进行了多方面优化,最后结合文章摘要判断文章是否相似。所以得到的准确率与召回率较高且稳定。
31.实验最后比较了原simhash算法与改进的simhash算法的运行时间,从图5可以看出,以秒为单位增加文档数,改进的simhash执行速度更快,因为对simhash签名值匹配阶段进行了改进,对比较浪费算法运行时间的桶排序数据不均匀的情况进行了第二次哈希计算,减少了签名值比较次数,所以改进后的算法效率更高。
32.本发明实施方式中的一种基于改进simhash算法的大数据文本去重技术,能够为大数据去重,数据预处理进行决策支持。
33.以上所述是结合附图对本发明的实施例进行的详细介绍,本文的具体实施方式只是用于帮助理解本发明的方法,对于本技术领域的普通技术人员,依据本发明的思想,在具体实施方式及应用范围内均可有所变更和修改,故本发明书不应理解为对本发明的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献