一种基于杰卡德距离的实时文本聚类方法技术

技术编号:25270664 阅读:114 留言:0更新日期:2020-08-14 23:03
本发明专利技术涉及一种基于杰卡德距离的实时文本聚类方法,具体包括以下步骤:S1:文本相似度计算:从待聚类数据中选取两个文本,分别从两个文本中抽取关键词,再计算不同文本对应关键词之间的交集、并集,进一步得到杰卡德距离;S2:设定层次聚类阈值;S3:构建聚类模型,依次读取新加载数据,计算每条数据和每个类之间的平均距离,并与阈值比较,确定是否聚到该类还是单独划分一类,不断迭代更新;S4:将S3的聚类结果以更新聚类标识的形式写入Hbase和ES数据库,ES数据库中具有相同聚类标识的数据被聚为一类。本申请的文本聚类方法可以实现海量文本数据的实时分析,类似文本聚类,有效去重,提升用户体验,同时还能改善文本分类结果。

【技术实现步骤摘要】
一种基于杰卡德距离的实时文本聚类方法
本专利技术涉及自然语言处理与大数据
,特别是涉及一种基于杰卡德距离的实时文本聚类方法。
技术介绍
在现今信息爆炸的社会,每日都有海量的数据信息出现,对于每一个话题都会在不同的平台或者被多人同时提及,因此人类在读取信息的同时会遇到很多重复或者类似的数据,这对于我们进行高效的获取数据信息是一个很大的障碍,会浪费很多时间。因此,针对海量网络文本数据利用文本聚类方法进行去重处理,将相近的数据整合到一起,形成一类,可以进行分类阅读处理,从而极大的提高了工作效率,节约了时间。目前主要基于词袋模型、TF-IDF、以及WORD2VEC等表达方式计算的文本相似度距离作为文本聚类分析的基础。但是在海量文本数据实时聚类的时候存在准确性不高、处理速度较慢等问题。
技术实现思路
为了克服现有技术的上述不足,本专利技术提出了一种基于杰卡德距离的实时文本聚类方法,解决现有海量文本数据实时聚类准确性不高、处理速度慢的技术问题。本专利技术是通过以下技术方案实现的:一种基于杰卡德距离的实时文本聚类方法,具体包括以下步骤:S1:文本相似度计算:从待聚类数据中选取文本a和文本b,计算文本a、文本b的杰卡德距离;分别从文本a和文本b中抽取关键词Sa和Sb,关键词数量视数据长短而定,再计算两个文本对应关键词的杰卡德距离即为两个文本之间的距离;S2:根据经验验证再结合文本相似度,设定层次聚类阈值;S3:层次聚类:构建聚类模型,依次读取新加载数据,计算每条数据和每个类之间的平均距离,并与阈值比较,确定是否聚到该类还是单独划分一类,不断迭代更新;S4:将S3的聚类结果以更新聚类标识的形式写入Hbase和ES数据库,ES数据库中具有相同聚类标识的数据被聚为一类。进一步的,S1中的杰卡德距离表示为:其中,0.01为平滑系数,A|=Sa∩Sb,并集|B|=Sa∪Sb。进一步的,S3中聚类模型的具体构建步骤包括:抽取待聚类账号下面的24小时的数据内容,将初始时每条文本数据视为单独的类,计算每两个类之间的杰卡德距离,距离小于设定阈值的聚为一类,迭代计算直至类的个数不再变化,将聚类结果作为聚类模型。进一步的,S3中每条数据和每个类之间的平均距离=每条数据和每个类中的数据距离÷类里面的数据总数,若某条数据到某一类的平均距离最小且小于阈值,就将这一条数据聚到该类;若某条数据到所有类的平均距离均大于阈值,则单独划分一类。进一步的,S3在不断迭代更新聚类的过程中,聚类个数不大于500,每个类最少包含20条数据,最多存放1200条数据;当聚类个数或者类里面的数据条数超过限制,选取长时间没有更新的类,删除这个类或者类里面的数据。进一步的,待聚类数据包括新闻数据、微信公众号数据、微博数据以及贴吧数据;抽取的关键词数量为35。进一步的,S2中设定的层次聚类阈值为0.88。与现有技术相比,本专利技术的有益效果在于:本专利技术提出的一种基于杰卡德距离的实时文本聚类方法,针对每日爬取的来自于新闻、微博、微信、论坛等不同数据源,约1500万条海量文本数据进行实时分析、聚类处理,类似的文本被聚类在一起,有效的达到了去重目的,使得大数据分析产品的运营效率和用户体验得到有效提升,用户迅速准确定位到所需要的信息;另外还可以用来改善文本分类的结果。说明书附图图1为本专利技术实施例所述一种基于杰卡德距离的实时文本聚类方法的流程图。具体实施方式展示一下实例来具体说明本专利技术的某些实施例,且不应解释为限制本专利技术的范围。对本专利技术公开的内容可以同时从材料、方法和反应条件进行改进,所有这些改进,均应落入本专利技术的精神和范围之内。如图1所示,一种基于杰卡德距离的实时文本聚类方法,具体包括以下步骤:S1:文本相似度计算:从待聚类数据(新闻数据、微信公众号数据、微博数据以及贴吧数据)中选取文本a和文本b,计算文本a、文本b的杰卡德距离;分别从文本a和文本b中抽取关键词Sa和Sb,关键词数量为35,再计算两个文本对应关键词之间的交集|A|=Sa∩Sb,并集|B|=Sa∪Sb,其杰卡德距离(0.01为平滑系数),即为两个文本之间的距离;S2:根据经验验证,在文本相似度大于0.88时,聚成一类的可能性较大,设定层次聚类阈值为0.88;S3:层次聚类:S31:构建聚类模型:抽取待聚类账号下面的24小时的数据内容,将初始时每条文本数据视为单独的类,计算每两个类之间的杰卡德距离,距离小于设定阈值的聚为一类,迭代计算直至类的个数不再变化,将聚类结果作为聚类模型;S32:依次读取新加载数据,计算每条数据和每个类之间的平均距离(每条数据和每个类之间的平均距离=每条数据和每个类中的数据距离÷类里面的数据总数),并与阈值比较,若某条数据到某一类的平均距离最小且小于阈值,就将这一条数据聚到该类;若某条数据到所有类的平均距离均大于阈值,则单独划分一类,不断迭代更新,在不断迭代更新聚类的过程中,聚类个数不大于500,每个类最少包含20条数据,最多存放1200条数据;当聚类个数或者类里面的数据条数超过限制,选取长时间没有更新的类,删除这个类或者类里面的数据(聚类时所有的聚类结果都是直接在内存里面运行,为了保障程序的顺畅运行删除一些不经常使用的类或者数据可以有效的减轻计算服务器的压力);S4:将S3的聚类结果以更新聚类标识的形式写入Hbase和ES数据库,相同聚类标识的数据被聚为一类,用户通过查询ES数据库里面的聚类标识,可快速定位到所需要的信息。综上,本申请的文本聚类方法,通过基于关键词的杰卡德距离计算文本相似度,然后根据经验设定阈值采用层次聚类的方式进行聚类,及最后的聚类标识,不仅实现了对海量文档数据的聚类去重,使用户准确快速的获取想要的数据信息,而且还改善了文本分类的结果。以上所述仅为本专利技术的实施例,并非因此限制本专利技术的专利范围,凡是利用本专利技术说明书内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的
,均同理包括在本专利技术的专利保护范围内。本文档来自技高网
...

【技术保护点】
1.一种基于杰卡德距离的实时文本聚类方法,其特征在于,具体包括以下步骤:/nS1:文本相似度计算:从待聚类数据中选取文本a和文本b,计算文本a、文本b的杰卡德距离;分别从文本a和文本b中抽取关键词Sa和Sb,再计算两个文本对应关键词的杰卡德距离即为两个文本之间的距离;/nS2:根据经验验证再结合文本相似度,设定层次聚类阈值;/nS3:层次聚类:构建聚类模型,依次读取新加载数据,计算每条数据和每个类之间的平均距离,并与阈值比较,确定是否聚到该类还是单独划分一类,不断迭代更新;/nS4:将S3的聚类结果以更新聚类标识的形式写入Hbase和ES数据库,ES数据库中具有相同聚类标识的数据被聚为一类。/n

【技术特征摘要】
1.一种基于杰卡德距离的实时文本聚类方法,其特征在于,具体包括以下步骤:
S1:文本相似度计算:从待聚类数据中选取文本a和文本b,计算文本a、文本b的杰卡德距离;分别从文本a和文本b中抽取关键词Sa和Sb,再计算两个文本对应关键词的杰卡德距离即为两个文本之间的距离;
S2:根据经验验证再结合文本相似度,设定层次聚类阈值;
S3:层次聚类:构建聚类模型,依次读取新加载数据,计算每条数据和每个类之间的平均距离,并与阈值比较,确定是否聚到该类还是单独划分一类,不断迭代更新;
S4:将S3的聚类结果以更新聚类标识的形式写入Hbase和ES数据库,ES数据库中具有相同聚类标识的数据被聚为一类。


2.根据权利要求1所述的一种基于杰卡德距离的实时文本聚类方法,其特征在于,S1中的杰卡德距离表示为:其中,0.01为平滑系数,|A|=Sa∩Sb,并集|B|=Sa∪Sb。


3.根据权利要求1所述的一种基于杰卡德距离的实时文本聚类方法,其特征在于,S3中聚类模型的具体构建步骤包括:抽取待聚类账号下面的24小时的数据内容,将初始时每条文本数据视为单独的类,计算每两个类之...

【专利技术属性】
技术研发人员:金勇胡华孙涛
申请(专利权)人:武汉烽火普天信息技术有限公司
类型:发明
国别省市:湖北;42

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

1