APP下载

基于云计算面向网络舆情的Deep Web数据抽取关键技术研究

2016-07-04陈巧丁卫泽施佺

电脑知识与技术 2016年15期
关键词:舆情

陈巧+丁卫泽+施佺

摘要:就当前舆情信息数据的海量性和数据源展现的不可预见性,对Html页面进行降噪、子树构建,通过相似度计算和舆情简易本题库的引入完成数据块识别和数据记录集抽取,最后以Hadoop平台为实验环境,对抽取出的算法进行实验,实验表明该算法在舆情数据挖掘中,对抽取规则的自动提取具有一定的参考价值。

关键词:数据抽取;Hadoop;舆情

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)15-0023-03

Abstract:The public opinion information data with massive, show data sources of unpredictability, article on the HTML page for noise reduction, sub tree construction, and then through the similarity calculation, combined with public opinion simple ontology library, the realization of the data block identification and record the data extract, finally to Hadoop platform for experimental environment and pumping out the algorithm experiment. Experimental results show that the algorithm in the public opinion data mining, automatic extraction of extraction rules has a certain reference value.

Key words:Data extraction; Hadoop; public opinions

1 概述

网络舆情是某些社会事件发生后,在互联网的平台上,民众针对其发展和变化过程的不同阶段逐渐产生和发酵的社会态度,并借助于诸如论坛、博客、微博、微信、新闻跟帖等此类便捷的网络媒体进行关注、表达或宣泄。由于网络媒体的自由性和实时性,互联网的便捷性和随意性,网民针对社会过程中的各种问题,越来越多的倾向于借助网络媒体跟帖、转发、投票等方式畅所欲言,淋漓尽致地发表观点,在极短时间造成内凝聚共识,并诱发行动,直接影响社会。[1]同时由于阅历和思想认识水平的局限性,网民们往往会在短时间内难以认识事情背后复杂的社会,并认清其心理动因,从而造成非理性和过于主观的声音占据上风。从目前各领域内的一系列突发事件来分析,人们通过网络媒体进行传播爆发出的舆论能量不容小觑。各级行政机关、企事业部门都越来越重视互联网舆情的监测,各专家学者也从不同方面对舆情进行分析研究,如从政策机制、评估体系策略[2]、用户行为特征、网络舆情传播模式的研究和引导;技术上主要集中在网页抓取、内容分析、语义识别、数据挖掘、主题识别与跟踪等算法的研究等。在这在互联网技术飞速发展,影响力日益巨大的时下,网络已化身为思想文化的集散地和社会舆论的增强器,我们应充分认识以其为载体的新媒体的社会影响力。因此,对于如何快速、准确的发现互联网上潜在舆情信息并对其进行有效监测、监控及正确引导势在必行,本文通过对已有技术和知识进行分析总结的基础上,引入了云计算技术,对以面对与高校相关的网络舆情信息的数据抽取的关键技术进行了研究。

2 研究现状

随着互联网技术的飞速发展,特别是互联网的普及应用,我国的网民数量、网站数量以及网络信息资源的容量以爆炸性的趋势增长。据中国互联网络信息中心2016年1月发布的《第37次中国互联网络发展状况统计报告》[3]显示:网民通过各类移动设备进行网络行为的用户占全体网民总量的90.8%,规模达到了6.06亿,其中手机占移动类网民的91%。同时,以互联网为工具进行新闻获取阅读的用户规模为5.55亿,手机网络新闻用户规模为4.60亿,相较于去年年底将近增长11%。如作为网络环境下对新闻快速传播形成热点话题的微博、微信、来往等App应用借助于手机等无线设备,极大促进了网民对网络舆情的接触度和传播速度,从而使Web成为一个以大数据为基本特征的全球化信息中心。这些在许多领域具有重要价值的海量数据具有多样性、异构性且动态变化等特征,单纯地依赖人工的方法难以及时、迅速地完成海量web信息的收集、 web舆情的发现及进一步的跟踪。

针对网络舆情监测迫切需要分析挖掘的这些海量数据,按其信息蕴藏的深度,可分为SurFace Web和Deep Web两大类[4][5]。Surface Web是将各个独立的HTML静态网页通过超链接进行连接,其内容能够为当前的通用搜索引擎直接索引和检索而无需与网络数据库进行交互;而Deep Web面向的是网络服务器中的网络数据库,Deep Web的内容页面在被查询时才由Web服务器主动与数据库服务器进行交互而动态按照某一特定的HTML布局生成后返回给提交查询请求的访问者。随着信息化的不断跨跃推进和互联网技术的持续快速发展,以网络数据库形式存储的资源成指数级增长,如今人们也已访问网络数据库成为信息获取的主要方式和方法。[6] Deep Web形式的数据内容分布于商业、经济、计算机、教育、新闻媒体、娱乐等不同的领域;网络媒体以BBS论坛、微博、微信、来往、博客、播客、新闻、跟帖等各种形式载体和展现,此类海量存储在Deep Web背后的网络数据库数据已成为了供政府及企事业单位进行辅助决策的来源。但由于网络数据库隐藏在Web服务后端的隐蔽性,及各个Deep Web站点在网页展现形式和表述质量的差异性,使得当前存储DeepWeb数据的网络数据库搜索引擎只能实现大约33%左右覆盖搜索,因此如何有效的、快速的且准确地在浩瀚的网络数据库中抽取信息资源成为当前舆情研究中首当解决的问题。

3 基于大数据的数据抽取的相关技术

3.1 数据抽取

数据抽取,也称之为网页信息提取,主要是从HTML源码中去除一些如广告、标语等噪声信息,提取出标题、作者、正文等有用的信息。及时准确的信息提取为舆情系统提供可靠的数据源,数据抽取在web 舆情发现中至关重要,,它为舆情系统准确地发现相关信息提供基础。信息的抽取过程按自动化程度一般可分为人工、半自动化及全自动化三种方式。网页信息抽取是一种针对网络数据库中的数据通过分析、加工网页的结构实现信息数据的提取的过程。由于网页的复杂性、多样性以及程序员构建过程的随意性和习惯性,使得信息展现的模版不确定性和多样性,针对不同的网页模版抽取规则也不尽相同,信息抽取的方法也越来越多,按其实现原理大致可分为基于HTML结构、基于自然语言处理和基于本体几类方式[7]。

3.2 Hadoop

Hadoop是由Apache基金会开发的一个开源的分布式系统基础架构,其核心为实现为海量数据提供了存储的分布式文件系统 (Hadoop Distributed File System,HDFS)和为海量数据提供了计算能力的分布式计算MapReduce。Hadoop为程序开发者提供了简单易用的接口,用户只需编写 Map函数和Reduce函数即可实现分布式计算,而无需考虑诸如由Hadoop负责处理的任务调度,负载平衡和通信等问题[8]。

HDFS是能部署在廉价的机器上的分布式文件系统,用户不需知道文件的实际存储位置就能够访问分布在不同机器上的文件,具有高容错性、高吞吐量、能自动处理失效节点的特点。HDFS包含三种类型的角色:用以实现系统命名空间的管理和客户端文件访问管理的Name Node,用以实现管理节点文件存储的Data Node 和用于需要操作分布式文件系统文件应用程序的Client。MapReduce是包含一个主服务器Job Tracker和多个从服务器Task Tracker的主从式架构,Job Tracker是一个master服务,负责调度、监控和管理Task Tracker,并给空闲的Task Tracker分配Map任务和Reduce任务。

4 抽取框架

实现上主要对查询结果列表页和内容页进行信息提取,提取过程中使用自建的简单本地体库抽取方法来实现抽取,主要过程为:数据清洗、数据块识别,结果集抽取,抽取规则构建。

4.1 数据清洗

一般情况下,一个查询结果页面可能包含多个数据块,如宣传数据块、数据信息数据块、位置数据块、导航数据块等。其文档中含有一些对抽取没有价值的信息,如样式表标签、图片标签、命名空间标签、内容标签、表单标签、媒体标签、表格标签等,直接对此类有大量无用节点的HTML代码进行解析而生成的网页标签树会十分臃肿,因此首先将列表结果页和内容结果页文件进行“瘦身”解析成标签树,并采用广度优先遍历方法对标签树中所有节点进行降噪处理,其过程如下:从根节点开始出发,直至发现表示正文开始的body标签节点,将当前节点及其子树提取后向下遍历,判断读入节点是否是噪音节点,如果是则将该节点及其子树删除,循环直至到达树末尾。经过上述过程的降噪处理,可以将网页标签树中明显的以上所提及的无用信息标签及其间的内容删除,从而降低了计算量,并极大简化了后续算法的输入。

4.2数据块识别和数据记录集抽取

一般情况下,每个查询结果页面一般只有一块区域是用户所关心并希望可以获取的,这部分即为该页面的数据信息部分,而其他的模块则认为是对用户数据块信息顺利的获取的干扰因素,因此如何准确的识别出数据块在HTML页面的位置的至关重要。在完成对标签树清洗处理之后,我们需要发现并定位标签树中的数据块,此数据块包含查询结果。分析比较多个经过清洗生成的查询结果的标签树后发现:对于标签树中,某一父亲节点T具有越多的结构相似的子树越多,当比重超过一定的阀值,则该节点将越会是我们所关注的数据块,针对这一思想实现如何快递自动识别出的兴趣数据块,算法描述如下:

输入:节点T下的两颗子树T1、T2

输出:子树T1、T2的相似度Sim(T1,T2)

算法:

1)初始化SumT1、SumT2、DisumT12;

2) 循环T节点直至遍历所有的子节点{

3) 如果两个节点的标签相同{

4) Sum T1++; Sum T2++;

5) }

6) 如果两个节点的有节点但标签相同{

7) Sum T1++; Sum T2++; Disum T12++;

8) }

9) 如果T1节点树有节点而 T2节点树无节点{

10) Sum T1++; Sum T2++;Disum T12++;

11) }

12) 否则{

13) Sum T2++; Disum T12++;

14) }

15) Sim(T1,T2)=(SumT1+ SumT2- DisumT12)/( SumT1+ SumT2)

16) }

针对查询结果中以最小子树形式表示的最小数据块结果集合中,将其映射到向量空间模型中,通过人工构建的简易舆情信息本地库特征信息,通过公式1对两者的特征向量进行计算后,过滤非领域相关的数据记录块确定有效的记录集,以此确定有效的抽取规则。

Cos(V,V)表示文档V和V这两篇文档的相似程度,其中, V=(wi,ki)表示文档V中的特征项K的按照特定规则用以表示其在文档中的重要性赋予的权重值。通过计算,可以认为相似程度越高的数据块集合就为有效的舆情信息领域的记录集,从而确认抽取规则。

5 实验测试

针对提取出的抽取规则,用Vmware构建4台虚拟机,其中1台为NameNode,4台为DataNode。每台机器安装Linux5.5的操作系统,部署的Hadoop版本为1.2.1,Java版本为JDK1.6,网络采用Nat方式进行模拟构建,如表1。

由于舆情系统面向的数据来源广泛,Html模板页面的更新具有不可预见性,因此对于模版的自动抽取规则的提炼可以极大的减轻数据抽取的工作量,而数据抽取规则的有效性和抽取规则生成的速度,将极大的影响部署实施在大数据平台上舆情数据的抽取,为此试验更关注获取数据抽取规则的准确性和耗时。按照10组熟练用户和非熟练用户在同一领域的200个页面进行抽取规则的提取试验,实验统计数据表明在抽取规则的获取耗时上有着非常显著的提高;由于舆情信息来源的特殊性,本地库构建比较简单,在此算法下构建的抽取规则获得的识别的数据记录可以达到89.2%的召回率和90.7%的准确率。通过在数据记录集的相似度计算中,也可以采用人工勾选的方式进行干预,也可以进一步提高准确率和召回率。

参考文献:

[1] 兰月新.突发事件网络舆情安全评估指标体系构建[J].情报杂志, 2011(7):73-76.

[2] 张军,黄超.试论群体性事件预警技术发展的需求[J]. 公安教育, 2016(4):23-26.

[3] 第37次中国互联网络发展状况统计报告. 中国互联网络信息中心[EB/OL]. 2016.1.22. http://www.vccoo.com/v/1cc735

[4] 毛桂春. DeepWeb查询结果后处理[D]. 吉林大学,2011.

[5] 周民.海量web舆情挖掘算法研究[D]. 电子科技大学,2011.

[6] 陈巧,施佺,邵叶秦. 基于蚂蚁算法的Deep Web页面信息抽取方法研究[J]. 煤炭技术, 2013,32(2):176-178.

[7] 刘彤,张阳,孙琦,袁翀. 基于Hadoop的可视化Deep Web采集平台设计[J]. 计算机工程与科学,2016(2):217-223.

[8] 王宏宇. Hadoop平台在云计算中的应用[J]. 软件,2011(32):32-50.

猜你喜欢

舆情
数字舆情
舆情
舆情
舆情
微博的舆情控制与言论自由