论文部分内容阅读
本文主要研究基于微信平台的舆情监测分析技术,解决微信平台公众号文章数据获取问题,并对网络舆情进行情感分析。
1引言
微信作为新兴的自媒体平台,体现了鲜明的媒体属性,已发展成为主流的舆论聚集平台。然而,微信的信息传递更为私密、信息难以获取等问题,使得目前国内针对微博舆情监测的研究已日渐成熟,微信方面却鲜有问津。因此,本文将针对网络舆情具有的特性进行分析,并基于微信平台,进一步深入研究舆情监测分析系统的关键技术。
2设计系统总体架构
秉承着软件工程中高内聚、低耦合的思想,系统采用模块化设计,对信息采集、倾向性判断等各功能进行设计,以方便后续对系统功能的添加及修改。系统总体框架如图2-1所示。
在系统框架中,第一层为数据采集与存储层,主要包含数据获取、数据采集、数据存储,应用Python爬虫和Hook技术从微信服务器中获取信息,存入MySQL数据库中。采集任务来源于已在数据库中设定的任务队列,任务列表的初期构造通过人工手动建立,之后程序识别新任务对象,由抓取策略确定任务顺序。第二层为分析层,主要包括自然语言处理、舆情分析等功能,中文文本可根据需要,对文本分词、去停用词及词性标注等文本预处理过程进行选择。目前舆情分析系统中,主要有文本倾向性分析、话题发现与跟踪、突发事件检索等多个方向,本文重点研究文本倾向性分析。第三层为展示层,形成可视化信息,提供决策依据,并为进一步系统研究提供数据分析支持。展示方式多元化,PDF文件可方便存储,提供相关证据支撑,HTML網页可读性强,方便数据分析,可进行信息交互。
在数据获取及存储方面,本文通过Python爬虫及Hook技术相结合的方式,实现微信平台公众号文章的自动获取,并存储于MySQL数据库中。在舆情分析方面,本文重点研究机器学习方法,对各类特征选择算法及分类算法进行分析和实验后,选择出适合微信平台文本倾向性分析的分类模型。在此基础上,通过研究Google提出的word2vec模型,将其与机器学习方法结合,进行中文文本倾向性分析,并与传统分类模型作对比研究,通过对模型调优,使其在微信平台文本倾向性分析中表现更优。在舆情分析结果方面,实现HTML网页、PDF文件等多元化成果展示方式。
首先由数据采集模块负责数据爬取,并将数据完整信息保存至数据存储模块中。然后当需要进行文本处理时,从数据存储模块中提取相关信息,进行文本预处理。根据不同功能应用选择不同功能模块,文本倾向性分析根据语料来源,评论类短文本由卡方统计算法进行特征选择,微信文本由已训练好的word2vec词向量模型处理,经过机器学习分类算法给出结果。关键词:检索选择word2vec训练模型,给定事件输入,输出关键词:,然后由HTML或PDF展示。
3详细设计
3.1设计实现数据采集模块
在数据采集模块中,将主要研究微信数据的自动化获取。本文数据采集需要做到以下四个目标:第一,微信在数据采集时,由于搜狗微信网页的数据有限,且有反爬取设置,因此,需要利用移动端获取数据。第二,手机实现自动化操作,提高爬取效率。第三,数据自动存储到服务器数据库中。第四,多设备协调工作,加快采集速度。
3.2设计数据存储模块
数据存储模块采用MySQL数据库,是一种开放源代码的关系型数据库,使用结构化查询语言(SQL)进行数据库管理。关系型数据库一般由一个或数个表格组成:表头(header),每一列的名称;列(row),具有相同数据类型的数据的集合;行(col),每一行用来描述某个对象的具体信息;值(value),行的具体信息,每个值必须与该列的数据类型相同;键(key),表中用来识别某个特定的对象的方法,键的值在当前列中具有唯一性。在数据存储模块中,主要包含以下两个表:data_source表,存储数据对象的主要特征信息,建立数据对象ID,存储数据对象名称、添加时间、监测状态等信息。data_article表,存储文章特征信息,建立文章ID,存储文章标题、文章所属数据对象ID、文章内容、文本倾向性标识等信息。
3.3文本倾向性分类模块
网络舆情倾向性分析主要是对网络文章及评论进行类别判断,掌握目前针对某论点的主流态度,判断其是支持、反对,或是客观陈述,属于分类问题,研究机器学习在传统文本分类中的应用是网络舆情分析的重要环节。本文针对评论文本、微信文章数据的不同特点,研究相适应的特征选择方法及分类算法,并对实验结果进行对比和分析。
在分类模块当中应用倾向性分类算法,标记数据库中未标记的文本,具体见下图3-1所示。
3.4舆情报告展示模块
舆情报告展示主要包括网页模式和PDF模式,并已实现从数据获取到文本分析、网页展示、PDF文件保存的自动化操作。网页模式采用B/S结构,即浏览器和服务器结构,用户工作界面是通过WWW浏览器来实现。B/S主要分三层架构:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。
4总结及展望
本文基于社交网络的舆情监测分析需求,设计系统总体架构,解决微信平台文章数据获取问题,并对网络舆情进行情感分析,提出word2vec模型与机器学习相结合的微信数据舆情分析模型,能够有效提高分类准确率、精确度、召回率。
网络舆情监测分析对互联网海量信息自动获取、采集、存储,对大数据信息进行挖掘,实现网络舆情倾向性判断、自动分类聚类、主题关键词:聚焦等功能,最终形成简报、图表等分析结果,提供决策依据。
近年来,中文舆情监测分析系统快速发展,并取得了丰硕的研究成果,但微信数据资源较少的问题,使得微信平台在舆情监测分析系统中一直比较空缺,在情感分析方面,由于开放的中文数据资源较少,情感标注质量较高的数据少之又少,无法形成统一的对比标准,造成大量成果结论无法复现。本文在数据处理方面,虽然已经采用交叉验证的方法,但分类器训练数据难免存在人为主观判断偏差问题,造成分类模型的性能降低。另外,在word2vec向量模型建立时,由于采用平均值作为向量,忽略了词的顺序问题,也会造成分类不准确,未来需要进一步研究和完善。
1引言
微信作为新兴的自媒体平台,体现了鲜明的媒体属性,已发展成为主流的舆论聚集平台。然而,微信的信息传递更为私密、信息难以获取等问题,使得目前国内针对微博舆情监测的研究已日渐成熟,微信方面却鲜有问津。因此,本文将针对网络舆情具有的特性进行分析,并基于微信平台,进一步深入研究舆情监测分析系统的关键技术。
2设计系统总体架构
秉承着软件工程中高内聚、低耦合的思想,系统采用模块化设计,对信息采集、倾向性判断等各功能进行设计,以方便后续对系统功能的添加及修改。系统总体框架如图2-1所示。
在系统框架中,第一层为数据采集与存储层,主要包含数据获取、数据采集、数据存储,应用Python爬虫和Hook技术从微信服务器中获取信息,存入MySQL数据库中。采集任务来源于已在数据库中设定的任务队列,任务列表的初期构造通过人工手动建立,之后程序识别新任务对象,由抓取策略确定任务顺序。第二层为分析层,主要包括自然语言处理、舆情分析等功能,中文文本可根据需要,对文本分词、去停用词及词性标注等文本预处理过程进行选择。目前舆情分析系统中,主要有文本倾向性分析、话题发现与跟踪、突发事件检索等多个方向,本文重点研究文本倾向性分析。第三层为展示层,形成可视化信息,提供决策依据,并为进一步系统研究提供数据分析支持。展示方式多元化,PDF文件可方便存储,提供相关证据支撑,HTML網页可读性强,方便数据分析,可进行信息交互。
在数据获取及存储方面,本文通过Python爬虫及Hook技术相结合的方式,实现微信平台公众号文章的自动获取,并存储于MySQL数据库中。在舆情分析方面,本文重点研究机器学习方法,对各类特征选择算法及分类算法进行分析和实验后,选择出适合微信平台文本倾向性分析的分类模型。在此基础上,通过研究Google提出的word2vec模型,将其与机器学习方法结合,进行中文文本倾向性分析,并与传统分类模型作对比研究,通过对模型调优,使其在微信平台文本倾向性分析中表现更优。在舆情分析结果方面,实现HTML网页、PDF文件等多元化成果展示方式。
首先由数据采集模块负责数据爬取,并将数据完整信息保存至数据存储模块中。然后当需要进行文本处理时,从数据存储模块中提取相关信息,进行文本预处理。根据不同功能应用选择不同功能模块,文本倾向性分析根据语料来源,评论类短文本由卡方统计算法进行特征选择,微信文本由已训练好的word2vec词向量模型处理,经过机器学习分类算法给出结果。关键词:检索选择word2vec训练模型,给定事件输入,输出关键词:,然后由HTML或PDF展示。
3详细设计
3.1设计实现数据采集模块
在数据采集模块中,将主要研究微信数据的自动化获取。本文数据采集需要做到以下四个目标:第一,微信在数据采集时,由于搜狗微信网页的数据有限,且有反爬取设置,因此,需要利用移动端获取数据。第二,手机实现自动化操作,提高爬取效率。第三,数据自动存储到服务器数据库中。第四,多设备协调工作,加快采集速度。
3.2设计数据存储模块
数据存储模块采用MySQL数据库,是一种开放源代码的关系型数据库,使用结构化查询语言(SQL)进行数据库管理。关系型数据库一般由一个或数个表格组成:表头(header),每一列的名称;列(row),具有相同数据类型的数据的集合;行(col),每一行用来描述某个对象的具体信息;值(value),行的具体信息,每个值必须与该列的数据类型相同;键(key),表中用来识别某个特定的对象的方法,键的值在当前列中具有唯一性。在数据存储模块中,主要包含以下两个表:data_source表,存储数据对象的主要特征信息,建立数据对象ID,存储数据对象名称、添加时间、监测状态等信息。data_article表,存储文章特征信息,建立文章ID,存储文章标题、文章所属数据对象ID、文章内容、文本倾向性标识等信息。
3.3文本倾向性分类模块
网络舆情倾向性分析主要是对网络文章及评论进行类别判断,掌握目前针对某论点的主流态度,判断其是支持、反对,或是客观陈述,属于分类问题,研究机器学习在传统文本分类中的应用是网络舆情分析的重要环节。本文针对评论文本、微信文章数据的不同特点,研究相适应的特征选择方法及分类算法,并对实验结果进行对比和分析。
在分类模块当中应用倾向性分类算法,标记数据库中未标记的文本,具体见下图3-1所示。
3.4舆情报告展示模块
舆情报告展示主要包括网页模式和PDF模式,并已实现从数据获取到文本分析、网页展示、PDF文件保存的自动化操作。网页模式采用B/S结构,即浏览器和服务器结构,用户工作界面是通过WWW浏览器来实现。B/S主要分三层架构:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。
4总结及展望
本文基于社交网络的舆情监测分析需求,设计系统总体架构,解决微信平台文章数据获取问题,并对网络舆情进行情感分析,提出word2vec模型与机器学习相结合的微信数据舆情分析模型,能够有效提高分类准确率、精确度、召回率。
网络舆情监测分析对互联网海量信息自动获取、采集、存储,对大数据信息进行挖掘,实现网络舆情倾向性判断、自动分类聚类、主题关键词:聚焦等功能,最终形成简报、图表等分析结果,提供决策依据。
近年来,中文舆情监测分析系统快速发展,并取得了丰硕的研究成果,但微信数据资源较少的问题,使得微信平台在舆情监测分析系统中一直比较空缺,在情感分析方面,由于开放的中文数据资源较少,情感标注质量较高的数据少之又少,无法形成统一的对比标准,造成大量成果结论无法复现。本文在数据处理方面,虽然已经采用交叉验证的方法,但分类器训练数据难免存在人为主观判断偏差问题,造成分类模型的性能降低。另外,在word2vec向量模型建立时,由于采用平均值作为向量,忽略了词的顺序问题,也会造成分类不准确,未来需要进一步研究和完善。