文本聚类方法和装置制造方法及图纸

技术编号:15746673 阅读:80 留言:0更新日期:2017-07-03 02:29
本申请公开了一种文本聚类方法和装置。其中,该方法包括:通过第一预设算法对多个文本进行第一级聚类,其中,第一预设算法为低于第一预设位数的SimHash算法,通过第一预设算法判定为相似的文本属于同一类别,通过第一预设算法判定为不相似的文本属于不同类别;以及通过第二预设算法分别对第一级聚类得到的各个类别中的文本进行第二级聚类,其中,第二预设算法不同于第一预设算法,通过第二预设算法判定为相似的文本属于同一类别,通过第二预设算法判定为不相似的文本属于不同类别。本申请解决了相关技术中相似文章聚类准确性较低的技术问题。

Text clustering method and device

The present invention discloses a text clustering method and device. Among them, the method includes: through the first preset algorithm for the first level of multiple text clustering, the algorithm for the SimHash algorithm is lower than the first preset first preset digit, through the first preset judgment algorithm similar to the text belongs to the same category, through the first preset algorithm judged as text is similar in different classes and text; all second categories by default algorithm were obtained in the first stage of the second stage clustering clustering, the algorithm is different from the first second preset preset algorithm, decision algorithm for text similarity belong to the same category through second preset, through second preset algorithm for determining the text similarity belonging to different classes. The application solves the technical problem of low accuracy of similar articles in related technologies.

【技术实现步骤摘要】
文本聚类方法和装置
本申请涉及数据处理领域,具体而言,涉及一种文本聚类方法和装置。
技术介绍
在处理来自各种资源的文章时,通常需要对这些文章进行去重或统计相似文章的相关信息。SimHash算法以其高性能被广泛使用于相似文章聚类中,但现有的SimHash聚类算法并不完全适用于来源相对复杂的文章,因为不同的来源可能会对这些文章进行细微的修改,例如,修改标题、添加副标题、添加空白字符与一些无关内容等。现有方案完全根据SimHash算法进行相似文章聚类,准确率不是较高。此外,由于文章的改动使得原本内容上相似的文章被误判为不相似,某些不相似的文章由于SimHash算法的碰撞被误判为相似。针对相关技术中相似文章聚类准确性较低的问题,目前尚未提出有效的解决方案。
技术实现思路
本申请的主要目的在于提供一种文本聚类方法和装置,以解决相关技术中相似文章聚类准确性较低问题。为了实现上述目的,根据本申请的一个方面,提供了一种文本聚类方法。该方法包括:通过第一预设算法对多个文本进行第一级聚类,其中,第一预设算法为低于第一预设位数的SimHash算法,通过第一预设算法判定为相似的文本属于同一类别,通过第一预设算法判定为不相似的文本属于不同类别;以及通过第二预设算法分别对第一级聚类得到的各个类别中的文本进行第二级聚类,其中,第二预设算法不同于第一预设算法,通过第二预设算法判定为相似的文本属于同一类别,通过第二预设算法判定为不相似的文本属于不同类别。进一步地,通过第一预设算法对多个文本进行第一级聚类包括:计算多个文本的SimHash值,得到多个SimHash值;分别将多个SimHash值中每个SimHash值按照第二预设位数进行分组;以及根据分组后的多个SimHash值对多个文本进行第一级聚类。进一步地,多个SimHash值包括第一SimHash值和第二SimHash值,第一SimHash值按照第二预设位数进行分组后得到第一分组集合,第二SimHash值按照第二预设位数进行分组后得到第二分组集合,根据分组后的多个SimHash值对多个文本进行第一级聚类包括:判断第一分组集合和第二分组集合中是否存在对应相同的组别;在判断出第一分组集合与第二分组集合中存在对应相同的组别时,则初步判定第一SimHash值对应的文本和第二SimHash值对应的文本相似,并将第一SimHash值对应的文本和第二SimHash值对应的文本划分为同一类别;以及在判断出第一分组集合与第二分组集合中不存在对应相同的组别时,则判定第一SimHash值对应的文本和第二SimHash值对应的文本不相似,并将第一SimHash值对应的文本和第二SimHash值对应的文本划分为不同类别。进一步地,在判断出第一分组集合与第二分组集合中存在对应相同的组别时,则初步判定第一SimHash值对应的文本和第二SimHash值对应的文本相似,并将第一SimHash值对应的文本和第二SimHash值对应的文本划分为同一类别之后,该方法还包括:计算第一SimHash值和第二SimHash值的海明距离;判断第一SimHash值和第二SimHash值的海明距离是否小于第一预设值;在判断出第一SimHash值和第二SimHash值的海明距离小于第一预设值时,则判定第一SimHash值对应的文本和第二SimHash值对应的文本相似;以及在判断出第一SimHash值和第二SimHash值的海明距离不小于第一预设值时,则判定第一SimHash值对应的文本和第二SimHash值对应的文本不相似,并将第一SimHash值对应的文本和第二SimHash值对应的文本划分为不同类别。进一步地,第二预设算法为文本取样聚类算法,第一级聚类得到的类别中包括第一类别,第一类别中的文本包括第一文本和第二文本,通过第二预设算法分别对第一级聚类得到的各个类别中的文本进行第二级聚类包括:分别对第一文本和第二文本进行分块,得到第一内容块集合和第二内容块集合,其中,第一内容块集合为第一文本分块后得到的内容块集合,第二内容块集合为第二文本分块后得到的内容块集合;分别从第一内容块集合中各个内容块和第二内容块集合中各个内容块中获取第一预设数量的字符,得到第三内容块集合和第四内容块集合,其中,第三内容块集合为从第一内容块集合的各个内容块中获取的第一预设数量的字符组成的内容块集合,第四内容块集合为从第二内容块集合的各个内容块中获取的第一预设数量的字符组成的内容块集合;判断第三内容块集合和第四内容块集合中相同内容块的数量是否大于第二预设值;在判断出第三内容块集合和第四内容块集合中相同内容块的数量大于第二预设值时,则判定第一文本和第二文本为相似文本,并将第一文本和第二文本划分为同一类别;以及在判断出第三内容块集合和第四内容块集合中相同的内容块的数量不大于第二预设值时,则判定第一文本和第二文本为不相似文本,并将第一文本和第二文本划分为不同类别。进一步地,第二预设算法包括多个聚类算法,通过第二预设算法分别对第一级聚类得到的各个类别中的文本进行第二级聚类包括:对第一级聚类得到的各个类别中的文本依次采用多个聚类算法中每个聚类算法进行聚类。进一步地,第二预设算法包括如下至少一种聚类算法:文本取样聚类算法、文本长度差聚类算法、文本相似度聚类算法。为了实现上述目的,根据本申请的另一方面,提供了一种文本聚类装置。该装置包括:第一聚类单元,用于通过第一预设算法对多个文本进行第一级聚类,其中,第一预设算法为低于第一预设位数的SimHash算法,通过第一预设算法判定为相似的文本属于同一类别,通过第一预设算法判定为不相似的文本属于不同类别;以及第二聚类单元,用于通过第二预设算法分别对第一级聚类得到的各个类别中的文本进行第二级聚类,其中,第二预设算法不同于第一预设算法,通过第二预设算法判定为相似的文本属于同一类别,通过第二预设算法判定为不相似的文本属于不同类别。进一步地,第一聚类单元包括:计算模块,用于计算多个文本的SimHash值,得到多个SimHash值;分组模块,用于分别将多个SimHash值中每个SimHash值按照第二预设位数进行分组;以及第一聚类模块,用于根据分组后的多个SimHash值对多个文本进行第一级聚类。进一步地,多个SimHash值包括第一SimHash值和第二SimHash值,第一SimHash值按照第二预设位数进行分组后得到第一分组集合,第二SimHash值按照第二预设位数进行分组后得到第二分组集合,第一聚类模块包括:判断子模块,用于判断第一分组集合和第二分组集合中是否存在对应相同的组别;第一分组子模块,用于在判断出第一分组集合与第二分组集合中存在对应相同的组别时,则初步判定第一SimHash值对应的文本和第二SimHash值对应的文本相似,并将第一SimHash值对应的文本和第二SimHash值对应的文本划分为同一类别;以及第二分组子模块,用于在判断出第一分组集合与第二分组集合中不存在对应相同的组别时,则判定第一SimHash值对应的文本和第二SimHash值对应的文本不相似,并将第一SimHash值对应的文本和第二SimHash值对应的文本划分为不同类别。本申请通过第一预设算法对多个文本进行第一级聚类,其中,第一预本文档来自技高网...
文本聚类方法和装置

【技术保护点】
一种文本聚类方法,其特征在于,包括:通过第一预设算法对多个文本进行第一级聚类,其中,所述第一预设算法为低于第一预设位数的SimHash算法,通过所述第一预设算法判定为相似的文本属于同一类别,通过所述第一预设算法判定为不相似的文本属于不同类别;以及通过第二预设算法分别对所述第一级聚类得到的各个类别中的文本进行第二级聚类,其中,所述第二预设算法不同于所述第一预设算法,通过所述第二预设算法判定为相似的文本属于同一类别,通过所述第二预设算法判定为不相似的文本属于不同类别。

【技术特征摘要】
1.一种文本聚类方法,其特征在于,包括:通过第一预设算法对多个文本进行第一级聚类,其中,所述第一预设算法为低于第一预设位数的SimHash算法,通过所述第一预设算法判定为相似的文本属于同一类别,通过所述第一预设算法判定为不相似的文本属于不同类别;以及通过第二预设算法分别对所述第一级聚类得到的各个类别中的文本进行第二级聚类,其中,所述第二预设算法不同于所述第一预设算法,通过所述第二预设算法判定为相似的文本属于同一类别,通过所述第二预设算法判定为不相似的文本属于不同类别。2.根据权利要求1所述的方法,其特征在于,通过第一预设算法对多个文本进行第一级聚类包括:计算所述多个文本的SimHash值,得到多个SimHash值;分别将所述多个SimHash值中每个SimHash值按照第二预设位数进行分组;以及根据分组后的多个SimHash值对所述多个文本进行第一级聚类。3.根据权利要求2所述的方法,其特征在于,所述多个SimHash值包括第一SimHash值和第二SimHash值,所述第一SimHash值按照所述第二预设位数进行分组后得到第一分组集合,所述第二SimHash值按照所述第二预设位数进行分组后得到第二分组集合,根据分组后的多个SimHash值对所述多个文本进行第一级聚类包括:判断所述第一分组集合和所述第二分组集合中是否存在对应相同的组别;在判断出所述第一分组集合与所述第二分组集合中存在对应相同的组别时,则初步判定所述第一SimHash值对应的文本和所述第二SimHash值对应的文本相似,并将所述第一SimHash值对应的文本和所述第二SimHash值对应的文本划分为同一类别;以及在判断出所述第一分组集合与所述第二分组集合中不存在对应相同的组别时,则判定所述第一SimHash值对应的文本和所述第二SimHash值对应的文本不相似,并将所述第一SimHash值对应的文本和所述第二SimHash值对应的文本划分为不同类别。4.根据权利要求3所述的方法,其特征在于,在判断出所述第一分组集合与所述第二分组集合中存在对应相同的组别时,则初步判定所述第一SimHash值对应的文本和所述第二SimHash值对应的文本相似,并将所述第一SimHash值对应的文本和所述第二SimHash值对应的文本划分为同一类别之后,所述方法还包括:计算所述第一SimHash值和所述第二SimHash值的海明距离;判断所述第一SimHash值和所述第二SimHash值的海明距离是否小于第一预设值;在判断出所述第一SimHash值和所述第二SimHash值的海明距离小于所述第一预设值时,则判定所述第一SimHash值对应的文本和所述第二SimHash值对应的文本相似;以及在判断出所述第一SimHash值和所述第二SimHash值的海明距离不小于所述第一预设值时,则判定所述第一SimHash值对应的文本和所述第二SimHash值对应的文本不相似,并将所述第一SimHash值对应的文本和所述第二SimHash值对应的文本划分为不同类别。5.根据权利要求1至4中任一项所述的方法,其特征在于,所述第二预设算法为文本取样聚类算法,所述第一级聚类得到的类别中包括第一类别,所述第一类别中的文本包括第一文本和第二文本,通过第二预设算法分别对所述第一级聚类得到的各个类别中的文本进行第二级聚类包括:分别对所述第一文本和所述第二文本进行分块,得到第一内容块集合和第二内容块集合,其中,所述第一内容块集合为所述第一文本分块后得到的内容块集合,所述第二...

【专利技术属性】
技术研发人员:祁国晟王清华
申请(专利权)人:北京国双科技有限公司
类型:发明
国别省市:北京,11

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

1