公开/公告号CN112487782A
专利类型发明专利
公开/公告日2021-03-12
原文格式PDF
申请/专利权人 厦门市美亚柏科信息股份有限公司;
申请/专利号CN202011443545.1
申请日2020-12-11
分类号G06F40/194(20200101);G06F40/216(20200101);G06F40/289(20200101);G06K9/62(20060101);G06F16/2455(20190101);G06F16/31(20190101);G06F16/335(20190101);
代理机构35218 厦门市精诚新创知识产权代理有限公司;
代理人蔡金塔
地址 361000 福建省厦门市软件园二期观日路12号102-402单元
入库时间 2023-06-19 10:11:51
技术领域
本发明涉及大数据分析领域,具体地涉及一种基于文章相似数量的文章热度计算方法。
背景技术
目前互联网信息的热度算法主要由用户交互产生热度分和时间衰减的热度分计算得出。此类数据只有发布平台才有全面的数据,而通过互联网采集到的数据没有全面的用户交互数据,由于用户交互数据是实时产生的,所以爬虫采集的部分用户交互数据也有延迟。互联网爬虫把有限的资源用于采集文章内容,而用户交互的数据是实时产生的,采集的数据不准确、有延迟。
发明内容
本发明旨在提供一种基于文章相似数量的文章热度计算方法,以解决上述问题。为此,本发明采用的具体技术方案如下:
一种基于文章相似数量的文章热度计算方法,其包括以下步骤:
S1.数据预处理,根据文章内容利用相似度算法获得文章相似度指纹码;
S2.将S1计算的文章相似度指纹码与文章信息的关联关系保存到数据库;
S3.根据要统计的时间范围和数量,对S2步骤数据库保存的相似度指纹码与文章信息关联关系进行聚合查询,根据聚合结果进行排序;
S4.根据S3查询结果计算文章的热度评分。
进一步地,S1的具体过程如下:
S11.将文章标题加文章内容合并成一个字符串;
S12.利用互联网开源分词器Ansj进行分词;
S13.对分词结果进行优化,根据位置计算权重,对关键词进行排序;
S14.根据关键词列表计算sha-1哈希值,sha-1哈希值即为相似度指纹码。
进一步地,S2的数据库字段至少包括文章标题、文章内容、发布时间和相似度指纹码。
进一步地,S2采用Elasticsearch进行存储。
进一步地,S3中根据聚合结果进行排序具体是相似文章数量由高到低进行排序。
进一步地,S4具体过程如下:
S41.根据聚合结果计算平均相似文章数量S,计算规则为:去掉相似最多和最少的数据,再求剩余的相似文章数量的平均值,计算公式如下:
S42.将需要查询的时间范围转换为以天为单位,时间范围天数为D;
S43.计算热度评分Score,公式如下:
其中,S
间隔时间IT是当前时间与文章发布时间间隔时间;
相似数量权重SW是相似文章数量在计算评分时评分时所占的权重,与时间权重相加为1;
时间权重TW是间隔时间在评分时所占的比重,相似权重一样的情况评分会随着时间递减,与相似度权重相加为1;
S44.根据文章相似指纹码获取发布时间最早的文章信息,从而获得热门文章列表与热门文章评分。
本发明采用上述技术方案,具有的有益效果是:本发明的方法无需获得用户交换数据即可分析特定领域的热门文章及文章的热门程度,不会产生延时,计算量小,速度快。
附图说明
为进一步说明各实施例,本发明提供有附图。这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理。配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点。图中的组件并未按比例绘制,而类似的组件符号通常用来表示类似的组件。
图1是本发明的方法的主流程图;
图2是本发明的方法中计算相似度指纹码的流程图;
图3是本发明的方法中计算热度评分的流程图;
图4是根据本发明方法得到的热门文章列表与热门文章评分的示意图。
具体实施方式
现结合附图和具体实施方式对本发明进一步说明。
S1.数据预处理,根据文章标题和文章内容进行相似度计算,得到文章相似度指纹码。采用爬虫工具等从互联网上抓取原始文章数据,然后再对这些文章进行相似度指纹码计算。每篇文章都能得到一个相似度指纹码。如果相似度指纹码一样,则文章属于相似文章。文章相似指纹码的计算步骤如下:
S11.将文章标题加文章内容合并成一个字符串;
S12.利用互联网开源分词器Ansj进行分词;
S13.对分词结果进行优化,根据位置计算权重,对关键词进行排序;
S14.根据关键词列表计算sha-1哈希值,sha-1哈希值即为相似度指纹码。
S2.将S1计算的文章相似度指纹码与文章信息的关联关系保存到数据库。数据库至少包括文章标题、文章内容、发布时间和相似度指纹码等字段。在一个具体实施例中,文章的存储采用Elasticsearch,相似度指纹码以字段的形式保存到文章文档中,示例如下(只展示部分字段):
Elasticsearch是一个分布式搜索和数据分析引擎,可以用于搜索各种文档。
S3.根据要统计的时间范围和数量,对S2步骤数据库保存的相似度指纹码与文章信息关联关系进行聚合查询,根据聚合结果进行排序,例如,相似文章数量(即,相似度指纹码相同的文章数量)由高到低进行排序。
S4.根据S3的查询结果计算文章的热度评分,具体过程如下:
S41.根据聚合结果计算平均相似文章数量S,计算规则为:去掉相似最多和最少的数据,再求剩余的相似文章数量的平均值,计算公式如下:
S42.将需要查询的时间范围转换为以天为单位,记为D;
S43.计算热度评分Score,计算热度评分Score预先设置的参数如下:
评分基数BS(Base Score):评分基数BS是一个整数值,用于计算评分的基准,是热度评分结果的最高期望分值。例如将评分基数设置为200,那每篇文章计算热度评分的结果在0至200分之间;
间隔时间IT(Interval Time):当前时间与文章发布时间间隔时间;
相似数量权重SW(Similar Weight):相似文章数量在计算评分时评分时所占的权重,默认是0.75,与时间权重相加为1;
时间权重TW(Time Weight):间隔时间在评分时所占的比重,相似权重一样的情况评分会随着时间递减,默认是0.25,与相似度权重相加为1。
热度评分Score的计算公式如下:
例如,假设平均相似文章数量S为500,当前计算的文章有600篇相似的文章(即,S
根据公式计算得到热度评分为:
应用展示可以取整为115。
S44.根据文章相似指纹码获取发布时间最早的文章信息,从而获得热门文章列表与热门文章评分,如图4所示,其示出了2020年10月2号计算得到的热门新闻top5。
本发明通过上述步骤,可以基于不同的时间范围,不同的评分基数,对采集的文章进行热度计算,可以分析特定领域的热门文章及文章的热门程度。本发明的方法无需获得用户交换数据即可计算文章的热度评分,不会产生延时,计算量小,速度快,能够做到基本上实时更新热度评分。
尽管结合优选实施方案具体展示和介绍了本发明,但所属领域的技术人员应该明白,在不脱离所附权利要求书所限定的本发明的精神和范围内,在形式上和细节上可以对本发明做出各种变化,均为本发明的保护范围。
机译: 多种相似度计算方法的相似文献检索方法及相似物检索方法的推荐文章通知服务系统
机译: 多种相似度计算方法的相似文献检索方法及相似物检索方法的推荐文章通知服务系统
机译: 一种改进的活页夹,用于减少杂志和类似文章的数量。