基于社交网络的情绪化分析IV

By 白熊花田(http://blog.csdn.net/whiterbear) 转载需注明出处,谢谢。

前面进行了微博数据的抓取,简单的处理,类似度分析。后面两篇进行学校微博的情感分析。


微博情感分析

这里试图通过字典分析的方式计算学校微博的情感倾向。主要分为积极情感,消极情感,客观。

这里字典分析的情感分析和机器学习方式进行情感分析均參考rzcoding的博客,这里仅仅是根据他的思路和代码改装成了微博的情感分析。

字典分析

字典分析的原理是,给定一句微博。推断这句微博中是否出现过积极或者消极的情感词。假设出现,那么寻找修饰该情感词的程度副词。然后根据定义的规则计算积极和消极情感分值。

字典分析结果

使用了matplotlib模块进行结果的显示。



图表示字典分析dlut(大连理工大学)的一个用户的情感分析结果,当中红色表示积极的值(依次为总值,均值。方差),绿色表示消极的值(依次为总值,均值,方差)

字典分析全部学校的结果。

学校名称 积极的微博 消极的微博 客观的微博
大连理工大学 32.7% 25.5% 41.8%
清华大学 32.8% 23.6% 43.7%
北京大学 33.9% 24.0% 42.1%
南京大学 31.2% 25.6% 43.3%
华东政法大学 32.4% 29.0% 38.6%

从上表能够看出。一个学校所发的微博积极的微博数目较大于消极的微博数目。积极的微博比例一般在32%左右。而消极的微博一般在24%左右。忽略掉客观的微博,那么积极的微博和消极微博数目比例大体在1:1的水平上。

机器学习

利用机器学习的方法对微博进行情感分析,即使用相关监督的学习算法,如贝叶斯算法,使用标注的情感文本进行学习。训练得到分类器。最后使用该分类器进行情感分类并进行图形化显示。

详细步骤为:首先手工标注微博,以积极。消极和客观三种状态来标识。接着。使用全部词,双词和卡方统计等方式获取词的特征,然后,使用多种机器学习模型进行训练。筛选得到最佳精度的分类器。最后,使用该分类器进行微博的情感分类,如:假设积极的情感概率则为积极微博。

机器学习分析结果

机器学习分析全部学校的结果。

学校名称 积极的微博 消极的微博 客观的微博
大连理工大学 12.6% 28.4% 59.0%
清华大学 8.7% 20.3% 70.9%
北京大学 8.5% 19.0% 72.6%
南京大学 9.8% 23.6% 66.6%
华东政法大学 11.9% 30.6% 57.4%

这里的结果与用词典分析的结果不太一样,在词典分析中,用户发的积极的微博数目大于消极的微博数目,而这里,五所大学中,全部的学校所发的积极的微博比例均小于消极的微博,积极微博大概占到10%左右。消极的微博约占到22%左右。客观的微博占到65%左右。

除去客观的微博,积极微博和消极的微博的比例大体相当于1:2。实验中分类器的精确度达到70%。

影响实验结果的因素:其一,该结果是基于分类器得出的结果,而分类器又是基于标注的微博数据,所以。自己标注的微博数据会对分类器的判定有着一定的影响;其二,因为中文语义丰富。在不同的语境下有着不同的含义。这样会导致分类器的判别有一定的难度从而造成相关的误差。

总结

本次毕设研究的主题为分析和了解不同的群体在社交网络上是怎样表达情绪的及其表达情绪的倾向。

为此,本研究设计并实施了一整套从数据抓取到分析的流程。设计了爬虫去抓取数据,设计了对应的算法去分析和统计和处理数据。

终于,本研究做到了在一定层面上展现了社交网络用数据的特性,不同群体用词的差异性,也给出了在社交网络上不同的群体是怎样表达情绪及其倾向这一问题的解答。

基于社交网络的情绪化分析IV的更多相关文章

  1. 利用python3 爬取 网易云 上 周杰伦所有专辑,歌曲,评论,并完成可视化分析已经歌曲情绪化分析

    这篇文章适合于python爱好者,里面可能很多语句是冗长的,甚至可能有一些尚未发现的BUG,这个伴随着我们继续学习来慢慢消解吧.接下来 我把里面会用到的东西在这里做一个简单总结吧:本文用到了两门解释性 ...

  2. VSTO学习笔记(七)基于WPF的Excel分析、转换小程序

    原文:VSTO学习笔记(七)基于WPF的Excel分析.转换小程序 近期因为工作的需要,要批量处理Excel文件,于是写了一个小程序,来提升工作效率. 小程序的功能是对Excel进行一些分析.验证,然 ...

  3. 基于CommonsCollections4的Gadget分析

    基于CommonsCollections4的Gadget分析 Author:Welkin 0x1 背景及概要 随着Java应用的推广和普及,Java安全问题越来越被人们重视,纵观近些年来的Java安全 ...

  4. 第1篇--基于jdk7和jdk8分析 JVM的内存区域

     基于jdk7和jdk8分析 JVM的内存区域 目录前言1.什么是JVM2.JRE/JDK/JVM是什么关系3.JVM执行程序的过程4. JVM的生命周期5.JVM垃圾回收一.运行时数据区的组成1.程 ...

  5. Java反序列化: 基于CommonsCollections4的Gadget分析 Java 序列化与反序列化安全分析

    Java反序列化: 基于CommonsCollections4的Gadget分析 welkin 京东安全 5天前 https://mp.weixin.qq.com/s/OqIWUsJe9XV39SPN ...

  6. Python爬取《你好李焕英》豆瓣短评并基于SnowNLP做情感分析

    爬取过程在这里: Python爬取你好李焕英豆瓣短评并利用stylecloud制作更酷炫的词云图 本文基于前文爬取生成的douban.txt,基于SnowNLP做情感分析. 依赖库: 豆瓣镜像比较快: ...

  7. Hive -- 基于Hadoop的数据仓库分析工具

    Hive是一个基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库 ...

  8. 基于SQL的日志分析工具myselect

    基本介绍 程序开发者常常要分析程序日志,包括自己打印的日志及使用的其他软件打印的日志,如php,nginx日志等,linux环境下分析日志有一些内置命令能够使用,如grep,sort,uniq,awk ...

  9. 符号执行-基于python的二进制分析框架angr

    转载:All Right 符号执行概述 在学习这个框架之前首先要知道符号执行.符号执行技术使用符号值代替数字值执行程序,得到的变量的值是由输入变 量的符号值和常量组成的表达式.符号执行技术首先由Kin ...

随机推荐

  1. Python2.7 在使用BSTestRunner.py时报错TypeError: unicode argument expected, got 'str'

    python3往这个库中加入了一些新的内容,使得该库在Python2.7中报错. 解决方法是将导入语句 from io import StringIO as StringIO 更换为: from io ...

  2. Day10文件内指针移动和函数

    强调:只有t模式下的read(n),n代表字符个数,除此以外都是以字节为单位 ,例如f.read(4)读出4个字符 控制文件内指针的移动:f.seek()以字节为单位 f.tell()文件开头为准,当 ...

  3. Django之单表的增删改查

      books/urls.py   """books URL Configuration The `urlpatterns` list routes URLs to vi ...

  4. joyoi1957 「Poetize5」Vani和Cl2捉迷藏

    最小路径可重点覆盖.先传递闭包,然后拆点,\(n-\)最大匹配,看算法竞赛进阶指南. #include <iostream> #include <cstring> #inclu ...

  5. Windows 通过 SecureCRT 8.x 上传文件到Linux服务器

    1.SecureCRT 连接 Linux 服务器,这一步操作简单: 2.连接并登录成功后,直接在连接成功的页签上 右键 ->  Connect SFTP Session 打开SFTP窗口: 3. ...

  6. 【总集】C++ STL类库 vector 使用方法

    介绍: 1.vector 的中文名为向量,可以理解为一个序列容器,里面存放的是相同的数据结构类型,类似于数组但与数组又有微妙的不同. 2.vector 采用的是连续动态的空间来存储数据,它是动态的数组 ...

  7. 【Luogu】P2530化工厂装箱员(DP)

    题目链接 不知道做出这道题是我能力的一个提升还是能力的回归. DP.设f[i][j][k][l]是已经取了i个产品,现在手里还拿着j件A,k件B,l件C,最小的操作数. 然后状转方程乱搞啊 #incl ...

  8. BZOJ 2244 [SDOI2011]拦截导弹 ——CDQ分治

    三维偏序,直接CDQ硬上. 正反两次CDQ统计结尾的方案数,最后统计即可. #include <cstdio> #include <cstring> #include < ...

  9. NVMe与SCM结合将赋予存储介质的能力

    转自:SCM是什么鬼,NVMe与其结合将赋予存储介质哪些能力? 全SSD闪存阵列在企业级存储得到广泛应用,相比传统机械硬盘,它的延迟.性能和可靠性都有了显著提高.许多早期开发商抓住其闪存技术优势的机遇 ...

  10. mode(BZOJ 2456)

    Description 给你一个n个数的数列,其中某个数出现了超过n div 2次即众数,请你找出那个数. Input 第1行一个正整数n.第2行n个正整数用空格隔开. Output 一行一个正整数表 ...