APP下载

网络舆情系统的设计与实现

2020-09-02殷美桂

现代计算机 2020年21期
关键词:孟晚舟舆情网民

殷美桂

(河源职业技术学院,河源517000)

0 引言

中国互联网络信息中心(CNNIC)发布第45 次《中国互联网络发展状况统计报告》,报告显示,截止2020年3 月,我国网民规模突破9 亿[1]。当前,网络的即兴性、互动性使网民有更多机会表达观点和意见,网络成为一个民意的舆论场。目前,网络舆情信息的载体呈现多样性、数据量大等特征。网民规模及网络平台的快速增长使网络舆情传播走向大众化、网状化和无序化。面对海量的网络舆情信息,网络舆情分析和监控系统代替人工操作,帮助相关部门和机构及时了解网络舆情动态,发现网络上热点敏感问题,并通过对持续发酵的负面舆情信息进行预警,从而能应对并及时纠正网络上与自己有关的负面舆论影响。系统为相关部门进行网络危机公关或品牌形象营销提供可靠的技术支撑。

网络舆情系统主要是采用搜索引擎爬取数据,通过对数据预处理后,运用智能聚类分类、主题检测、专题聚集和统计分析等技术实现对网络舆情的监控,最终形成舆情简报、舆情专题、分析报告等统计分析结果。目前有关网络舆情系统的研究,国内和国内都积累大量的研究成果。国外的舆论分析技术最早可追溯到美国TDT 项目中的TDT 技术(话题检测追溯技术),TDT 技术关注一个个具体事件,可以对舆情信息进行识别、归类、专题持续追踪[2]。国内的网络舆情系统主要有“军犬”网络舆情监测系统、方正智思互联网舆情监控系统、邦富互联网舆情监控系统、红麦舆情监测系统和谷尼互联网舆网络舆情系统情监控系统,另外新浪的舆情通提供热度排行、舆情事件分析等符合客户需求的定制报告。

目前,为了实现对网络舆情的监控,网络舆情系统需求变大,这推动舆情系统及舆情分析技术进入成熟期,但是,并不是所有舆情系统都能满足用户需求,通用的舆情监控模板、模式灵活性差,其中的舆情监控范围、功能模块、系统架构、统计分析结果等模块不能定制造成舆情分析结果针对性不强,用户体验性差。新浪微博定位于社交媒体,据统计至2019 年3 月底微博的活跃用户已达4.65 亿。微博创新用户互动模式,在实时热点问题讨论上扩大其社会媒体的优势[3]。基于新浪微博构建网络舆情系统,系统对热点事件进行舆情分析,运用数据分析和数据挖掘技术探索网民对事件的关注度及情感趋势。研究以微博热议话题“孟晚舟未能获释”为例,此事件发生于北京时间28 日凌晨,加拿大法院公布孟晚舟引渡案的判决结果,孟晚舟未能获释。

1 系统的设计

网络舆情分析系统在依托已有的技术和系统,对其进行整合和利用,设计系统架构。系统的总体架构主要分为数据采集、数据预处理、舆情分析和挖掘、结果展示和统计分析报告模块,如图1 所示。

图1 系统的总体架构图

数据采集主要是爬取网页、微博、搜索引擎、论坛等互联网上的文本数据为主。数据爬虫可选择专门的网络爬虫工具,也可以编程自定义开发。

数据是数据分析和数据挖掘的重要原料,机器爬取的原始数据不能直接使用,在进行数据分析之前需对数据进行预处理。数据预处理包括数据清洗,数据转换,数据描述、特征选择、特征抽取。数据清洗主要对一些重复数据和缺失数据处理,数据转换一般对数据类型进行转换处理。

舆情信息分析和挖掘包括对舆情信息依事件分类[4]或者聚类分析,对舆情文本的关键字进行提取以获取信息摘要,对舆情进行文本的情感分析。

结果展示和统计分析展示舆情信息分析结果,包含依事件分类形成的舆情专题、信息摘要、文本情感分析结果展示。为了直观展示统计分析的结果,系统生成数据统计分析图。

2 系统实现

2.1 数据获取

为了加快信息采集的速度和准确度,系统采用分布式爬虫系统架构模式,使用目前比较成熟的框架Scrapy-Redis,基于Python 语言的Scrapy 爬虫框架,通过建立一个请求URL 的Redis 队列来实现分布式爬虫[5]。Scrapy-Redis 框架是主从式(Master-Slaver)模式,在Master 端控制和管理调度器,调度器将Spiders 生成的URL 请求发送给Redis 队列,Slaver 在Scheduler 控制下从队列中(URL 列表)获取爬取任务或者将请求发送给队列[6]。从而实现多台主机共享队列,各台主机的Scheduler 统一服从Master 主机的统一管理。为了维护一个不重复的URL 列表,Scrapy-Redis 分布式框架还提供去重的组件。系统为了获取指定的数据,通过提交关键词的形式缩小数据采集范围,过滤掉与我无关的数据。系统以“孟晚舟未能获释”作为关键词进行搜索,因微博有反爬限制,分时间段爬取2020 年5 月28 日至2020 年6 月1 日之间微博正文及评论数据共6 万条数据。

2.2 数据预处理

系统对获取舆情的正文、评论文本等文本采用自然语言处理(NLP)工具进行处理,常用的分词处理模块有pynlpir、jieba 等。系统采用jieba 分词对文本进行分词,因jieba 内置的词典有一定的局域性,系统导入用户自定义词典提高分词的准确性。分词后的还需对文本执行去除停用词的操作,为了后续对文本进行分类或者聚类分析,运用TF-IDF 进行文本预处理,获取文本的词特征向量后进行文本分类或聚类分析。系统的文本预处理流程如图2 所示。

图2 文本预处理流程

2.3 舆情分析和挖掘

舆情分析和挖掘系统主要功能包括自动摘要,舆情专题,情感分析。系统基于TF-IDF 对文本进行权重计算之后,可提取关键词。通过文档中已存在的关键词进行分析,从而生成文章的自动摘要,自动摘要让管理者迅速了解决正在发生的事件。

系统依事件建立舆情专题,系统应用文本聚类技术将相似的文章进行归类,从而挖掘出不同类的话题。文本聚类常用的算法是K-means 算法,但Kmeans 算法不能有效地处理高维空间的文本聚类,因高维空间簇与簇之间的距离太小无法直接聚类。系统在运用K-means 聚类分析之前,运用PCA 对TF-IDF 构建的词向量矩阵进行降维,PCA 称为主成分分析,算法的核心是通过某种线性投影,将高维的数据映射到低维的空间,并保留较多的原数据点的特征。

舆情情感分析主要使用SnowNLP 类库处理中文文本内容,以获取文本的正向或负向评价。因SnowNLP 类库已经训练好的模型主要是基于电商的商品评论数据,在使用过程中,需要收集如新闻评论的正负样本重新训练新的模型,SnowNLP 类库主要使用朴素贝叶斯原理对模型进行训练,保存训练后的模型后即可以运用新模型对数据进行情感正负的预测。

2.4 结果展示

本次研究基于新浪微博热议话题“孟晚舟未能获释”进行分析,话题阅读量达12.4 亿,共计讨论数11.6 万。

(1)词频分析

为了了解此次事件网民讨论的热点问题,只选取发布的微博正文进行分析,对内容进行预处理后用matplotlib 绘制词云图获取词频统计的结果,词云图的字体大小是由词频决定的,词频越高字体越大,如图3所示。首先从词云图看出,此事件牵涉美国、加拿大、中国三国之间的政治事件,加拿大最高法院判决:美国针对孟晚舟的引渡请求符合双重犯罪的原则。其次,从图上可以清晰看出“欲加之罪”、“帮凶”、“扮演”、“打压”、“释放”等词汇,这表明中国对此次裁决强烈不满,认为这是“欲加之罪”,加拿大扮演了美国的“帮凶”角色,帮助美国打压中国的高科技企业,中国敦促加拿大释放孟晚舟女士。最后,词云图中出现“爱国”、“强大”、“加油”、“科技”、“当自强”等词汇,这次事件激起网民强烈的爱国主义情怀,面对美国对中国科技公司的制裁,中国应加油,中国应当自强。从“孟晚舟未能获释”事件的舆情分析中,可以看出新闻媒体及网民弘扬了爱国主义情怀,释放了中国当自强等正能量。

图3 热议话题“孟晚舟未能获释”的词云图

(2)热度分析

“孟晚舟未能获释”是孟晚舟引渡案的判决结果,事件的第一条博文是央视新闻发布于5 月28 日凌晨2:03 分,随后其他新闻媒体及微博用户陆续发表博文。通过关键词搜索,以获取的博文作为样本进行分析,制作每日发文数量所占总量百分比,如图4 所示。根据统计分析,发文数量在事件发生日最多,占发文总量的一半。这表明热点话题在事件爆发日具有发文数量大,增长速度快的特点[]。第二天发文数量减少17%,第三天开始发文数量比前一天减少一半以上,到第四、五天发文数量已经很少,事件热度已经衰退,舆情发展经历萌芽、爆发、衰退期。

图4 博文数量日均热度

(3)情感分析

央视新闻发布第一条“孟晚舟未能获释”的博文正值凌晨2:03,随后网民展开激励的讨论,短短十分钟评论数量达到几十条,截止6 月1 日,博文转发量约2.9万,网民评论总数约5.6 万。为了了解舆情民意,采用此条博文的评论进行情感分析。根据筛选规则选取热门短评5 条,这些短评点赞过万,因此可以认为这些评论获得网民的共鸣,并获得更多的附和及支持,其表达的情感强烈。运用SnowNLP 对热门评论进行情感分析,如表1 所示。SnowNLP 分析的结果介于0-1 之间,数值越大,情感越趋于正向,数量越小,情感越趋于负向。表1 显示,对“孟晚舟未能获释”的判决结果网民情感呈两极分化,情感主要分为两类。

(1)负面情感主要是难过和强烈的谴责。面对孟晚舟未能获释,网民首先展示同情心,表达心情很难过,但在难过之后对加拿大和美国的行为进行谴责,认为美国借着披着法律外衣的政治手段,打压中国企业,这是无耻行径。

(2)正面情感主要是自强、立场不动摇和希望。“孟晚舟未能获释”原本只是关乎个人自由的判决,因牵涉中美战略竞争背景,使个人的命运与国家联系在一起。从28 日央视新闻发布的第一条“孟晚舟未能获释”博文下的评论看出,绝大部分网民觉得此次事件给我们敲响警钟,记住今夜所发生的,不要再对西方和美国抱有幻想,吾辈当自强,发展高科技。29 日央视新闻接连发布两条博文,其中一条博文引用外交部发言人赵立坚在记者会上的表态,中方对此强烈不满和坚决反对,美方借此打压中国高科技企业,这是严重的政治事件。外交部发言人表明中国立场之后,此条博文被转发3800 多次,评论9000 多次。由此又掀起一个发文小高峰,网民评论称将与祖国统一立场,坚持不动摇,从而获赞上万,这说明外交部表态后唤起网民强烈的爱国主义热情。由此可看出官方媒体引导舆论走向,激起网民强烈的爱国主义情怀。最后网民也发出希望之声表达个人愿景,希望晚舟能无罪释放,希望世界多点正义和平。

表1 短评情感指数表

3 结语

本研究设计网络舆情系统的架构,系统架构共分为数据采集等四层,采用Python 语言对结构化和非结构化的数据进行处理,利用SnowNLP 类库进行文本情感分析。以“孟晚舟未能获释”事件为例,可视化地展示事件讨论的主题、博文日均热度和网民的情感指数。系统的应用揭示几个问题:

(1)通过词云图分析可知,网民对“孟晚舟未能获释”事件,认为加拿大扮演的美国的帮凶。另外,网民表达中国应大力发展,中国要加油。

(2)网民对此次事件极为关注。网络舆情出现快速爆发期,央视新闻媒体接连两天发声将讨论推上高峰,引导舆论朝向积极方向,激发网民爱国主义热情。

(3)网民情感呈现两极分化,负向的情感主要对此次裁决表达不满和难过,而大多数网民释放出正能量,将与祖国统一立场不动摇。

猜你喜欢

孟晚舟舆情网民
孟晚舟和刘晓棕:遇见爱情
孟晚舟和刘晓棕:遇见爱情
孟晚舟等待回家
“台独联署”被岛内网民嘲
孟晚舟:从前台打杂到华为副总裁
消费舆情
月度最热舆情事件榜11月
月度最热舆情事件榜9月
有感“网民节”
2.9亿