APP下载

机撰文稿的智能识别系统设计与实现

2022-05-12莫永华王可

现代计算机 2022年5期
关键词:模块模型功能

莫永华,王可,李 嘉

(桂林信息科技学院,桂林 541004)

0 引言

由于近年来互联网的飞速发展,自媒体网络文章已成为互联网舆论来源中体量庞大且不可忽视的一部分。由于新闻与社交平台的筛选审查能力有限,其中恶意煽动负面舆论的文章极易影响社会稳定。因此,一个可以甄别恶意舆论导向文章的系统已逐渐成为相关部门维护网络空间与社会稳定安全的重要方向。实现这一课题,旨在提供一个可以从短评论中分辨正负面情感的算法模型,并在该模型的基础上提供一个功能多样、操作便捷的Web 平台,为舆情分析提供一个新思路。

1 机撰文稿的智能识别功能需求与技术介绍

1.1 系统功能需求

机撰文稿的智能识别系统功能需求包括三个方面:数据采集、情感分析模型、业务和数据大屏展示。系统功能需求如图1所示。业务和数据大屏展示包括系统信息监控、今日新闻排行榜查看、分析任务管理、模型管理、数据大屏功能。情感分析模型模块包括模型训练、数据预处理、数据清理、HTTP 接口提供功能。数据采集模块为业务模块提供数据支持,通过网络爬虫程序从新闻网站中采集系统所需的数据信息。系统和用户之间的交互主要为用户与Web 前端的交互。用户在Web 前端中的今日新闻排行榜中选取所需要的进行分析的新闻,或者直接输入新闻网址来创建分析任务。业务模块将和数据采集模块进行交互,来采集所需要的数据,采集完毕之后,业务模块负责将数据去重,并且存入数据库中,并且与情感分析模块进行交互,用以分析评论的情感,然后将结果存入数据库,最终Web 前端根据数据库中的数据来显示相对应的图表。

图1 系统功能需求

功能需求说明如下:

(1)业务模块。通过可视化界面提供了系统信息监控、今日新闻排行榜查看、分析任务管理、模型管理、数据大屏等功能,并直接与用户产生交互。

(2)数据采集模块。通过模拟浏览器访问行为获得对应新闻的评论后,通过JSON 解析,为模型分析提供统一格式的文本数据;在数据采集模块中,包含以下功能:采集今日热门新闻排行榜:向163 新闻网站请求数据,对数据出力后按照所需格式返回;采集新闻评论:根据新闻ID获取评论JSON,然后对其进行解析并返回。

(3)情感分析模块。用于判断一段中文短评论的正负面情感的概率。在情感分析模型模块中,包含以下功能:训练数据清洗:删除特殊字符,空格,null 数据等;切分训练数据:验证使用时的性能,将训练数据切分成训练集、测试集和验证集;模型创建:创建出模型的每一层;模型训练:实例化出数据加载器和模型,对模型进行训练。

1.2 系统技术介绍

(1)服务器端环境。能够运行TensorFlow 等深度学习框架,且能够支持Python 语言的计算机或服务器。

(2)前端环境。能够支持基于Web 平台的Spring Boot+Vue。

首先,使用已经标记好的36 万条情感类别的评论数据集(微博)和深度学习框架(Tensor⁃Flow)训练出一个能从短评论中分辨正负面情感的文本识别模型;然后,通过网络爬虫抓取等手段分析新闻数据接口,使用Python 语言设计爬虫,实现舆论数据采集功能;最后使用Spring Boot+Vue 框架编写业务逻辑模块和数据大屏展示,对用户请求的新闻进行判断甄别,并返回可视化结果。

2 系统设计

2.1 功能模块设计

机撰文稿的智能识别系统功能设计主要分为三个模块:情感分析模型模块、数据采集模块和业务模块。系统主要任务有:①训练数据集清洗。②文本分类问题。③TextCNN。④Web前端平台提供用户友好的交互界面及相关功能服务,包括系统模块监控、今日新闻排行榜监控、分析指定链接新闻、模型管理、数据大屏功能。根据需求设计舆论文章智能识别系统需求具体如图2所示。

图2 系统设计

(1)情感分析模型模块。后台模型基于深度TextCNN 的情感分析模型,负责接收来自业务模块的句子,经过运算分析后,返回结果给业务模块用于最终结果展示。返回的结果有:正面情感概率和负面情感概率,用于为用户提供结果参考。

该模块的主要流程为:首先进行对输入句子的预处理,其中包括:数据清洗、文本分词、映射词向量等操作,从而得到输入数据的矩阵形式,再利用已经使用训练数据训练完毕的神经网络模型进行分析,得出正面情感概率和负面情感概率,并将其返回到业务模块。模型利用了CNN 的特征提取和识别的特性,可计算出互联网短评论的正负面情感的概率。

(2)数据采集模块。数据采集模块用于给业务模块提供所需的数据。该模块的工作是根据业务模块传输过来的请求,在指定新闻文章下采集该新闻的评论,并完成对数据的处理,使得每条数据具有相同的格式,方便后台程序的读取。数据采集模块是基于Python 的网络爬虫程序实现,通过模拟浏览器访问行为获得对应新闻的评论后,通过JSON 解析,为模型分析提供统一格式的文本数据。

(3)业务逻辑模块。情感分析系统的业务逻辑模块采用的是互联网行业软件开发中成熟的基Spring Boot和Vue的前后端分离架构。前端平台通过可视化界面提供了系统信息监控、今日新闻排行榜查看、分析任务管理、模型管理、数据大屏等功能,并直接与用户产生交互。用户将通过相应的图形界面在Web 前端中进行响应功能的使用,业务模块收到用户的操作后依据触发的功能调用数据采集模块,采集完成之后将数据发给情感分析模块,并负责接收分析,最后将得到的分析结果进行图表展示返回给用户。此外,为提高用户对该系统的信任,该系统同时提供在线测试功能。用户可以自定义输入一句话,让系统进行分析得到结果,进一步提高用户对分析模型的信任度。

2.2 数据库设计

(1)概念结构设计,如图3所示。

图3 ER图

业务模块实现的任务逻辑结构表设计如表1所示。

表1 任务Task逻辑结构设计

业务模块实现的评论逻辑结构表设计如表2所示。

表2 评论Comment逻辑结构设计

(2)物理结构设计。任务Task SQL 如图4所示。

图4 Task SQL

评论Comment SQL如图5所示。

图5 Comment SQL

3 系统实现与测试

本系统开发实现环境在Linux 环境下进行,具体的实现环境为Python 3.7 环境。核心模型环境:在Python 3.7 环境下完成相关工具包的部署,包括分词库jieba、开源第三方算法工具包Gensim、深度学习框架TensorFlow 2.1 等。业务模块:运用SpringBoot + Vue 的方案,PIP 环境下安装HTML网页解析库BeautifulSoup等。

3.1 核心模型

(1)数据集。模型的数据来源于GitHub 开源社区提供的已标记的数据集,共包括4 种情感,其中约20万条喜悦,约5万条愤怒,约5万条厌恶,约5 万条低落。共35 万条。在随机打乱数据集使其分布平均后,将数据集按8∶1∶1分为训练集、测试集和验证集。

(2)模型设置。在测试实验中,使用了Adam 优化器,模型的训练正面情感标签设置为0和负面情感标签设置为1,词向量的模型使用Word2Vec 静态,词向量的维度设置为300,模型batch 设置大小为64,输入的文本词数设置为64,如果文本词数超过长度的被截断,如果长度不够的用词向量0填充。

(3)测试结果。在经过多次参数调整之后,本系统选择了静态词向量、使用小卷积核、基于TextCNN 的模型作为情绪分辨模型。训练100轮之后,该模型在训练集中达到93%的准确率,在验证集和测试集中达到79%的准确率。项目模型准确率测试如图6所示。

图6 模型准确率测试

3.2 业务模块

(1)系统信息监控。系统信息监控功能可以及时显示情感分析模块和爬虫模块的是否上线、以及系统负载状况具体流程如图7所示。

图7 系统信息监控过程

系统信息界面会显示情感分析系统和评论采集系统状态是否正常,如图8所示。

图8 系统信息页面

(2)今日新闻监控。通过对新闻网站的活跃评论新闻进行采集,并将其反馈到排行榜。如图9所示。

图9 新闻排行榜过程

通过获取新闻标题和编号,对新闻进行排序,获得排行榜,如图10所示。

图10 今日新闻排行榜

(3)模型管理。通过使用模型来分析新闻评论的情感。选择对应的模型后,系统载入模型,通过对一些基本语句对模型进行测试,如图11所示。

图11 模型管理界面

(4)数据大屏。数据大屏能及时显示系统正在运行的任务、系统负载、最近分析的评论情况等信息。如图12所示。

图12 系统数据大屏

4 结语

该研究将恶意导向社会舆论文章作为互联网信息的重要部分引入群众的视线,互联网中的自媒体为了吸引流量,该类型的文章数量会越来越多,情感识别模型和该系统使得恶意文章的负面影响得到最大化程度的降低,为维护社会稳定与网络空间安全做出重要贡献。

猜你喜欢

模块模型功能
数学的翻译功能
自制空间站模型
Module 2 Highlights of My Senior Year
Module 4 Music Born in America
关注基向量的解题功能
我有特异功能
模型小览(二)
圆周运动与解题模型
离散型随机变量分布列的两法则和三模型
必修模块相关知识过关训练