CN109214454B - 一种面向微博的情感社区分类方法 - Google Patents
一种面向微博的情感社区分类方法 Download PDFInfo
- Publication number
- CN109214454B CN109214454B CN201811008927.4A CN201811008927A CN109214454B CN 109214454 B CN109214454 B CN 109214454B CN 201811008927 A CN201811008927 A CN 201811008927A CN 109214454 B CN109214454 B CN 109214454B
- Authority
- CN
- China
- Prior art keywords
- emotional
- microblog
- topic
- emotion
- keywords
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000008451 emotion Effects 0.000 title claims abstract description 49
- 238000000034 method Methods 0.000 title claims abstract description 30
- 230000002996 emotional effect Effects 0.000 claims abstract description 88
- 230000014509 gene expression Effects 0.000 claims abstract description 40
- 230000007935 neutral effect Effects 0.000 claims abstract description 13
- 238000007635 classification algorithm Methods 0.000 claims abstract description 8
- 238000004422 calculation algorithm Methods 0.000 claims description 56
- 238000012549 training Methods 0.000 claims description 13
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000012360 testing method Methods 0.000 claims description 7
- 238000005070 sampling Methods 0.000 claims description 6
- 238000013145 classification model Methods 0.000 claims description 3
- 238000004458 analytical method Methods 0.000 abstract description 11
- 238000011160 research Methods 0.000 abstract description 7
- 230000008859 change Effects 0.000 abstract description 2
- 238000005065 mining Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000004630 mental health Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
- G06F18/24155—Bayesian classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/28—Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Cheminformatics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种面向微博的情感社区分类方法,涉及情感分析技术领域。该方法包括:建立基于情感词典和情感表情的朴素贝叶斯分类分类算法SL‑SE‑NB;建立基于LPA话题模型的用户‑超话题‑子话题‑关键词的四层模型UTK;对话题进行情感分类,形成积极、消极和中性3个情感社区。本发明提供的一种基于面向微博的情感社区分类方法,该方法不仅能够发现模块度较高的情感社区,而且运行时间也在可接受范围之内,本方法既可以为有关部门监测微博用户的舆论导向,同时又能够帮助商家减少商业损失,而且还可以给心理研究机构提供敏感话题人群的情感变化分析结果。
Description
技术领域
本发明涉及情感分析技术领域,具体涉及一种面向微博的情感社区分类方法。
背景技术
随着Web2.0的出现和普及,互联网用户迅速从信息的消费者转变成了相应的生产者。借助微博为代表的社交网络平台,用户可以自由表达情感、互动交流,使得跨越地理位置而具有相同喜好的用户聚集成一个社区成为可能。因此通过挖掘分析海量社交网络数据,发现其中潜在社区已经成为近年来的热点研究问题。
目前,在线社交网络已成为连接网络虚拟空间和人类物理世界不可或缺的桥梁。如果能通过微博用户的文本及网络交互信息,分析在某一话题下具有情感倾向一致性的用户群体,对于微博情感分析、舆情监测及心理学研究等领域都具有重要意义。例如在网络舆情分析方面,通过挖掘微博热点事件中情感社区,可以帮助有关部门了解网络舆情以及不同情感社区的构成;在心理健康分析领域,对微博用户进行情感社区划分,便于进一步对其中的高压力人群实施针对性的心理疏导和专业干预。
情感分析亦称观点挖掘,旨在通过文本分析进行情感计算从而提取用户的情感倾向(极性)及所持观点。情感极性包括粗粒度和细粒度两种,前者将情感分为正、中、负三类,而后者则给出“喜怒哀乐惊恶恐”等复杂情绪倾向。目前,社交网络情感分析方法分为基于情感词典(无监督)和基于机器学习(有监督)两类。基于词典和规则的方法一般不需要训练数据,通过构造文档或句子中的情感函数,计算出情感极性。基于机器学习的方法则使用含大量标注的训练数据,选择不同的监督学习方法如朴素贝叶斯、最大熵、SVM等构造分类器,实现对微博文本的情感极性预测。
现有的LDA模型能够将文档的高维单词空间表示转换成低维的话题空间表示,是话题模型的入门算法。PAM模型是聚类分析算法中最早提出的一种k-中心点算法,选用簇中位置最中心的对象,对n个对象给出k个划分。经典的LDA模型只能将文本分成若干类,并不能将文本分到具体某一种,而PAM模型的准确率相对较低,耗时也相对比较长。
社区发现又称社群监测,用以发现社交网络中的社区结构。相关算法主要分为3类,即基于网络拓扑结构的社区发现、基于语义的社区发现及融合拓扑结构和语义的社区发现。基于网络拓扑结构的算法分为非重叠社区划分和重叠社区划分,此类方法的特点是仅考虑用户之间的拓扑关系,用户间的相似度度量并不全面。基于语义的社区发现算法则通过文本内容的相似性进行聚类,并根据文本相似性划分社区。融合拓扑结构和语义的社区发现算法是结合网络拓扑结构和文本信息建立模型,旨在挖掘有共同兴趣的群体。与传统社区发现不同,情感社区分类是指挖掘社交网络中有相似情感倾向或持相似观点的社群。目前尚无针对中文社交媒体的情感社区发现研究,而该研究对网络舆情、公共心理健康、个性化推荐等领域均有重要意义和应用价值。
综上所述,传统的社区发现是基于网络结构的,而忽略了用户产生的文本内容,而且基于情感词典分类效果不太理想。
发明内容
针对现有技术存在的问题,本发明提供一种面向微博的情感社区分类方法,在基于情感词典的分类方法上,加入微博情感表情特征,同时采用朴素贝叶斯算法训练分类器,提出了基于情感词典和情感表情的朴素贝叶斯分类分类算法SL-SE-NB(Naive BayesBased Semi-lexicon and Semi-emoji),并基于LDA话题模型,提出一种用户-超话题-话题-关键词模型UTK(User-Topic-KeyWords),最后,在LPA算法基础上加入话题概念,并抽取带有情感倾向的用户作为种子集进行标签传递,结合SL-SE-NB算法和UTK模型提出基于种子集合和最小边介数的标签传播算法SMB-LPA(Label Propagation Algorithm BasedSeeds and Min-Edge Betweenness)。
为了实现上述目的,一种面向微博的情感社区分类方法,包括以下步骤:
步骤1:在基于情感词典的分类方法上,加入微博情感表情特征,采用朴素贝叶斯算法训练分类器建立基于情感词典和情感表情的朴素贝叶斯分类分类算法SL-SE-NB,具体步骤如下:
步骤1.1:读取消极、积极以及中性训练数据集中的每一篇博文,分别统计3个训练数据集中对应的情感词和情感表情的权重;
步骤1.2:读取实验数据集中的每一篇博文,统计当前微博中的情感词和情感表情的词频;
步骤1.3:分别计算情感词和情感表情出现在消极微博和积极微博中的后验概率;
步骤1.4:根据得到的情感词和情感表情在消极微博和积极微博中的后验概率,计算博文的情感倾向Ans;
步骤2:建立基于LPA话题模型的用户-超话题-子话题-关键词的四层模型UTK,具体步骤如下:
步骤2.1:抽取每篇博文的关键词,计算语料库中每个关键词对应的超话题的概率;
步骤2.2:通过吉布斯采样获取概率矩阵Φ,并获取矩阵中最大的K个关键词对应的超话题,保存K个超话题中出现概率最高的K个词;
步骤2.3:抽取测试集中每篇博文的关键词,根据新的语料库、超话题中K个出现概率最高的词,计算新抽取的关键词对应的超话题的概率;
步骤2.4:根据Φ概率矩阵,重新采样每个词的话题,并将新文档中话题概率最高的K话题加入用户话题集合UserTopics中;
步骤3:根据建立的基于情感词典和情感表情的分类模型和提取到的用户话题集合UserTopics对话题进行情感分类,形成积极、消极和中性3个情感社区,具体步骤如下:
步骤3.1:加载边关系并初始化提取到的用户话题集合UserTopics中话题的标签;所述标签为情感极性,其中,积极情感对应标签为1,消极情感对应标签为-1,中性情感对应标签为0;
步骤3.2:初始化当前迭代次数iter_time=0,并设定最大迭代次数max_ite;
步骤3.3:判断所有节点的标签与大部分邻居节点标签是否相同且当前迭代次数iter_time是否小于最大迭代次数max_iter,若所有节点的标签与大部分邻居节点标签相同且当前迭代次数iter_time小于最大迭代次数max_iter,则继续步骤3.4,否则停止迭代,输出用户话题集合UserTopics及其标签;
步骤3.4:判断当前抽取的关键词是否在提取到的用户话题集合UserTopics内,若在,则不进行关键词更新,重新抽取关键词返回步骤3.4,若不在,则继续步骤3.5;
步骤3.5:判断当前抽取的关键词的出现概率是否大于用户话题集合UserTopics内出现概率最大的关键词,若是,则将当前抽取的关键词替换用户话题集合UserTopics内出现概率最小的关键词,重新抽取关键词返回步骤3.4,若否,则令iter_time=iter_time+1,返回步骤3.3。
进一步地,所述步骤1.3中计算后验概率的公式如下;
其中,PostPro为情感词或情感表情在博文中出现的后验概率,weight(word oremoji)为情感词或情感表情的权重,weight(all word or all emoji)为所有情感词或情感表情的权重。
进一步地,所述步骤1.4中博文情感倾向Ans的计算公式如下:
WordAns=NegativeWordAns-PositiveWordAns;
EmojiAns=NegativeEmojiAns-PositiveEmojiAns;
Ans=αWordAns+βEmojiAns;
其中,PositiveWordAns为积极情感词在博文中出现的后验概率,NegativeWordAns为消极情感词在博文中出现的后验概率,PositiveEmojiAns为积极表情在博文中出现的后验概率,NegativeEmojiAns为消极表情在博文中出现的后验概率,α和β为参数且α+β=1;
根据公式的计算结果判定博文的情感倾向,若Ans大于0,则判定该博文的情感倾向为负向,若Ans小于0,则判定该博文的情感倾向为正向,若Ans等于0,则判定该博文情感倾向为中性。
本发明的有益效果:
本发明提出一种基于面向微博的情感社区分类方法,该方法不仅能够发现模块度较高的情感社区,而且运行时间也在可接受范围之内,本方法既可以为有关部门监测微博用户的舆论导向,同时又能够帮助商家减少商业损失,而且还可以给心理研究机构提供敏感话题人群的情感变化分析结果。
附图说明
图1为本发明实施例中面向微博的情感社区分类方法的流程图;
图2为本发明实施例中步骤1的流程图;
图3为本发明实施例中计算博文情感倾向Ans的参数设置参考图;
图4为本发明实施例中SL-SE-NB、Senti-Lexicon和Naive Bayes三个算法的召回率对比图;
图5为本发明实施例中SL-SE-NB、Senti-Lexicon和Naive Bayes三个算法的F1值对比图;
图6为本发明实施例中步骤2的流程图;
图7为本发明实施例中话题数K的设置参考图;
图8为本发明实施例中UTK、LDA、PAM三个模型的召回率对比图;
图9为本发明实施例中UTK、LDA、PAM三个模型的困惑度对比图;
图10为本发明实施例中步骤3的流程图;
图11为本发明实施例中SMB-LPA、LPA、GN三个算法在各个话题的规范化互信息对比图。
具体实施方式
为了使本发明的目的、技术方案及优势更加清晰,下面结合附图和具体实施例对本发明做进一步详细说明。此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
一种面向微博的情感社区分类方法,流程如图1所示,具体方法如下所述:
本实施例中,通过搭建分布式爬虫框架,爬取了2016年5月2日到2016年5月16日发布的微博数据,共搜集9028632篇微博,539564个用户,对搜集到的微博进行过滤筛选,清洗掉一些转发微博、回复微博、广告、新闻等内容,同时过滤了一些中英、中日、中韩混用的微博,最后并把繁体微博转化成简体微博,剩余约1471234篇微博。另外,鉴于本申请主要研究的是计算原创微博的情感倾向,并且主要针对的是大众用户和活跃用户,因此,微博用户需具备以下特点:(1)在2016年5月2日到2016年5月16日期间发表微博篇数在25到35之间,且没有被新浪微博屏蔽的用户;(2)有粉丝或者关注的用户;(3)非认证信息的用户。基于上述要求,最后选取了98250篇微博,3323个微博用户作为本申请实施例中的数据集,并爬取了这3323个微博的关注或者粉丝关系,一共获得479543条边关系。
步骤1:在基于情感词典的分类方法上,加入微博情感表情特征,采用朴素贝叶斯算法训练分类器建立基于情感词典和情感表情的朴素贝叶斯分类分类算法SL-SE-NB,流程如图2所示,具体步骤如下:
步骤1.1:读取消极、积极以及中性训练数据集中的每一篇博文,分别统计3个训练数据集中对应的情感词和情感表情的权重;
步骤1.2:读取实验数据集中的每一篇博文,统计当前微博中的情感词和情感表情的词频;
步骤1.3:分别计算情感词和情感表情出现在消极微博和积极微博中的后验概率;
所述计算后验概率的公式如下;
其中,PostPro为情感词或情感表情在博文中出现的后验概率,weight(word oremoji)为情感词或情感表情的权重,weight(all word or allemoji)为所有情感词或情感表情的权重。
步骤1.4:根据得到的情感词和情感表情在消极微博和积极微博中的后验概率,计算博文的情感倾向Ans;
所述博文情感倾向Ans的计算公式如下:
WordAns=NegativeWordAns-PositiveWordAns;
EmojiAns=NegativeEmojiAns-PositiveEmojiAns;
Ans=αWordAns+βEmojiAns;
其中,PositiveWordAns为积极情感词在博文中出现的后验概率,NegativeWordAns为消极情感词在博文中出现的后验概率,PositiveEmojiAns为积极表情在博文中出现的后验概率,NegativeEmojiAns为消极表情在博文中出现的后验概率,α和β为参数且α+β=1;
根据公式的计算结果判定博文的情感倾向,若Ans大于0,则判定该博文的情感倾向为负向,若Ans小于0,则判定该博文的情感倾向为正向,若Ans等于0,则判定该博文情感倾向为中性。
本实施例中,为了使得分类准确率最高,分别对α和β进行了参数设置。进行参数设置的数据集选取了已经标注的2000条数据进行召回率对比实验。如图3所示,当α=0.8或者β=0.2时,召回率最大。
本实施例中,选取基于情感词典的微博情感分类算法(Senti-Lexicon)和朴素贝叶斯分类算法(Bayes)进行性能对比,采用召回率以及准确率和召回率的调和平均数F1值作为实验评价指标,分别计算测试数据集规模在2000,3000,4000,5000,6000条微博时的召回率,实验对比结果如图4和图5所示。
从图4可以看出,本申请提出的基于情感词典和情感表情的朴素贝叶斯分类算法(SL-SE-NB)比其他两种算法(Senti-Lexicon和Naive Bayes)的召回率都要高,但是随着数据集样本量增加,三种算法的召回率都呈递减趋势,这主要是因为测试数据集存在一定噪声数据,随着样本量增加,噪声数据也越来越多,从而导致了召回率下降。
从图5可以看到,本申请提出的SL-SE-NB算法的F1值高于其他两种算法(Senti-Lexicon和Naive Bayes),但随着实验数据集样本量增加,F1值均呈下降趋势,主要原因是实验数据集由本实验室人工标注,故存在个人标注差异。数据量较小时,这种差异不明显,随着数据量的增加,差异性也会越明显。
步骤2:建立基于LPA话题模型的用户-超话题-子话题-关键词的四层模型UTK,流程如图6所示,具体步骤如下:
步骤2.1:抽取每篇博文的关键词,计算语料库中每个关键词对应的超话题的概率;
步骤2.2:通过吉布斯采样获取概率矩阵Φ,并获取矩阵中最大的K个关键词对应的超话题,保存K个超话题中出现概率最高的K个词;
步骤2.3:抽取测试集中每篇博文的关键词,根据新的语料库、超话题中K个出现概率最高的词,计算新抽取的关键词对应的超话题的概率;
步骤2.4:根据Φ概率矩阵,重新采样每个词的话题,并将新文档中话题概率最高的K话题加入用户话题集合UserTopics中;
对于UTK模型,需要设置参数包括话题数K、狄雷克利分布的超参数a和b。在评价话题抽取模型的性能时,采用召回率、困惑度作为评价指标。关于最优话题数K的设置,根据设置不同的topic数量画出话题数-困惑度曲线图,选取最佳话题数K,如图7所示,随着话题数增加,困惑度趋于减小,当话题数达到100以后,困惑度值基本趋于收敛,因此,选取话题数为100左右最为合适。
本实施例中,选取训练数据集的超话题数K为102个,狄雷克利分布的超参数a和b根据经验调优得到a=0.1和b=0.1。
本实施例中,对测试数据集的超话题进行编号,得到集合{1,12,28,35,42,56,63,71,85,97,101},选取对比算法LDA算法和PAM算法,对比三种算法中各个超话题的召回率,结果如图8所示,从图8可以看出,UTK话题模型算法的召回率均高于传统LDA算法和PAM算法。在1号超话题和63号超话题的测试数据集上,UTK模型的召回率可以达到83.20%和82.56%,但在56号超话题上UTK的召回率降到了70.45%,原因是它是关于#戛纳电影节#的一个超话题,其中涉及到的明星名字非常多,会导致在话题抽取的时候把其中关于某个明星的内容归类到其他超话题中,从而出现召回率降低的情况。相对于LDA算法,PAM算法融入了层次化思想,不仅可以对子节点进行聚类,而且可以抽取更有代表性的父节点层,所以PAM算法得到的实验结果虽不如UTK模型,但是比LDA有优势。在相同参数下,分别计算UTK模型、PAM模型和LDA模型的困惑度,结果如图9所示。从图9可以看出,随着迭代次数的增加,困惑度趋于收敛,UTK模型的困惑度都要比其他模型的困惑度要小。这也说明UTK模型可以用于真实数据集建模和预测。
步骤3:根据建立的基于情感词典和情感表情的分类模型和提取到的用户话题集合UserTopics对话题进行情感分类,形成积极、消极和中性3个情感社区,如图10所示,具体步骤如下:
步骤3.1:加载边关系并初始化提取到的用户话题集合UserTopics中话题的标签;所述标签为情感极性,其中,积极情感对应标签为1,消极情感对应标签为-1,中性情感对应标签为0;
步骤3.2:初始化当前迭代次数iter_time=0,并设定最大迭代次数max_ite;
本实施例中,设定最大迭代次数max_ite=1000。
步骤3.3:判断所有节点的标签与大部分邻居节点标签是否相同且当前迭代次数iter_time是否小于最大迭代次数max_iter,若所有节点的标签与大部分邻居节点标签相同且当前迭代次数iter_time小于最大迭代次数max_iter,则继续步骤3.4,否则停止迭代,输出用户话题集合UserTopics及其标签;
步骤3.4:判断当前抽取的关键词是否在提取到的用户话题集合UserTopics内,若在,则不进行关键词更新,重新抽取关键词返回步骤3.4,若不在,则继续步骤3.5;
步骤3.5:判断当前抽取的关键词的出现概率是否大于用户话题集合UserTopics内出现概率最大的关键词,若是,则将当前抽取的关键词替换用户话题集合UserTopics内出现概率最小的关键词,重新抽取关键词返回步骤3.4,若否,则令iter_time=iter_time+1,返回步骤3.3。
对于本申请提出的SMB-LPA算法,选取LPA算法和GN算法进行实验结果对比,实验抽取了五个比较活跃的话题,采用模块度、规范化互信息和算法的运行时间等评价指标。
对五个比较活跃的话题进行五次模块度值计算,求五次结果的平均值取得三个算法的模块度值,结果对比如表1所示。
表1模块度值比较
从表1可以看出,SMB-LPA算法是三个算法中模块度值最大的,同时每次计算的模块度值差别不大,这也说明SMB-LPA算法具有很好的稳定性。LPA算法的模块度值差异较大,这是由标签传递算法的随机性造成的。由图11可知,当网络节点较少时各个话题的规范互信息值都比较高。如#美国队长#话题中,三个算法计算得到的规范互信息相差不多。但当存在较多话题社区时,SMB-LPA算法的规范互信息高于其他两种算法。
将每个算法分别运行30次求平均值,得到三个算法的平均运行时间结果对比如表2所示。
表2运行时间比较
话题名称 | LPA(/ms) | G-N(/ms) | SMB-LPA(/ms) |
李宇春 | 1240 | 1560 | 1320 |
欢乐颂 | 42 | 56 | 43 |
魏则西 | 38 | 59 | 39 |
美国队长 | 25 | 36 | 28 |
戛纳 | 124 | 169 | 135 |
从表2可以看出,LPA算法的运行时间最短,而SMB-LPA次之,GN算法则落后于两种算法。LPA算法运行时间最短的原因是其执行时只需要根据标签进行随机传递,不需要计算其他额外变量;而SMB-LPA在LPA的基础上,需要计算最小边介数,所以运行速度不及LPA;GN算法需计算全部的边介数,SMB-LPA在最大标签个数不唯一时才需要计算边介数,所以SMB-LPA要比GN算法的运行速度快。
综上所述,本申请提出的算法解决了标签更新次序的随机性问题,从而解决了传统LPA在进行社区发现时造成的不稳定性,尤其是对于网络节点比较多的话题社区,SMB-LPA算法的规范互信息值最高,并且在运算速度上也取得了不错的效果。。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;因而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求所限定的范围。
Claims (3)
1.一种面向微博的情感社区分类方法,其特征在于,包括以下步骤:
步骤1:在基于情感词典的分类方法上,加入微博情感表情特征,采用朴素贝叶斯算法训练分类器建立基于情感词典和情感表情的朴素贝叶斯分类分类算法SL-SE-NB,具体步骤如下:
步骤1.1:读取消极、积极以及中性训练数据集中的每一篇博文,分别统计3个训练数据集中对应的情感词和情感表情的权重;
步骤1.2:读取实验数据集中的每一篇博文,统计当前微博中的情感词和情感表情的词频;
步骤1.3:分别计算情感词和情感表情出现在消极微博和积极微博中的后验概率;
步骤1.4:根据得到的情感词和情感表情在消极微博和积极微博中的后验概率,计算博文的情感倾向Ans;
步骤2:建立基于LPA话题模型的用户-超话题-子话题-关键词的四层模型UTK,具体步骤如下:
步骤2.1:抽取每篇博文的关键词,计算语料库中每个关键词对应的超话题的概率;
步骤2.2:通过吉布斯采样获取概率矩阵Φ,并获取矩阵中最大的K个关键词对应的超话题,保存K个超话题中出现概率最高的K个词;
步骤2.3:抽取测试集中每篇博文的关键词,根据新的语料库、超话题中K个出现概率最高的词,计算新抽取的关键词对应的超话题的概率;
步骤2.4:根据Φ概率矩阵,重新采样每个词的话题,并将新文档中话题概率最高的K话题加入用户话题集合UserTopics中;
步骤3:根据建立的基于情感词典和情感表情的分类模型和提取到的用户话题集合UserTopics对话题进行情感分类,形成积极、消极和中性3个情感社区,具体步骤如下:
步骤3.1:加载边关系并初始化提取到的用户话题集合UserTopics中话题的标签;所述标签为情感极性,其中,积极情感对应标签为1,消极情感对应标签为-1,中性情感对应标签为0:
步骤3.2:初始化当前迭代次数iter_time=0,并设定最大迭代次数max_ite;
步骤3.3:判断所有节点的标签与大部分邻居节点标签是否相同且当前迭代次数iter_time是否小于最大迭代次数max_iter,若所有节点的标签与大部分邻居节点标签相同且当前迭代次数iter_time小于最大迭代次数max_iter,则继续步骤3.4,否则停止迭代,输出用户话题集合UserTopics及其标签;
步骤3.4:判断当前抽取的关键词是否在提取到的用户话题集合UserTopics内,若在,则不进行关键词更新,重新抽取关键词返回步骤3.4,若不在,则继续步骤3.5;
步骤3.5:判断当前抽取的关键词的出现概率是否大于用户话题集合UserTopics内出现概率最大的关键词,若是,则将当前抽取的关键词替换用户话题集合UserTopics内出现概率最小的关键词,重新抽取关键词返回步骤3.4,若否,则令iter_time=iter_time+1,返回步骤3.3。
3.根据权利要求1所述的面向微博的情感社区分类方法,其特征在于,所述步骤1.4中博文情感倾向Ans的计算公式如下:
WordAns=NegativeWordAns-PositiveWordAns;
EmojiAns=NegativeEmojiAns-PositiveEmojiAns;
Ans=αWordAns+βEmojiAns;
其中,PositiveWordAns为积极情感词在博文中出现的后验概率,NegativeWordAns为消极情感词在博文中出现的后验概率,PositiveEmojiAns为积极表情在博文中出现的后验概率,NegativeEmojiAns为消极表情在博文中出现的后验概率,α和β为参数且α+β=1;
根据公式的计算结果判定博文的情感倾向,若Ans大于0,则判定该博文的情感倾向为负向,若Ans小于0,则判定该博文的情感倾向为正向,若Ans等于0,则判定该博文情感倾向为中性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811008927.4A CN109214454B (zh) | 2018-08-31 | 2018-08-31 | 一种面向微博的情感社区分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811008927.4A CN109214454B (zh) | 2018-08-31 | 2018-08-31 | 一种面向微博的情感社区分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109214454A CN109214454A (zh) | 2019-01-15 |
CN109214454B true CN109214454B (zh) | 2021-07-06 |
Family
ID=64985378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811008927.4A Expired - Fee Related CN109214454B (zh) | 2018-08-31 | 2018-08-31 | 一种面向微博的情感社区分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109214454B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109948148A (zh) * | 2019-02-28 | 2019-06-28 | 北京学之途网络科技有限公司 | 一种文本信息情感判定方法和判定装置 |
CN110347897B (zh) * | 2019-06-28 | 2021-09-21 | 哈尔滨理工大学 | 基于事件检测的微博网络情感社区识别方法 |
CN110472003B (zh) * | 2019-08-08 | 2022-02-22 | 东北大学 | 基于图卷积网络的社交网络文本情感细粒度分类方法 |
CN110704496B (zh) * | 2019-09-02 | 2023-01-24 | 山东科技大学 | 基于不对称响应的建议聚合方法 |
CN110851733A (zh) * | 2019-10-31 | 2020-02-28 | 天津大学 | 基于网络拓扑和文档内容的社团发现和情感解释方法 |
CN111259661B (zh) * | 2020-02-11 | 2023-07-25 | 安徽理工大学 | 一种基于商品评论的新情感词提取方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559207A (zh) * | 2013-10-10 | 2014-02-05 | 江苏名通信息科技有限公司 | 一种基于社交媒体计算的金融行为分析系统 |
CN103761239A (zh) * | 2013-12-09 | 2014-04-30 | 国家计算机网络与信息安全管理中心 | 一种利用表情符号对微博进行情感倾向分类的方法 |
CN103870447A (zh) * | 2014-03-11 | 2014-06-18 | 北京优捷信达信息科技有限公司 | 一种基于隐含狄利克雷模型的关键词抽取方法 |
CN106844416A (zh) * | 2016-11-17 | 2017-06-13 | 中国科学院计算技术研究所 | 一种子话题挖掘方法 |
CN106875367A (zh) * | 2017-03-15 | 2017-06-20 | 中山大学 | 一种基于互关联规则的鼻咽癌原发病灶临床靶区自动勾画方法 |
-
2018
- 2018-08-31 CN CN201811008927.4A patent/CN109214454B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559207A (zh) * | 2013-10-10 | 2014-02-05 | 江苏名通信息科技有限公司 | 一种基于社交媒体计算的金融行为分析系统 |
CN103761239A (zh) * | 2013-12-09 | 2014-04-30 | 国家计算机网络与信息安全管理中心 | 一种利用表情符号对微博进行情感倾向分类的方法 |
CN103870447A (zh) * | 2014-03-11 | 2014-06-18 | 北京优捷信达信息科技有限公司 | 一种基于隐含狄利克雷模型的关键词抽取方法 |
CN106844416A (zh) * | 2016-11-17 | 2017-06-13 | 中国科学院计算技术研究所 | 一种子话题挖掘方法 |
CN106875367A (zh) * | 2017-03-15 | 2017-06-20 | 中山大学 | 一种基于互关联规则的鼻咽癌原发病灶临床靶区自动勾画方法 |
Non-Patent Citations (4)
Title |
---|
《LDA模型在微博用户推荐中的应用》;邸亮等;《计算机工程》;20140531;第40卷(第5期);全文 * |
《Local Edge Betweenness based Label Propagation for Community Detection in Complex Networks》;Hamid Shahrivari Joghan等;《Conference: 2017 International Conference on Computational Science and Computational Intelligence (CSCI)》;20171231;全文 * |
《一种级联式微博情感分类器的构建方法》;张仰森等;《中文信息学报》;20170930;第31卷(第5期);全文 * |
《基于局部优化的社区发现方法研究现状》;李建华等;《中国科学院院刊》;20151231;第30卷(第2期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109214454A (zh) | 2019-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109214454B (zh) | 一种面向微博的情感社区分类方法 | |
Hu et al. | Exploiting social relations for sentiment analysis in microblogging | |
Li et al. | Filtering out the noise in short text topic modeling | |
Wu et al. | Structured microblog sentiment classification via social context regularization | |
Alowaidi et al. | Semantic sentiment analysis of Arabic texts | |
Pan et al. | Social media-based user embedding: A literature review | |
Chafale et al. | Review on developing corpora for sentiment analysis using plutchik’s wheel of emotions with fuzzy logic | |
Garg et al. | The structure of word co-occurrence network for microblogs | |
Liu et al. | Context-aware social media user sentiment analysis | |
Ramírez-Tinoco et al. | A brief review on the use of sentiment analysis approaches in social networks | |
Xiaomei et al. | Sentiment-based and hashtag-based Chinese online bursty event detection | |
Liu et al. | Correlation identification in multimodal weibo via back propagation neural network with genetic algorithm | |
Murshed et al. | Enhancing big social media data quality for use in short-text topic modeling | |
Garg | A survey on different dimensions for graphical keyword extraction techniques: Issues and challenges | |
CN114579833A (zh) | 一种基于主题挖掘和情感分析的微博舆情可视分析方法 | |
Al-Hagery et al. | Exploration of the best performance method of emotions classification for arabic tweets | |
CN111026866B (zh) | 一种面向领域的文本信息抽取聚类方法、设备和存储介质 | |
Kuo et al. | Integrated microblog sentiment analysis from users’ social interaction patterns and textual opinions | |
Zou et al. | Collaborative community-specific microblog sentiment analysis via multi-task learning | |
Qiu et al. | CLDA: An effective topic model for mining user interest preference under big data background | |
Argueta et al. | Unsupervised graph-based patterns extraction for emotion classification | |
Zhao et al. | User-sentiment topic model: refining user's topics with sentiment information | |
Long et al. | Domain-specific user preference prediction based on multiple user activities | |
Rowe et al. | Aligning tweets with events: Automation via semantics | |
Maurya et al. | A use of social media for opinion mining: An overview (with the use of hybrid textual and visual sentiment ontology) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210706 |
|
CF01 | Termination of patent right due to non-payment of annual fee |