【《基于FWS-BERT文本双表示模型的主题聚类分析案例》10000字】_第1页
【《基于FWS-BERT文本双表示模型的主题聚类分析案例》10000字】_第2页
【《基于FWS-BERT文本双表示模型的主题聚类分析案例》10000字】_第3页
【《基于FWS-BERT文本双表示模型的主题聚类分析案例》10000字】_第4页
【《基于FWS-BERT文本双表示模型的主题聚类分析案例》10000字】_第5页
已阅读5页,还剩17页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于FWS-BERT文本双表示模型的主题聚类分析案例目录TOC\o"1-3"\h\u16132基于FWS-BERT文本双表示模型的主题聚类分析案例 1307101.1基于FWS-BERT文本双表示模型的主题聚类流程 2141571.2微博数据预处理 3266751.2.1微博数据清洗 4164971.2.2微博文本分词和去停用词 440521.2.3微博文本特征词提取 537191.3频繁词集文本表示 5113341.1.1频繁词集挖掘 592651.1.2频繁词集相似度计算 7114971.4BERT文本表示 7218981.4.1BERT句向量 858181.4.2BERT模型训练 10224361.4.3BERT语义相似度计算 1198301.5基于FWS-BERT文本双表示模型进行主题聚类 12268321.5.1构建FWS-BERT文本双表示模型 12112421.5.2微博主题聚类 12164551.6实验与分析 13133461.6.1实验环境 13102161.6.2实验数据 14307211.6.3评价指标 15310201.6.4实验参数设置 1615971.6.5实验结果与分析 18本章主要研究基于FWS-BERT文本双表示模型的主题聚类,通过对已有的针对微博等短文本聚类算法进行研究和分析,发现由于微博本身内容简短、表述随意等原因,存在很多的噪声数据,直接处理会对后续分析产生较大的影响。传统的基于频繁词集的文本聚类算法通过从文本数据集中挖掘出的频繁词集来表示文本,虽然该方法降低了文本数据表示的维度,有效解决了基于向量空间模型的文本表示方法所带来的高维问题。但是,由于基于频繁词集的文本表示直接在文本的关键词集上进行挖掘,并没有考虑到特征词语间的语义联系,很难全面准确的表示出文本的内容,聚类效果往往不是很理想。因此,本文提出了一种基于频繁词集和BERT语义的文本双表示模型(TextdualrepresentationmodelbasedonfrequentwordsetsandBERTsemantics,FWS-BERT)。该方法在既保持频繁词集文本表示方法优点的同时又加入了对文本语义的考虑,从更全面的角度对微博文本进行建模。得到微博文本的结构化表示之后,再利用谱聚类算法实现微博主题聚类。针对本章提出的新模型在微博数据集上进行主题聚类实验,实验验证,相比于单一的基于频繁词集的文本表示或其他文本表示方法,本文的方法具有较高的轮廓系数和CH值。1.1基于FWS-BERT文本双表示模型的主题聚类流程本节提出的基于FWS-BERT文本双表示模型的主题聚类流程如图3-1所示,其中的关键步骤包括:数据预处理、文本特征选择、频繁词集挖掘、BERT句向量、FWS-BERT文本双表示模型、文本融合相似度矩阵和主题聚类等。图3-1基于FWS-BERT文本双表示模型的主题聚类流程图Fig.3-1TopicclusteringflowchartbasedonFWS-BERTtextdualrepresentationmodel首先,采集到的原始微博数据集分为用来进行话题发现的微博聚类数据集和BERT模型训练数据集两部分,分别对这两部分数据集进行预处理,其中的主要步骤是微博数据清洗、jieba分词、结合哈工大停用词表去停用词;之后进行特征词汇提取,进一步过滤那些对文本表现力不大的特征词,以降低文本建模的维度;然后使用处理好的训练数据集对BERT预训练模型进行继续训练,对处理完的微博聚类数据集分别进行频繁词集挖掘和输入训练好的BERT模型进行句向量表示,通过构造FWS-BERT文本双表示模型计算文本融合相似度;再将文本融合相似度矩阵输入到谱聚类算法中,得到微博数据集的主题聚类结果。下面将具体介绍其中的关键步骤。1.2微博数据预处理从新浪微博平台上爬取的原始数据内容杂乱、形式多样,因此需要对微博数据进行预处理工作。数据预处理一方面可以过滤噪声数据,提高微博热点话题发现的准确性,另一方面得到规范化的微博文本,为之后的热点话题发现流程做好准备。微博数据的预处理可以分为对微博数据的清洗、微博文本分词和去停用词三个步骤。1.2.1微博数据清洗由于微博原始数据包含很多噪声信息,对话题检测造成一定的干扰,因此需要对数据进行清洗,排除无关信息带来的干扰,减小噪声数据对实验结果的影响,得到有效的微博文本内容。通过分析微博原始数据的特点,本文主要从以下三个方面对微博数据进行清洗处理。(1)剔除长度过于短的微博文本。通过观察发现,有些微博原始数据文本内容只包含两三个词,并且表达的内容大多是自身状态或情感。这些长度太短的微博文本并不能完整的表达一个事件,也不能确定一个明确的话题,是影响聚类结果的噪声数据,需要进行过滤。因此,在预处理过程中剔除了字数小于6的无意义微博文本。(2)过滤微博数据的特殊符号。由于微博文本书写规范性较差,大多数微博包含一些超链接、表情符号和字符等对话题发现无用的信息。因此,本文剔除了微博中与话题含义无关的超链接,阿拉伯数字,英文、日文、韩文等外文,以及“//、@、#、[]、【】”等标记符号,降低数据噪声带来的扰动。(3)过滤对话题提取无意义的微博数据。在新浪微博上经常看到一些别有用途的账号,这些账号在微博平台上可能只是用来宣传商品、发布娱乐笑话等,对于微博话题发现并没有什么实际意义,不在本文的研究范围内。因此,有必要将这类微博数据进行过滤。1.2.2微博文本分词和去停用词为了获得较为规则的数据集,在对微博数据清洗之后,本节采用第2.2节介绍的文本预处理方法对微博文本进行分词和去停用词,为后续分析和建模做准备。(1)微博文本分词:通过分析现有的分词工具各自特点,结合本文实验需求,使用jieba分词工具将微博正文内容进行切词分词处理。此外,本文还构建了一个自定义词典,填补了一些jieba词库里没有的网络新词,以达到更好的分词效果。(2)去停用词:为了过滤掉微博正文内容中的很多语气助词、副词、介词和连接词,本文将哈工大停用词表(包含“的”、“了”、“我”、“吗”等1210个停用词)和真实微博数据中的“网友”、“微博”等常用词相结合的方式构建了一个停用词表,使用该停用词表对微博文本进行去停用词处理。1.2.3微博文本特征词提取通过对微博文本进行分词、去停用词处理后,得到的文本量依然很大。为了进一步降低文本表示的规模,需要进行特征词提取工作。所谓特征词提取,就是按照某种方式,进一步筛选过滤特征词,将文本中具有典型含义的词语筛选出来,使特征词个数大大降低。本文利用第2.4.1节所介绍的TextRank特征词提取算法从中文微博数据集中提取特征词,用这些特征词语代表微博文本本身。1.3频繁词集文本表示传统的文本聚类算法中使用的文本表示模型大多是基于向量空间模型的,通常会导致维度灾难和数据稀疏问题。在文本中,经常同时出现的特征词往往存在一定的关联性,同一主题下不同文本之间共有的特征词也经常重复出现。而频繁词集的概念正是基于特征词的共现信息的,因此,本文引入频繁词集来对文本进行表示。1.1.1频繁词集挖掘根据第2.6.2节提到的几种频繁词集挖掘算法优缺点,并结合本文微博数据的特点,本文选择韩家炜教授等人提出的效率较高的FP-Growth算法进行频繁词集挖掘。在具体实现过程中,通过多次实验,选择一个合适的最小支持度,对微博文本进行频繁词集挖掘。相关定义如下:定义3-1文本集合。进行数据预处理及特征词汇筛选后的文本组成文本集合。定义3-2最小支持度。文本集合中全部特征词记为。文本所包含的特征词。词集为的子集,的支持度为,表示包含词集的文本个数。考虑到频繁词集挖掘算法效率对实验复杂度和实验效果的影响,设置一个控制频繁词集数量的阈值,称该阈值为最小支持度。定义3-3频繁词集。通过对数据文本集合进行FP-Growth频繁词集挖掘,获得比最小支持度阈值大的频繁词集集合,其中表示每个频繁词集,每个频繁词集有多个词语组成。现以进行完数据预处理和特征词汇提取后的微博文本集合为输入,描述使用FP-Growth算法挖掘频繁词集的流程。主要分为两个步骤:构建FP-tree、基于FP-tree挖掘频繁项集。其中第一个步骤构建FP-tree的具体实现过程如算法3-1所示。算法3-1构建FP-tree算法Algorithm3-1BuildFP-treealgorithm输入:微博文本集合,最小支持度阈值输出:FP-treeBegin遍历数据集,计算所有项的支持度。将小于最小支持度的非频繁项进行丢弃,对频繁项从大到小排序,生成频繁项链表;生成FP树根节点,并以空初始化,对于微博文本集合中的每个文本,按照以下步骤操作:选取数据集中的频繁项,并且按照它在中的顺序进行一次排序。把调整后只包含频繁项集的数据集插入到FP树中,如果前缀相同则可共用,构建个头表将相同项的节点相连。返回FP-tree。End由第一个步骤得到FP-tree,之后实施FP-Growth算法的第二个步骤:调用FP_growth(FP-tree,)算法,具体实现过程如算法3-2所示。算法3-2频繁项集挖掘算法procedureFP_growth(FP-tree,)Algorithm3-2FrequentitemsetsminingalgorithmprocedureFP_growth(Tree,)输入:由算法3-1构建好的FP-tree,当前项集,最小支持度输出:微博数据集的频繁项集Begin初值为空ifTree中只包含单个路径PthenforP中结点的每个组合(记作)产生项目集,其支持度中结点的最小支持度;return支持度数大于的项目集elseforTree的头部每个产生项目集,其支持度;构造的条件模式基,而后构造的条件FP-树Tree;ifTreethen递归调用FP_growth(Tree,);endifendforendifEnd1.1.2频繁词集相似度计算由于频繁词集本身内容简短,所包含的信息量也不大,导致传统的欧氏距离或余弦距离等方法不再适用于频繁词集相似度计算。因此,本文采用第2.4.2节介绍的Jaccard距离来度量微博文本之间的频繁词集相似度,如公式(3-1)所示: (3-1)其中表示两个不同的数据文本,分子表示同时出现在两个微博文本中的频繁词集数目,分母表示两个微博文本总共所包含的所有频繁词集数目。这种文本相似度计算方法形式简单且计算方便,通过两个文本所包含词语交集的数量来衡量,但是这种方法忽略了词语之间的隐含语义关系,如“蚂蚁金服”和“支付宝”是两个有着高度语义关系得分两个词,用公式(3-1)计算时就会被认为是两个毫不相关的词,无法体现包含这两个词语文本的真正相似度。1.4BERT文本表示在文本表示方面,使用频繁词集对文本进行表示,虽然降低了短文本表示的维度,在一定程度上解决了数据的稀疏问题,而且操作简单、易于实现。但由于该方法只考虑文本中特征词的统计关系而忽略了特征词之间潜在语义信息,使用单一的频繁词集对文本进行建模会大大影响聚类效果。因此,本文考虑用词嵌入模型方法对文本进行语义挖掘。1.4.1BERT句向量BERT的目标是通过深层次的网络结构,通过大语料环境学习到非常强的上下文语义信息。对于各种自然语言处理领域的下游任务,如阅读理解任务、情感分类任务等,可以使用BERT模型输出的向量作为文本的特征表示。将长度不一样的句子输入到BERT预训练模型中,最终编码成一个长度一样的向量,这个过程也被称为句子编码(SentenceEncoding)[52]。通过句子编码得到的句向量又称为BERT句向量。BERT句向量可以很好地作为特征信息用在各种NLP任务中。使用BERT模型对句子进行表征并得到句向量的过程如图3-2所示。图3-2基于BERT生成句向量流程图Fig.3-2FlowchartofgeneratingsentencevectorbasedonBERT基于BERT模型生成句向量过程主要步骤如下:(1)输入表示。BERT设置了强大的输入表示层,将输入的句子进行字级别的分割,实现了把一个文本句子或句子对用一个词语符号(Token)序列来表达,然后对三层不同含义的Embeddings层加和得到句子的输入表示。如针对以下这句话,输入表示的过程如图3-3所示。图3-3BERT模型的输入表示Fig.3-3InputrepresentationofBERTmodel首先是TokenEmbedding层,这一层是将输入序列中的每个字转化为隐含语义嵌入空间的单个Token向量;为了区分每个句子,SegmentEmbeddings层对句子的每个Token嵌入一个SentenceEmbedding;再到PositionEmbedding层对每个Token加上一个表示位置信息的Position向量。这样,输入序列依次经过这三层的转化后,每个字(Token)会转化为其对应的Tokenembedding、Segmentembedding和Positionembedding,将这三种向量加和得到BERT的线性序列输入表示。(2)多层Transformer-encoder计算。Transformer-encoder中最重要的部分是自注意力(self-attention)模块,在自注意力机制中,文本序列中的每个字对应Query向量(Q)、Key向量(K)和Value向量(V)三个长度相同的向量,Q、K、V是由嵌入向量与三个不同的权重、、分别相乘而得到。每个词的重要程度score由Q、K相乘得到,如公式(3-2)所示: (3-2)之后使用对score进行归一化运算,将计算结果乘以Value向量得到Attention值,如公式(3-3)所示: (3-3)其中表示Key向量的维度,可以视为惩罚因子,避免,内积值过大。为了学习到不同语义场景中的信息表示,使模型关注不同位置的能力得到进一步扩展,BERT预训练模型在self-attention的基础上建立了多头注意力机制(Multihead-attention)。通过连接不同“header”所生成的attention并与矩阵相乘得到文本嵌入向量最终结果。具体公式如(3-4)~(3-5)所示: (3-4) (3-5)其中,为线性变换参数,每进行一次线性变换,值也会随之变化。(3)输出向量。将最后一层Transformer的Encoder中第一个字符[CLS]的字向量经过池化操作和tanh函数处理,得到融合了全文字词相关性及全面语义信息的整个句子向量输出表示,这个向量就是BERT句向量,也就是基于BERT预训练模型对句子的进行特征提取所得到的表征结果。1.4.2BERT模型训练BERT模型的训练特别耗费时间和资源。据Google坦言,一般得准备4至16块TPU,并且训练七天,才能得到一个较好的BERT预训练模型。我们自己重新去预训练一个新的BERT效果较好的模型是不太现实的。不过庆幸的是,Google开源已经开源了BERT中文预训练模型“BERT-Base,Chinese”,该模型是基于中文训练语料训练的,包含比较完全的中文词表示及数字与字母,该模型采用了12层Transformer编码器,12个自注意力头,输出的维度为768,总参数达110M。为了将BERT预训练模型用在特定的微博领域,当前通用的做法是在BERT预训练模型上继续使用特定领域语料对该模型进行继续训练[53]。因此,本文使用海量的微博文本作为训练BERT预训练模型的语料库,使得到的BERT模型更加符合微博语言环境。训练流程图如图3-4所示。图3-4BERT训练流程图Fig.3-4FlowchartofBERTtraining本文利用训练好的BERT模型实现句子编码,首先启动BERT模型,将处理好的文本输入到模型当中,获得微博文本768维的句向量表示,作为后续分析使用。BERT模型部分文本句编码如表3-1所示。表3-1BERT模型部分文本句编码Tab.3-1PartofthetextsentenceencodingoftheBERTmodel文本句编码最新消息陈薇团队新冠康复者研制新药[0.6091076220.500918628……]封禁未成年用户直播打赏功能[0.1098992140.814245346……]2020世界5G大会广州最新关注[0.4095766910.701128934……]关注新冠肺炎高风险岗位疫苗[0.192096487-0.803129541……]1.4.3BERT语义相似度计算本文通过训练好的BERT模型将输入文本转化为句向量后,采用第2.4.2节介绍的余弦距离来计算两个文本数据对象之间的BERT句向量语义相似度,具体计算公式如(3-6)所示: (3-6)其中表示由BERT模型训练而得到文本句向量,计算出的余弦值越接近于1,意味着这两个文本相似度越大,越容易被聚为同一类。1.5基于FWS-BERT文本双表示模型进行主题聚类1.5.1构建FWS-BERT文本双表示模型由于微博文本具有字数少、表达口语化、稀疏度高等特点,所以在计算这种短文本间相似度时要比传统方法困难很多。目前单一的基于文本特征词统计关系往往不能准确表示文本特征,导致文本相似度出现漂移,难以得到较好的聚类结果。因此本文选择采用BERT文本句向量所计算的外部语义关系并将其融合到基于频繁词集计算文本相似度的方法中,构建基于特征词的统计关系和上下文语义关系的文本双表示模型来处理微博文本,从更全面的角度对微博文本进行表示。最终文本相似度由频繁词集相似度公式(3-1)和BERT句向量语义相似度公式(3-6)两部分加权集成得到,计算方式如公式(3-7)所示: (3-7)其中是一个加权因子,是调节两种相似度所占比重的重要参数,根据实验结果确定,。通过FWS-BERT文本双表示模型构建的微博文本融合相似度矩阵,的形式如(3-8)所示: (3-8)是一个对称矩阵,其中。的值越大,表明两个文本的融合相似度越大,则在聚类过程中这两个文本更容易被分配到一个类簇中。1.5.2微博主题聚类谱聚类(spectralclustering)[54]作为一种应用广泛的聚类算法,其基本原理是把给定的全部数据当作空间中的数据点,这些点之间通过边连接构成一个带权图。若数据点之间距离较远,则边权重值较低,反之,边权重值较高,通过图的划分,使得子图内的边权重和达到最高,即簇内更加紧密,与此同时,不同的子图间边权重和达到最低,簇间更加分离,从而实现聚类的效果。谱聚类算法得以广泛推广使用的原因有以下几点:(1)算法使用起来简单,只需重点考虑如何对特征值进行分解;(2)适用于任意形态的样本数据空间中;(3)算法可以做到收敛为全局最优解;(4)仅仅需要文本的相似度矩阵,适用于稀疏数据的聚类。鉴于谱聚类算法的以上优点以及本文对微博数据聚类的实验要求,本文基于FWS-BERT文本双表示模型计算微博文本融合相似度矩阵,并利用谱聚类算法得到微博文本主题聚类结果。具体实现流程如算法3-3所示。算法3-3基于FWS-BERT的主题聚类算法Algorithm3-3TopicclusteringalgorithmbasedonFWS-BERT输入:微博数据集,聚类簇数目输出:主题聚类结果簇划分Begin对微博数据集分别进行数据预处理和特征词汇提取;对处理好的微博数据利用FP-Growth算法进行频繁词集挖掘,并根据公式(3-1)计算频繁词集相似度;对处理好的微博数据利用训练好的BERT模型生成句向量,并根据公式(3-6)计算句向量的语义相似度;根据公式(3-7)计算文本融合相似度,构建样本的相似矩阵;构建度矩阵;计算拉普拉斯矩阵;计算的特征值,将特征值按升序排列,计算前个特征值的特征向量;将步骤7得到的k个列向量组成矩阵,;记为的第行向量,;对于,分别对进行单位化,得到;利用K-means算法对新数据点进行聚类,得到簇;输出主题簇划分,。End1.6实验与分析1.6.1实验环境在本文中,实验初期数据的爬取、数据预处理以及后续的微博热点话题发现相关实验均是基于python语言编写实现的,具体的实验环境如表3-2所示。表3-2实验开发环境Tab.3-2Experimentaldevelopmentenvironment名称参数硬件环境处理器Intel(R)Core(TM)i7-8700CPU@1.20GHz1.19GHz内存16.0GB硬盘1T固态硬盘软件环境操作系统Windows10专业版64bit开发语言Python开发工具Anaconda3spyder(python1.6)数据库MySQL1.6.2实验数据本文的实验数据均是来自真实的新浪微博数据,具体实现是使用python语言编写网络爬虫进行数据爬取。首先使用代码设置模拟微博用户的登陆,然后根据预先设定的一个种子URL,设置含有初始URL地址的待爬URL队列,然后不断从URL队列中获取一个URL链接进行对应网页数据采集。对当前页面进行信息解析和链接提取,得到相应的内容信息和新的URL链接,并将新的URL链接保存到URL队列,以便以后的递归爬取。在抓取策略上,采用深度有限的广度优先方式,这种方式是将深度优先和广度优先进行结合,在基于广度优先的前提下,对爬行的深度实施一定程度的限制,降低只使用深度优先遍历方式造成的深度过深的影响,重复这一过程直到URL队列为空,数据采集结束。微博数据采集流程如图3-5所示。图3-5微博数据采集流程Fig.3-5Weibodatacrawlingprocess本文在新浪微博平台上采集了两类数据,第一类是随机爬取的微博文本共1.609GB,作为BERT语言模型的训练数据;第二类是采用定主题的方式爬取了2020年11月1日至12月31日之间的微博数据。第二类数据集包含微博内容数据和微博用户数据两部分,其中微博内容数据主要包含用户id、微博正文、转发数、评论数、点赞数、发布时间等字段;微博用户数据是根据微博内容数据集的用户id字段爬取的,主要包含用户id、粉丝数、关注数、微博等级、会员等级等字段。通过对微博内容数据集进行筛选,选取了新冠、5G、直播、打工人四个主题下的一些热点话题数据,共10134条,该数据集没有进行对主题及话题的人工标注;与之对应微博用户数据集共9071条。数据集的分布信息如表3-3所示。表3-3各个主题下数据分布Tab.3-3Datadistributionundereachtopic主题话题数据量用户数据量新冠234722315G23422022直播27702458打工人26752360为了得到实验可用的数据集,根据第1.2节介绍的微博数据预处理方法对采集来的文本进行数据清洗,使用jieba分词工具包实现中文分词,并通过停用词表匹配去掉停用词。为了降低数据的稀疏性以及建模的维度,利用TextRank算法进行特征词汇提取,选择其中最具有代表性的词汇,对微博文本进行初步过滤,从而得到规范的数据集。最后预处理完的部分微博内容如图3-6所示:图3-6预处理后的部分微博文本Fig.3-6PartofWeibotextafterpreprocessing1.6.3评价指标关于文本聚类实验结果的评价指标有很多,本文采用轮廓系数(SilhouetteCoefficient)和Calinski-Harabaz指数作为实验结果评价标准,这两个评价指标均不需要数据的真实标签就可以对聚类结果进行判断。(1)轮廓系数。轮廓系数是分析结果簇紧密与分散程度的评价指标,可以用来在原始数据上评估不同算法的聚类质量。轮廓系数取值区间为[-1,1],取值越大,也就意味着聚类结果越合理。计算方法如公式(3-9)所示: (3-9)其中为该数据样本与其所在簇内其他数据样本的平均距离,为该数据样本与距离它最近的另一个结果簇样本数据的平均距离。(2)Calinski-Harabaz(CH)。Calinski-Harabaz(CH)也适用于不知道数据真实标签的场合。CH值越大,则类簇自身的紧密程度越大,同时类簇之间的分离程度越大,聚类结果越符合真实情况。计算如公式(3-10)所示: (3-10)在表达式中,为聚类结果类别数,为数据集中数据样本总数,为第个聚类结果类中的数据量,为第类的代表点到数据集中心的距离,为类中样本数据与其代表点的距离。1.6.4实验参数设置在与其他方法进行对比实验之前,需要对本文方法中的关键参数进行调优实验。本文提出的模型中设计到的参数主要包括三部分,分别是挖掘频繁词集时的最小支持度、BERT模型参数以及计算文本融合相似度时的加权因子。(1)BERT模型参数。为了使得到的BERT模型更加符合微博的语言环境,本文使用随机爬取的1.609GB微博文本作为训练BERT预训练语言模型的语料库。将该数据集按6:2:2的比例划分成训练集、验证集和测试集,加载中文预训练模型“BERT-Base,Chinese”,按照1.4.2节训练流程图进行训练。其中的详细参数设置如表3-4所示。表3-4BERT模型参数设置Tab.3-4BERTmodelparametersettings参数含义取值max_seq_length最大序列长度140train_batch_size每批训练集数据量16learning_rate学习率0.00002num_train_epochs训练次数1.0Keep_probDropout随机失活率0.5其中,max_seq_length设置为140的原因是微博文本的长度限制在140字以内,故而以其最大长度作为输入的限制长度。train_batch_size设置为16,以便能更好地运行。learning_rate采用原有模型默认的值。(2)最小支持度和融合相似度加权因子确定。在利用FP-Growth算法进行频繁词集挖掘时,最小支持度需要通过实验确定最优值。在FWS-BERT文本双表示模型中,加权因子决定了计算文本相似度时频繁词集和BERT语义所占的比重,是影响微博主题聚类效果的重要参数。取值较大时,FWS-BERT模型过多的考虑微博文本的统计特征而忽略了上下文语义挖掘;取值较小时,由于微博短文本自身包含的信息量较少、上下文特征不足,FWS-BERT模型过多的关注短文本的语义信息可能也不能很好的实现主题聚类。因此,为了达到更为理想的实验结果,本文通过不断调整和,在新冠、5G、直播、打工人四个主题的数据集上进行主题聚类实验,其中从10开始,每间隔5选取一个值,值从0.5开始,每间隔0.05选取一个值,记录每次取值下多次聚类实验结果的轮廓系数和CH值的平均值,如表3-5所示和表3-6所示。表3-5和对于轮廓系数的影响Tab.3-5Theinfluenceofandontheprofilecoefficient0.50.550.60.650.7100.6650.7610.7670.7060.692150.6910.7630.7720.7100.699200.7090.7720.7930.7440.710250.6930.7700.7800.7350.703300.6800.7620.7650.7030.684表3-6和对于CH值的影响Tab.3-6TheinfluenceofandonthevalueofCH0.50.550.60.650.710172918012001191418031518301934221020191975201956219823892098199025190919782128197418873018131887190918621809通过分析表3-5和表3-6的实验数据,发现当取0.6附近,取20附近时,聚类取得较好实验结果,而随着和取值的增加,轮廓系数值和CH值呈现逐渐减少趋势,主题聚类结果吻合程度降低。所以最终选取,分别作为融合相似度加权因子和最小支持度参数取值。1.6.5实验结果与分析(1)文本表示方法对比实验。为了验证本文提出的FWS-BERT文本双模型的有效性,本实验使用经典的K-medoids算法,采用轮廓系数(SilhouetteCoefficient)和Calinski-Harabaz指数作为评价标准,分别使用以下四种方法进行了对比实验:(a)TF-IDF:基于TF-IDF的文本表示方法。(b)FWS:单一的基于频繁词集文本表示方法。(c)FWS-word2vec:基于频繁词集与word2vec的文本双表示方法。(d)FWS-BERT:本文的基于频繁词集与BERT语义的文本双表示方法。在实验过程中,选取不同数据量的样本数据组成四组,分别使用这四种文本表示方法在每一组数据样本下进行实验,记录不同方法在每次实验中聚类结果的轮廓系数和CH值。重复每一组实验10次,记录多个轮廓系数和CH值,并计算得到对应文本表示方法的平均轮廓系数和平均CH值,实验结果如图3-7a)~b)所示。不同数据量下四种文本表示方法的轮廓系数Contourcoefficientsoffourtextrepresentationmethodsunderdifferentdatavolumes不同数据量下四种文本表示方法的CH值CHvalueoffourtextrepresentationmethodsunderdifferentdatavolume图3-7不同数据量下四种文本表示方法的实验对比Fig.3-7Experimentalcomparisonoffourtextrepresentationmethodsunde

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论