公开/公告号CN113032557A
专利类型发明专利
公开/公告日2021-06-25
原文格式PDF
申请/专利权人 北京工业大学;
申请/专利号CN202110182129.9
申请日2021-02-09
分类号G06F16/35(20190101);G06F16/335(20190101);G06F16/951(20190101);G06F16/9536(20190101);G06F40/194(20200101);G06F40/289(20200101);G06F40/30(20200101);G06K9/62(20060101);
代理机构11203 北京思海天达知识产权代理有限公司;
代理人沈波
地址 100124 北京市朝阳区平乐园100号
入库时间 2023-06-19 11:35:49
技术领域
本发明属于短文本聚类技术研究领域,尤其涉及一种基于频繁词集与 BERT语义的微博热点话题发现方法。
背景技术
当今社会是一个网络化的时代,随着信息技术和网络技术的快速发展,通过互联网传播的信息量更是呈爆炸式增长。微博作为当下常用的社交网络新媒体平台,每天都有大量的包含社会各方面的信息流出,已经成为越来越多的用户发布和获取信息的重要渠道。
微博凭借其平台的开放性、内容简洁性和低门槛等特性,成为越来越多的网民获取新闻时事、自我表达以及社会公共舆论的重要平台。微博作为当代生活中重要的舆论发生地,已经成为热点话题传播的重要媒介。目前情况来看,微博热点话题时常会对社会的影响力很大,其影响范围、扩散速度都是意料之外的。因此,准确挖掘微博中的热点话题对于事件监测、观点挖掘、舆情控制等具有极其重要的作用。如何挖掘和处理微博数据已经成为国内外学者的研究热点,其中对中文微博平台的热点话题发现是微博研究领域的一个重点课题。
传统的热点话题发现主要是针对长文本信息算法研究的,比如新闻报道,博客信息,网页信息等。针对长文本信息的分类、聚类方法都已经比较成熟,针对不同的应用场景都有比较权威的分析方法。但由于中文短文本具有长度短,上下文信息和统计信息很少等特点,适用于中文长文本信息的数据挖掘方法不太适用于中文短文本信息的数据挖掘。目前针对中文短文本信息的数据挖掘方法还处于探索研究阶段,没有普遍适用的权威方法。
发明内容
针对传统的微博热点话题发现方法仅考虑词的统计信息而忽略语义导致聚类结果不准确、热点话题发现效果差等问题,本发明提出一种基于频繁词集与 BERT语义的微博热点话题发现方法。首先对微博文本分别进行频繁词集挖掘和 BERT句向量表示,构建基于频繁词集和BERT句向量的文本双表示模型计算文本融合相似度进行话题谱聚类,再引入H指数进行热点话题评估。
为实现上述发明目的,本发明按照图1所示流程,采用以下技术方案:
步骤1、获取微博数据集。
步骤1.1、在新浪微博平台上随机爬取海量微博数据作为训练BERT预训练模型的数据集。
步骤1.2、采用爬虫技术以定主题的方式爬取某段时间内微博热点话题数据集。
步骤2、数据预处理及特征词汇提取。
步骤2.1、对获取的微博数据集中的热点话题数据进行预处理,包括数据清洗、中文分词处理、停用词处理。
步骤2.2、使用TF-IDF和TextRank进行特征词汇提取。
步骤3、构建基于频繁词集与BERT语义的文本双表示模型。
步骤3.1、对处理后的微博热点话题数据集进行频繁词集挖掘,并计算频繁词集相似度。
步骤3.2、对处理后的微博热点话题数据集进行BERT句向量表示,并计算 BERT语义相似度。
步骤3.3、利用频繁词集相似度和BERT语义相似度构建文本双表示模型计算微博文本融合相似度进行话题谱聚类。
步骤4、热点话题评估分析。通过引入H指数并结合话题词热度和用户参与度两个维度对话题聚类结果进行热度值计算。
附图说明
图1.本发明的流程图。
图2.不同数据量下三种聚类方法的轮廓系数。
图3.不同数据量下三种聚类方法的CH值。
具体实施方式
结合本发明的技术方案,具体实施方式如下:
步骤1、获取微博数据集
通过对新浪开放平台API进行分析,利用python爬虫技术在新浪微博上采集了两类数据,第一类是随机爬取的微博文本共3.609GB,作为BERT语言模型的训练数据;第二类是采用定主题的方式爬取了2020年11月5日至12月3日之间的微博数据,包含微博内容数据和微博用户数据两部分。
通过对微博内容数据集进行筛选,选取了某病毒、5G、直播三个主题,每个主题下5个热点话题,共5359条数据,该数据集没有进行对主题及话题的人工标注;与之对应微博用户数据集共4611条。数据集的详细信息如表1~3所示。
表1某病毒主题下话题数据详细信息
表25G主题下话题数据详细信息
表3直播主题下话题数据详细信息
步骤2、数据预处理及特征词汇提取
数据预处理主要是过滤微博中的无用信息,减小噪声数据对实验结果的影响。本发明微博数据预处理主要包括数据清洗、中文分词处理和停用词处理。
(1)数据清洗:过滤掉微博数据中对主题提取无意义的英文、数字、标点符号、特殊符号及各种表情符号,并剔除了字数小于6的无意义微博文本。尽可能的排除无关信息带来的干扰,降低数据噪声。
(2)中文分词处理:采用jieba分词工具包实现分词。
(3)停用词处理:通过使用构建的停用词表去除文本中出现较为频繁,但又没有什么实际意义的停用词,主要包括语气助词、副词、介词、连词等。比如“的”、“了”、“这”、“吗”等。去掉停用词不仅可以降低表现力弱的词对处理结果产生较大的干扰,又可以为后续的文本表示降低特征维度。
本发明充分考虑TF-IDF和TextRank的优缺点,分别使用二者提取关键词并进行合并形成关键词集合,使用该集合对微博文本进行初步过滤。
步骤3、构建基于频繁词集与BERT语义的文本双表示模型
本发明采用频繁词集和BERT语义两个维度进行微博文本表示。
频繁词集相似度采用Jaccard相似度来进行度量,如公式(1)所示:
其中M和N表示两个不同的微博热点话题文本,M.txt和N.txt表示由频繁词集表示的微博热点话题文本,count(M.txt∩M.txt)表示两个微博文本共有的频繁词集的个数,count(M.txt∩M.txt)表示两个微博文本一共含有的频繁词集的个数,Jaccard_Sim(M,N)表示两个微博热点话题文本之间的频繁词集相似度。
BERT句向量语义相似度采用两个文本之间的余弦距离来表示,如公式(2) 所示:
其中M.vec和N.vec由BERT模型训练而得到的微博热点话题文本句向量, Vec_Sim(M,N)表示两个微博热点话题文本之间的BERT语义相似度。
最终文本相似度采用加权集成策略由频繁词集相似度和BERT语义相似度得到,如公式(3)所示:
Sim(M,N)=αJaccard_Sim(M,N)+(1-α)Vec_Sim(M,N) (3)
其中Sim(M,N)表示两个微博热点话题文本最终的融合相似度,α是调节权重的重要参数。
步骤4、热点话题评估分析
话题热度计算方法
通过对中文微博话题传播规律进行分析,综合考虑影响微博热点话题的影响因素,通过引入文献计量学中的H指数并选取话题词热度和用户参与度这两个维度对包含话题词的微博文本进行话题热度值计算,综合得出微博热点话题。
话题词热度:首先将某个话题词所在微博的被转发数、被评论数、被点赞数分别从高到低进行排序,直至前H篇微博的被转发数、被评论数、被点赞数各不少于H,得出某话题词的H指数。从而用H指数来判断包含某话题词的微博热度。如公式(4)所示:
其中H
用户参与度:假设粉丝数达到10万的用户为大用户。用户参与度由包含话题词的微博总条数,包含话题词的微博参与用户数,和参与用户中大用户数量来度量。如公式(5)所示:
其中sum是包含某话题词的微博总数,sum_user是包含某话题词的微博参与用户数,user_v是参与用户中大用户数,L
设某话题包含k个话题词,综合话题词热度和用户参与度得出话题的热度计算如公式(6)所示:
其中i是某话题所包含每个话题词,k是某话题所包含的话题词总数,L是微博话题热度值。
对于微博热点话题的热度估计,目前没有一个统一的衡量标准,最直接的是通过话题中文本的频数来进行。通过分析现有的话题热度计算方法,提出用话题词热度、用户参与度并结合H指数来计算微博话题热度值。本方法更符合微博传播特性,从更全面的角度对话题热度进行评估。
实验结果及分析
(1)基于频繁词集与BERT语义的文本双表示模型聚类有效性实验
为验证本发明提出的基于频繁词集与BERT语义的文本双表示模型进行主题聚类的有效性,采用轮廓系数(Silhouette Coefficient)和Calinski-Harabaz指数作为本实验的评价标准,分别对比了以下三种文本表示方法:
方法1:本发明基于频繁词集与BERT语义的文本双表示模型谱聚类。
方法2:基于频繁词集的单一文本表示谱聚类。
方法3:本发明基于频繁词集与BERT语义的文本双表示模型K-means聚类。
在实验过程中,分别使用这三种方法在不同的数据量下进行实验,记录不同方法在每次实验中聚类结果的轮廓系数和CH值。重复实验多次,记录多个轮廓系数和CH值,并计算得到对应文本表示方法的平均轮廓系数和平均CH值。分析实验结果,在不同的数据量下,本发明基于频繁词集与BERT语义的文本双表示模型谱聚类结果在轮廓系数和CH值上均优于基于频繁词集的单一文本表示谱聚类算法,同时也表明使用谱聚类算法在微博短文本上的聚类效果要明显优于 K-means算法。文本双表示模型既使用频繁词集挖掘考虑了短文本的统计信息,又通过BERT句向量中融入了更多的语法、词法以及语义信息,从而能更准确的表示文本中词语之间的潜在语义关系,达到了很好的聚类实验效果。
(2)话题热度评估实验
利用本发明提出的话题热度计算公式分别计算了每个主题下各个话题的热度值,通过与真实的新浪微博排名进行对比,如表4~6所示,可以发现本发明提出的话题热度计算方法计算出来的热度值排名与真实的微博热度值排名一致,从而验证了本发明提出的热度评估方法的有效性。
表4某病毒主题下话题热度实验结果
表55G主题下话题热度实验结果
表6直播主题下话题热度实验结果
机译: 一种基于语义相似度的电子文档自动迭代聚类的方法,一种基于语义相似度的聚类文档的多种搜索方法及计算机可读介质
机译: 基于BERT TEXTRANK嵌入向量的BERT句子的核心句提取方法和设备
机译: 社会数据库中空间频繁词集的数据挖掘方法