自己做的关于互联网舆情主题检测技术的综述文章
本文主要针对我国互联网舆情主题的检测展开,简要介绍了关于互联网舆情信息的采集,处理技术,并在此基础之上重点介绍对于采集来的文本信息,采用一系列相关的数学模型对已经预处理过的文本信息进行分析,根据文本的相似度进行归类整理,通过对相似主题的分类,并根据互联网舆情的特殊性改进了相关数学模型,提高了准确率。使得我们在海量信息下完成对互联网舆情主题的检测,从而实现在大数据背景下国家相关部门对互联网舆情动态的及时掌握了解。对于我国互联网环境的治理,维护社会和国家安全具有重要意义。
第一章 绪论
网络媒体的出现对于中国来说不仅仅改变了信息传播的方式和效率,成为了人们近十几年以来最为重要的信息获取手段之一,同时,也为我国数以亿计的网民表达自己的意见和建议,参与社会和政治生活的有效平台。
在现实生活之中许多民众出于保护自身的原因,可能会有意的隐藏自己的观点,意见或者违背自己意愿的赞同所谓“主流”价值,“大众”观点。但是在网络之中,由于网络主体隐蔽特性,使得网民敢于表达自己的真实想法和观念。这对于中国的民主化进程不得不说是一种进步的表现。但是,我们也应当看清,正是由于这种隐蔽特性,使得有关机构对于网民在互联网上的行为缺乏有效的监督。互联网上的公众对于社会热点事的看法和意见即我们所谓的“网络舆情”,从近些年的情况来看,网络舆情对于国家和社会的影响越来越大,有些情况下甚至可以左右政府的决策。从某种程度上来说,网络舆情代替了部分媒体监督,但是网民的片面性,盲从性,情绪性也会引发对某些社会事件的非理性宣传,影响社会的团结和稳定,境外敌对势力借网络舆情煽风点火甚至会对国家安全造成重大隐患。所以我国对于互联网舆情的发现和引导,介入刻不容缓。但是要做到这些并非易事,我们如今处在一个信息爆发的时代,在大数据背景下收集信息,过滤噪音,仅仅依靠人工不但是不可取的,也是无法实现的。只有利用机器学习和人工智能系统构建一套自动化的网路舆情分析系统来对网络舆情进行分析和监控,一旦发现异常,有关部门便可以针对性地加以引导,达到效率最大化。本文中对网络舆情主题的检测流程大致内容如下图1-1所示;
第二章 信息采集与处理
网络舆情的检测与追踪第一步就是发收集网络上的大量信息,从海量信息之中提取出对我们有用的信息,除去那些无用的信息。
2.1网页信息采集
对于网络信息的收集最直接的也是最有效的方法就是对于互联网网页信息的收集,比如各大新闻网站,各大论坛,微博,贴吧,博客等等,都是以Web页面的形式存在于互联网之中的。对于这种信息的采集,目前主流采用的是网络爬虫技术。这里简单介绍一下该技术。网络爬虫是通过一定的爬行策略从互联网上采集相关信息的一种技术。其主要目的是将互联网上的网页下载到本地形成一个或联网内容的镜像备份。络爬虫的基本工作流程如下:
(1)首先选取一部分精心挑选的种子URL(统一资源定位符);
(2)将这些URL放入待抓取URL队列;
(3)从待抓取URL队列中取出待抓取在URL,解析DNS,并且得到主机的ip,并将URL对应的网页下载下来,存储进已下载网页库中。此外,将这些URL放进已抓取URL队列。
(4)分析已抓取URL队列中的URL,分析其中的其他URL,并且将URL放入待抓取URL队列,从而进入下一个循环。
2.2网页信息提取
因为在现实的网络环境之中,网页上面含有大量对我们主题检测无用的噪音信息,比如常见的广告信息等。所以在对网页信息提取完成之后,就需要对网页信息进行过滤处理,将和我们想要了解的舆情主题有关联的信息提取出来以便继续进行下一步的分析。网页信息提取的方法目前有很多,主要的有以下几种。
2.2.1基于模板的方法
这种方法使用包装器来提取网页中的数据,仅仅适用于一个特定的信息源情况下,这种信息识别模式严重制约了这种方法的使用和推广,在这不多叙述。
2.2.2 基于统计的方法
该方法将网页中的Html表示成树的结构,统计并且比较每一个table节点中的字符数来决定正文的内容。这种方法具有一定的通用性,但是对于正文的内容过度依赖,特别对于比较小的文本内容,抽取的准确率不是很高。一般情况下,会将这种方法与上文提到的基于模板的方法相互结合使用,来提高准确率。
2.2.3 基于DOM的方法
这是一种基于文档对象的方法。因为超文本标记语言(HTML)标签是具有嵌套特性的。所以我们只需要在网页上面找到并且锁定这种具有特殊意义的标签,那么,我们就可以借助树形结构来标签化的表示网页。
2.2.4 基于网页分块的方法
一般来说,网页的页面是具有一定的空间结构的,因为一个网页是需要这样的结构来引导用户去进行阅读或者进行相关的操作的。这种方法就是利用网页这样的空间结构,将网页划分成块状部分,每一部分的重要性不同,比如说对于广告区和信息区当然我们认为信息区会更加重要。
2.2.5 基于标签窗的方法
这种方法最大的特点是能够提取非表格结构网页正文的内容,而且能够提取网页正文内容放在多个表格中的情况,还能识别正文嵌套表格的的情况。但是这种方法仅仅是利用了语义对信息进行过滤,并且需要对所有的标签内容都进行计算,不利于大规模的网页信息过滤。
第三章 文本预处理
当网页采集和信息提取过滤完成之后,我们需要对于提取到的文本信息进行预处理,为最后的分析打下坚实的基础。文本的预处理分为以下几个步骤。
3.1 中文分词
由于本文研究的是我国的网络舆情主题问题,我们提取到的文本信息都是中文。首先,由于中文的博大精深,汉语的同一句话可以有不同的解读。这就需要我们对汉语句子进行切分。一般来说,目前主流的中文分词法主要有以下这四种。
3.1.1 机械分词法
这种分词方法是在50年代提出的,这种分词方法主要是依据词典的信息,通过一定的方法将汉字与词典中的词语进行相应的匹配。若在词典中找到该字符串,则匹配成功,就进行切分一次。这种方法目前包括了最佳匹配法,最大匹配法,逆向最大匹配法,全切分,设立切分标志等。
3.1.2 基于规则的分词法
由于汉语的歧义性,很多情况下基于词典的切分方式并不能达到我们切分语句的目的。我国在汉语言文学方面的很多知识点已经被汉语分词系统以规则的形式录入到大数据库之中。我们在进行分词的时候利用这种系统,可以将分词的过程看做是一种自动推断的过程。但是这种方法的难度也可想而知,所需的数据库非常之庞大,而且恰恰又是汉语这种世界上语言变化最丰富的语种,所以现有的规则知识库很难做到全覆盖。
3.1.3 基于统计的分词方法
从总体上来看,汉语之中,词语的搭配是相对来说比较稳定的,若干个相邻汉字在文章之中出现的次数越多,我们有理由认为,这几个汉字组成词语的可能性越大。这是基于统计学的原理的一种方法,我们将这种方法和上文介绍的基于规则库的方法相结合使用,会使得中文分词的效率和正确率大大提高。
3.1.4 基于理解的分词方法
目前,随着人工智能,机器学习,大数据技术的发展,让计算机通过模仿人对于语言的理解,来识别语句的方法就是基于理解的分词方法,我国中科院就已经研发了ICTCLAS中文分词系统。通过对句法,语法,语义的分析来对文章的内容进行界定。是目前最为流行的一种高级分词方法。其简略的工作模型可以参见图3-1所示。
第四章 主题检测
主题检测,简称TD,最初起源于1996年,是由当时美国国家防务高级研究计划委员会提出的一种能够自动确定新闻信息中话题结构的技术。后来美国的众多高水平研究机构和大学都投身到这个项目之中来。随着研究规模的逐渐扩大,各国学者也都相继参与进来,我国的北京大学,中国科学院,哈尔滨工业大学,香港中文大学,台湾国立大学也都在不同阶段参与了相关的研究。
4.1 文本模型
我们在之前将网页提取的信息进行了预处理,形成了片段化,碎片化的信息。但是这些信息计算机依旧是不能处理的,我们需要进一步加工使得这些信息能够被计算机所识别。我们将这种信息称之为文本信息。构造文本模型的过程实际上使我们将一个文本从混乱无序的结构转变成一个具有一定结构规则的模型的过程。因为只有将文本变成了一个结构化的东西,我们才有可能对文本引进数学方法和数学模型进行计算,分析。目前来说,主流的文本模型有以下四种。
4.1.1 布尔模型
布尔模型的结构非常简单,其理论是基于布尔代数和集合论,能够十分便捷的判断出来某个词是否在我们所检测的文本中出现了。在早期的信息检索领域,布尔模型得到了非常广泛的应用。布尔模型将文档看成是由一个个特征性(也就是我们文档中的特征词)构成的向量,我们也可以将布尔模型看做是一个词语集合的模型。我们对于选择的特征项为它们进行赋值0或者1。只要文档中出现了某个词,这个词对应的特征性就会返回一个数值1,如果没有出现,就返回数值0。
我们可以用公式来表示布尔模型:
其中di表示某个选取的文本,ti(term)代表的是该文本中的某一个特征项,n代表的是该文本中特征项总的个数,wi代表特征项在文本中的权重值(特征值出现在文本中取1,否则取0)。
从布尔模型的公式可以看出,这种模型是非常简单的,所以布尔模型非常便于计算,因为其权重值只是仅仅赋值为1或者0.但是这样也不可避免的带来一个问题,不同的特征词对于整个文本的重要性或者说贡献度绝对不可能一样,也绝对不可能仅仅是0和1能够代表的。所以该模型在准确率方面确实有很大的不足需要去改进。
4.1.2 概率模型
所谓概率模型实际上是以布尔模型为基础的一种模型,该模型使用概率论作为其理论架构从而对文本信息进行数学分析的时候解决不确定性的问题。因为语料来源广泛,规模巨大,并且该模型发现的主题也不单一,不确定。通过这种方法可以确定不同文章之间主题的相似性,将高于一定相似度阈值的文章归类为同一主题,低于一定相似度阈值的文章归类为不同的主题。如下图3-1所示。
概率模型是基于以下基本假设:
给定一个用户的查询串 q和集合中的文档dj ,概率模型估计用户查询串q与文档dj 相关的概率。概率模型假设这种概率只决定于查询串和文档。更进一步说,该模型假定在文档集合中存在一个子集,即相对于查询串q的结果文档子集,这种理想的集合用R表示,集合中的文档是被预料与查询串相关的。
这种假设存在着缺点,因为它没有明确定义计算相关度的概率,下面将给出这种概率的定义。
在概率模型中索引术语的权重都是二值的,即 ,其中查询式q是索引词项(若干独立的词项被选作索引项)集合的子集。设R是相关文档集合(初始的猜测集合), 是R的补集(非相关文档的集合),表示文档dj和查询式q相关的概率, P(R|dj)表示文档dj和查询式q不相关的概率,文档dj对于查询串q的相关度值定义为:
根据贝叶斯原理:
其中:P(R|dj) 表从相关文档集合R中随机选取文档dj的概率,P(R)表示从整个集合中随机选取一篇文档作为相关文档的概率,依此定义和 ,因为对于集合中所有的文档P(R)和 P(R) 是相同的,所以有:
假设索引术语是相互独立的则:
P(ki|R)表示集合R中随机选取的文档中出现索引术语ki的概率, p(ki|R)表示集合R中随机选取的文档中不出现索引术语的概率,则有:
类似的定义P(ki|R)和P(ki |R),在相同查询背景下,忽略对所有文献保持不变的因子,最终得到概率模型主要的排序公式:
这样一来,使用概率模型可以使得文档可以按照他们相关概率递减的顺序来排序。但是概率模型也有很多不足之处,比如说最开始的时候需要将文档分为相关和不相关两个文档集合,而且由于所有权重都是二值的,所以没有考虑到索引术语在文档中的频率问题。最后我们假设标引词为独立,实际上可能并非如此。
4.1.4 向量空间模型
向量空间模型是Gerard Salton在上世纪60年代提出的,它是目前最为广泛应用的文本表示模型,因为该模型的计算方法简单,复杂度低,使用效率比较高。
为了介绍该模型,我们先介绍几个基本概念:
文档D:泛指文档或文档中的一个片段(如文档中的标题、摘要、正文等)。
索引项t:指出现在文档中能够代表文档性质的基本语言单位(如字、词等),也就是通常所指的检索词,这样一个文档D就可以表示为D(t1,t2,…,tn),其中n就代表了检索字的数量。
特征项权重:指特征项tn能够代表文档D能力的大小,体现了特征项在文档中的重要程度。
相似度S:指两个文档内容相关程度的大小
向量空间模型将一个文本看成是由关键词列表组成的信息集合,根据关键词的出现频率计算相似度S。用户要规定一个词项集合,并且给每个词项赋予一个权重,这个权重十分重要,会在下面详细介绍。最后根据相似度计算公式计算出结果后对结果进行排序,分析文本之间相似度。
很明显,计算文本中特征项的权重是该模型的重点。我们必须要赋予特征权重来表示不同特征项在文本中的不同贡献和支持度。目前几种特征权重计算方法是布尔权重法,TF-IDF法,互信息法,信息增量法。最为广泛使用的是TF-IDF法。我们详细介绍一下这种方法。
TF-IDF(term frequency-inverse document frequency)是一种基于统计的方法,用来计算一个词对于一个文本或者同一语料库中其他文本的重要程度。若一个词在一个文本之中出现的频率很高,但是在其他文本之中出现的频率比较低,我们就有理由认为这样的词语对这个文本的贡献度要高于对其他文本的贡献度,那么我们就可以认定该词语对于本文档和其他文档具有很好的区分度。我们假设tf词频表示某个特征项(特征词)在文档中出现的频率,idf为逆文档频率,它表示一个特征词在整个检测的文本中的分布情况。定义特征权重计算公式为:
其中表示第i个文本,表示第i个文本的第j个特征项,表示的权重。是在文档中出现的词频数,逆词频IDF为,N表示当前文档的总数量,是包含了的文档数量,M是表示文档中特征项的总数。
通过TF-IDF算法,我们可以计算出每个特征项在一篇文档中的权重值大小,计算完成之后就可以构建向量空间模型(VSM)文本向量了,这样便完成了将普通的语言文本转化为计算机可以计算的数学模型。
4.2 相似度计算
在完成前面一系列的工作之后,我们可以选择用向量模型表示从网页上选中的文章作为检测文本,再利用特征向量进行相似度的计算。在进行不同文档之间比较以确定不同文本是否是同一主题时,我们的判断标准就是相似度的值。通常用来计算相似度的公式有欧几里德距离公式,夹角余弦公式等。这里选用夹角预选公式进行计算来得出相似度的数值。
余弦相似公式可以表示为如下形式:
其中,si和sj 分别是两个文档的向量表达形式, Wik1和Wik2 分别表示 t ik1和t tik2的权重 。 t的取值规则为: 当 Wik1对应的词与对应的词 tik1 相同时t=1,不同时t=0。这样的设定可以在两篇文档的向量维度不同时(实际我们从网页上找来的不同文本几乎都是不同维度的),简化了计算量,且不必对所有的特征项都计算他们的权重(因为一篇文档中多的可能会有成千上万的特征项)。计算的结果通过与我们预先设定的阈值对比得出相关性的结论。
4.2.1 模型的改进
通过上述的计算公式,我们可以初步得出一个相关性的结论,但是经过进一步的思考,可以发现,上述的计算方法还有一些不足的地方。因为我们是对互联网舆情主题的识别,判断,分类。根据网络舆情的特点,了解到每个主题的内容可能会涉及到一些独特的名词比如说一些人名,地名,机构名等,我们可以称之为网络实体,这些网络实体包括了网名,昵称,网址,虚拟社区(如天涯论坛,百度贴吧),邮箱,电话,IP,银行卡号等等。这些网络实体的名称会对文章的相关性产生一定的影响。举个例子,百度贴吧和其贴吧的网址就有联系,某一事件的发生通过网络实体名之间的联系会将相关性进一步提高。
所以,针对网络舆情主题的特殊性,可以在上述的公式中进行修改,加入对网络实体名的权重计算参数Na(name),以便增加整个相似度的准确率。修改后的公式如下所示:
对于修改后的公式,如果当前正在判断的特征项是一个网络实体名,那么我们就令新增的权重参数Na取值大于1,具体的数值多少可以根据网络实体名的敏感度来确定,越敏感的词,取值越大。否则令Na=1,通过这种方式提高了网络实体名的权重值,对于描述特定网络实体的两篇文章也就提高了相应的相似度。
第五章 总结与展望
本文主要介绍了互联网舆情主题的检测流程,并对每一步的优点和不足提出了自己的见解,最后在数学模型的基础上改进了算法,提高了精确度。但是现实生活之中,汉语语言还存在着大量的反语现象,而且网络用户在发表自己意见的时候会存在着或明显或隐喻的情感倾向,这种倾向对于文本主题的分析带来了巨大的挑战,本文完全没有考虑到这些,就目前技术来说,这也是亟待解决的难点和热点问题。
网友评论