1.一种微博热点话题用户群情感倾向性分析方法,其特征在于:对爬取的微博信息进行预处理,得到纯文本语料进行存储;结合基础情感词典筛选出常用情感词,构建初始情感词集;利用TF‑IDF和聚类算法选择出特定话题下覆盖度广、代表性强的情感倾向明显的情感词,构建情感词元素集;利用情感词情感强度确定方法,在特定微博热点话题下计算选定情感词的情感强度,从而构建四元组情感词典;利用构建的四元组词典对微博用户文本进行情感分析,得到用户的情感倾向;最后对每个用户的情感倾向进行整合,得到用户群的情感倾向性;
所述四元组情感词典包括:将情感元素集中的每个词Wi确定情感强度Ii并进行情感极性标注Pi,将词Wi与其情感极性Pi、情感强度Ii和权重PiIi为四元组加入情感词典E,得到E为:E=<(W1,P1,I1,P1I1),(W2,P2,I2,P2I2),…,(Wi,Pi,Ii,PiIi),…,(Wn,Pn,In,PnIn)>;
所述利用构建的四元组词典对微博用户文本进行情感分析,得到用户的情感倾向,具体包括:对用户的微博信息情感词进行情感分数的赋值,情感词情感权重反映了情感词在文本中的重要程度,而情感强度的绝对值就等于情感权重的值,为了计算方便,以情感强度作为情感分数对微博用户的文本情感词赋值,情感分数的正负表示了情感的正负倾向,情感分数的绝对值表示了情感的强度;
最后对句中的情感词进行情感值的加权,得到了句子的情感倾向分数;如果分数大于
0,则表示句子的情感倾向为正,绝对值越大,则表明正倾向越强,如果分数小于0,则表示句子的情感倾向为负,且情感强度随着绝对值的越大越强;微博用户情感分数计算如下:其中Sen(personj)表示用户j的情感分数,D恒等于‑1,f表示一句话中否定词的个数,m表示用户j的文本信息中情感词的个数,Ii(Wi)表示用户第i个情感词的情感强度;
所述用户群情感倾向性分析包括:将每个用户的情感分数进行情感值的加权,得到了用户群的情感倾向分数;如数大于0,则表示用户群的情感倾向为正,绝对值越大,则表明正倾向越强;如果分数小于0,则表示句子的情感倾向为负,且情感强度随着绝对值的越大越强,具体计算如下:其中,Sen(group)是用户群的情感倾向性结果。
2.根据权利要求1所述的一种微博热点话题用户群情感倾向性分析方法,其特征在于:所述的预处理方法有如下步骤:
去噪:去除微博中无用的符号和链接,所述无用的符号包括@、#、#+文字+#和//;
分词:使用中科院分词工具ICTCLAS对微博文本进行分词及词性标注;
情感极性标注:常用情感词的极性Pi与情感词典中的极性一致,如发生同一情感词不同情感词典中的标注不一致的情形,使用多人投票方式修正,网络情感新词与表情符号由于数量有限,其极性均采用多人投票方式确定。
3.根据权利要求1所述的一种微博热点话题用户群情感倾向性分析方法,其特征在于:结合基础情感词典筛选出常用情感词,构建初始情感词集包括:
结合基础情感词典筛选出常用情感词,构建初始情感词集;
手工统计词语i在微博语料中的词频,词语i来自大连理工大学提供的中文情感词汇本体库。
4.根据权利要求1所述的一种微博热点话题用户群情感倾向性分析方法,其特征在于:所述TF‑IDF算法计算公式如下:
TF‑IDF=TF×IDF
其中,TF和IDF分别是词频和逆文档词频,TF和IDF的计算公式如下:其中,Wi表示第i个词汇,Qj表示第j篇文本,nij表示为第i个词汇在第j篇文本中出现的次数,nj表示为第j篇文本词汇的总和,m为语料库的文档总数,mi为语料库中包含词语Wi的文档数量。
5.根据权利要求1所述的一种微博热点话题用户群情感倾向性分析方法,其特征在于:所述聚类算法是改进后的K‑means++算法,所述改进后的K‑means++算法采用点互信息来计算词语间的语义距离d,其中两个词语的语义距离d(wi)计算公式如下:其中P(wi,uj)表示词wi和词uj同时出现在一个微博热点话题的概率,P(uj)表示词uj单独出现的概率,P(wi)表示词wi单独出现的概率;符号lb表示以2为底的对数。
6.根据权利要求1所述的一种微博热点话题用户群情感倾向性分析方法,其特征在于:所述情感词的情感强度计算如下:
将情感元素集中的情感词,利用下式算出情感词W*的情感强度:
I(W*)=r(W*|S_‑)‑r(W*|S_+)
其中S_‑和S_+分别表示在微博文本信息集U中的正情感词和负情感词集合,r(W*|S_+)表示W*的正向情感权重,r(W*|S_‑)表示W*的负向情感权重,情感权重通过下式计算:其中S*表示S_+或者S_‑,α、β∈[0,1]是组合调整参数,根据一定比例用来调剂P(Ci|S*)和P(w^*)对数值的大小防止某一值过大或过小,计算结果中小数被忽视的现象;Ci是W*的第i个字,W*中共有k个字,P(Ci|S*)和P(w^*)则通过下式计算:其中Freq(S*,Ci)表示属于S*的词的组成字Ci在微博文本信息中U出现的频率,Freq(S*)表示属于S*的所有组成字在微博文本信息U中出现的频率之和,δ为一个小于预定阈值的数值;
其中Freq(W^*)表示W^*在U中出现的频率,|U|表示U中词的个数, 表示所有的词Wi在U中出现的频率之和。