基于注意力机制的新闻事件检测研究与应用∗

2021-06-29 08:41张秀华云红艳
计算机与数字工程 2021年6期
关键词:双向向量注意力

张秀华 云红艳 贺 英 胡 欢

(1.青岛大学计算机科学技术学院 青岛 266071)(2.青岛大学电子信息学院 青岛 266071)

1 引言

随着大数据时代互联网的发展,人们被大量的新闻信息环绕,它们来源广泛,比如报纸、网络等。其中新闻最常见的载体是文本,文本是最容易获取有价值信息的方式。由于不同来源产生的新闻信息方式各种各样,新闻文本的格式和蕴含的信息也往往杂乱无章,同时产生新闻信息的数量也极其庞大,完全依赖人工实现中文新闻事件的检测是几乎不可能的。

新闻事件检测旨在从非结构化新闻数据流中对新闻文本描述的新闻事件检测给出新闻事件主题。对于给定的新闻事件,主要包括事件发生的时间、地点、事件主体、事件的触发词等,传统的新闻事件检测要手工构建基于上述事件因素的特征,对新闻事件的特征加权表示突出特征的重要性提高识别的准确度。对于特征的构建如词性标记、实体识别等会导致计算成本和额外传播误差的增加,另一方面手动构建特征非常耗时并且泛化能力不足。

传统的中文新闻事件检测方法主要有K-means聚类[1~2]、凝聚类[3]、在线增量聚类[4]、Sin⁃gle-pass聚类等[5]方法。张斌等提出基于时间片的Single-Pass增量聚类方法用于事件检测[6]。龙志禕等提出基于词聚类的方法检测新事件,本质是利用词之间的相似性检测新事件[7]。上述聚类方法在中文新闻事件检测过程为,当有新的新闻文本文件到来时,会计算新文本事件与已有事件的相似程度,并为相似度设定一个阈值,当新文本事件与已有事件的相似度阈值小于给定的阈值,会将其判定为新事件,否则为已有事件。对于相似度较高的众多新闻事件,采用聚类算法进行检测时,会带来新闻事件混淆、新事件识别精度不高或者新闻事件识别错误的问题。

本文提出了基于注意力机制的双向长短记忆网络的新闻事件检测模型。模型利用双向长短记忆网络,利用神经网络的注意力机制来捕获句子中最重要的语义信息。此模型不再需要手动构建事件特征,它可以自动关注对新闻事件检测具有决定性作用的词,捕捉句子中最重要的语义信息而不依赖外部其他的特征。实验证明基于注意力机制的双向长短记忆网络的新闻事件检测模型具有良好的性能,优于传统的新闻事件检测方法。

2 新闻文本预处理及量化表示

2.1 新闻文本预处理

在新闻事件检测之前,首先是对获得的文本进行文本预处理。文本预处理是后续工作的基础,模型的性能以及结果都依赖于文本预处理的结果,可以说良好的文本预处理结果是新闻事件检测的关键一步。文本预处理包括规范文本,中文分词,去停用词等。对文本数据的规范包括统一编码格式,规范文本数据的内容,去除无效的标记例如HT⁃ML,XML标记,图片信息等。规范文本之后采用结巴分词对新闻文本进行分词,然后去除如常见的“的”“在”“和”“接着”等停用词以减少噪声干扰。

2.2 新闻文本量化表示

本文采用Google开源的word2vec[9]词向量生成工具训练新闻文本的词向量模型。Word2vec[10]本质上是一个三层神经网络,包括输入层、隐藏层、输出层,作用就是利用深度学习的思想将自然语言中的字词转为计算机可以理解的K维空间稠密向量。Word2vec主要分为CBOW和Skip-gram两种模式。CBOW是从原始语句推测目标字词;而Skip-gram是从目标字词推测原始语句。本文采用Word2vec中 的Skip-gram[11]模 式 训 练 词 向 量 。Skip-gram的结构如图1所示。

图1 skip-gram结构图

Skip-gram模型由输入层、隐藏层、输出层组成,根据当前词预测上下文的方法。Skip-gram模型根据负采样的思想进行设计,其在神经网络的目标优化函数如式(1):

其中c表示新闻文本语料,content(w)表示词w的上下文,即w周围词的集合。

3 模型

本文提出基于注意力机制的双向长短记忆网络[14]的新闻事件检测模型用于对新闻事件的检测。深度学习可以自动学习新闻事件的特征,例如利用卷积神经网络[8]对新闻文本进行处理,但是卷积神经网络[12]不适合学习远程的语义信息;普通的循环神经网络存在梯度消失的问题,为了克服这个问题,Hochreiter等引入了门控制单元。本文基于注意力机制的双向长短记忆网络的新闻事件检测模型结构如图2所示,共包含以下部分。

1)输入层:输入新闻事件检测模型的新闻文本。

2)嵌入层:将每个词与word2vec模型映射为稠密向量。

3)LSTM层:利用BiLSTM获得高水平的新闻特征。

4)注意力机制层:产生权重向量。并通过乘以权重向量,将每个步长的新闻文本词级特征合并为句子篇章级特征向量。

5)输出层:新闻文本句子篇章级特征向量最终输出结果。

图2 新闻事件检测模型结构

3.1 嵌入层

对于新闻文本无法直接将其输入到模型中,首先要对新闻文本进行量化表示,本文基于word2vec训练新闻文本的量化表示模型,为每一个词训练一个300维的向量表示。下一步将要输入的新闻文本与词向量模型做量化映射,对于一篇新闻文本包含若干词构成,可表示为T={x1,x2,…,xn},其中xi代表组成新闻文本的每个词语。

首先将新闻文本进行预处理操作得到新闻文本词的集合,然后依据基于word2vec训练的词向量模型E,对每个词进行词向量映射具体为式(2):

其中exi为词的向量表示,E[x]i为词xi在词向量模型中训练好的稠密向量。经过这个步骤后一篇新闻文本的量化表示为e={ex1,ex2,…,exn}输入到下一层的网络中。

3.2 双向LSTM网络层

双向LSTM网络有效解决了梯度消失和梯度爆炸的问题。主要思想是引入了门控制机制,该机制决定了LSTM单元保持当前的特征状态并记住输入数据的特征。LSTM网络包括三个门控制,即输入门,遗忘门和输出门,具体的更新公式如式(3)~(8)所示:

将新闻文本的量化表示输入到双向LSTM进行新闻事件检测模型的计算和训练。通过门机制,每一个LSTM神经元[15]都会有记忆历史特征的能力,并且丢弃掉无效的特征,经过训练学习结果如式(9)所示:

3.3 注意力机制层

基于注意力机制的神经网络在各项任务中都取得了不错的成果,包括智能问答,机器翻译,语音识别,图像处理等。在本节中,我们构建了基于新闻事件检测的注意力机制。设双向LSTM的输出的新闻文本向量可以表示为H={h1,h2,…,hn},其中n为新闻文本的长度。将H输入到注意力机制层,其得到的权重矩阵可由下式得到:

最终获得篇章级的新闻文本特征可表示为

3.4 输出层

经过注意力机制层处理的具有篇章级新闻特征的向量作为输入,输入到输出层中。全连接层中的每个神经元与前一层的注意力机制进行全连接。输出层可以整合注意力机制层抽取出的中具有决定性的特征信息,在语言任务中基于注意力机制的双向长短记忆网络的输出层每个神经元的激励函数采用ReLU函数。最后把得到的向量通过一个softmax函数得到,如式(6):

将y转换为正数,和为1,得到中文新闻事件的概率分布,最终得出中文新闻事件的检测结果。

4 实验与分析

4.1 数据获取

首先构建数据爬虫系统从互联网中通过搜索新闻事件关键词获取实验数据,并且对爬虫系统获得的结果进行解析抽取出实验数据。本文实验所用数据包括中兴事件在内共2258条数据,对获取的数据集,首先进行规范化操作,去除HTML标记,图片等无效信息,对原始数据集采用半人工标注形成规范化数据构建训练集。在数据预处理方面采用结巴分词对文本数据集进行中文分词,去停用词操作。基于word2vec对新闻文本集进行量化表示,采用skip-gram模型,词向量的维度为300维,训练词向量模型。

4.2 实验过程与结果

本文基于word2vec训练新闻文本的词向量模型,提出基于注意力机制的双向长短记忆网络的新闻事件检测模型。评价指标采用神经网络常用的F1值对模型的效果进行评价,如式(15)所示

在训练过程中,共设置100轮训练,若中间模型准确率不在上升则自动终止训练。最终模型在训练集、验证集和测试集上取得了不错的效果,具体的F1值与其他模型的对比如表1所示。

表1 CNN模型与其他模型试验结果对比

从表中可以得出,传统机器学习方法,如SVM、KNN,传统聚类方法在中文新闻事件检测中表现较差,F1值只有0.5左右。新闻事件检测模型的最佳性能是基于注意力机制的双向长短记忆网络的新闻事件检测模型。其F1得分为0.87。基于注意力机制的双向长短记忆网络的新闻事件检测模型的F1值高于其他模型。可以得出结论,基于注意力机制的双向长短记忆网络的新闻事件检测模型优于其他模型。结果表明,注意力机制和双向长短记忆网络和窗口滑动方法影响事件分类模型的性能。基于注意力机制的双向长短记忆网络的新闻事件检测模型具有强大的特征学习能力,可以从新闻文本中获取每个事件的重要特征,从而实现事件的准确识别。

传统的中文新闻事件检测采用聚类的方法发现新事件,这种方法精度差,收敛慢。图3是本文基于注意力机制的双向长短记忆网络的新闻事件检测模型训练过程的收敛情况,其中图3(a)为精度收敛情况,图3(b)为损失值得收敛情况。图中深色线表示模型在训练集的收敛情况,浅色线为模型在验证集的收敛情况。从图中可以看出模型的收敛速度非常快当,当模型训练近300步时,模型收敛,这也验证了基于注意力机制的双向长短记忆网络的新闻事件检测模型在中文新闻事件检测中的优越性。

图3 模型训练曲线

5 事件建模WEB应用工具

在自然语言处理领域有众多的任务,而且在每个领域都取得了众多的成果,但是上述的成果仅仅是理论的研究,缺乏面向用户的实用工具。本节将介绍本文基于注意力机制的双向长短记忆网络的新闻事件检测模型构建事件建模应用系统,包括需求分析、系统设计、功能实现。

5.1 需求分析

为了能够用户充分利用非结构化数据,提高用户在自然语言处理的效率,更方便快捷地构建自然语言处理模型,增强数据的可用性、可理解性。整个系统主要提供以下三个模块。

1)数据预处理与量化表示:将新闻文本数据的预处理与向量化表示集成到一个模块中,实现数据的预处理功能和训练基于word2vec训练词向量模型的功能。

2)模型构建与训练:针对新闻事件检测模型,提供基于注意力机制的双向长短记忆网络的新闻事件模型的构建与训练功能。用户可以根据自己的需要定制自己的新闻事件检测模型。

3)新闻事件检测与分析:基于2)训练好的新闻事件检测模型,实现对新闻文本的检测,并给出事件预测结果,对于新事件提供TF-IDF+kmeans的方法提取主题,并将文本加入训练集更新模型的功能。

5.2 系统设计

本系统的设计严格按照“高内聚,低耦合”的设计原则,保证了系统的维护性和易扩展性。如图4所示,将系统分为数据层、业务逻辑层和表现层。数据层主要涉及数据库的相关操作,并将数据返回给业务逻辑层使用。业务逻辑层主要任务是业务逻辑的实现,对数据进行封装和格式转化处理,实现主要功能。表示层实现了为用户提供交互和友好的可视化界面,负责数据的显示和渲染。

系统采用B/S结构,后端服务有flask框架提供,提供RESTful接口。利用HTML5构建前端可视化界面。如图4所示,系统由底向上的顺序建立。首先在数据层,构建新闻文本模型的训练集,测试集,验证集,然后对新闻文本数据进行预处理操作,训练词向量模型。在业务逻辑层接收表示层的参数数据,训练词向量模型,训练新闻事件检测模型;新闻事件的检测以及分析,将数据封装成JSON格式传递到表示层。表示层结果业务逻辑层的数据,在前端对数据渲染展示,提供给用户。

图4 系统架构图

5.3 功能实现

系统的功能主要分为事件建模和新闻事件检测与分析两个模块。其中事件建模可以让用户自定义构建基于注意力机制的双向长短记忆网络的新闻事件检测模型。新闻事件检测与分析可以让用户应用自定义模型检测新闻事件并进行分析将数据更新至模型。具体如下。

5.3.1 事件建模

此模块为用户自定义训练基于注意力机制的双向长短记忆网络的新闻事件检测模型,包括新闻文本预处理及量化表示和模型的构建。

1)数据预处理与量化表示:文本数据上传至服务器,进行中文分词去停用词操作,选择词向量模型的参数训练词向量模型如图5所示。

图5 事件建模

2)模型训练:根据1)得到的词向量模型选择新闻事件检测模型的参数包括网络的层数、注意力层的尺度、dropout值、学习率以及模型名称训练新闻事件检测模型,训练完成在显示区域显示模型的性能。如图5所示。

5.3.2 新闻事件检测与分析

此模块是对事件建模模块模型的应用,用户根据自定义训练的新闻事件检测模型,选取要检测的新闻文本输入到系统中,系统调用新闻事件检策模型依次检测新闻文本,给出新闻事件的主题。对于模型检测出的新事件类型,系统提供了基于TF-IDF+kmeans[13]的方法提取新事件的主题并由用户确定,最后加入到模型数据中对模型进行增量训练不断扩充模型。如图6所示。

图6 新闻事件检测与分析

6 结语

本文介绍了新闻文本预处理及量化表示方法,提出了基于注意力机制的双向长短记忆网络的新闻事件检测模型,并基于上述模型开发构建了一套事件建模应用系统。实验证明基于注意力机制的双向长短记忆网络的新闻事件检测模型要优于传统的事件检测方法,在各方面均表现出良好的性能,构建的事件建模应用系统方便,便捷于用户的使用。因此本文构建的模型和系统高效且实用。

猜你喜欢
双向向量注意力
基于双向特征融合的交通标志识别
向量的分解
人才与企业“双向奔赴”——咸阳市激发人才创新力
让注意力“飞”回来
混凝土泵车用双向液压锁故障探讨
完善刑事证据双向开示制度的思考
A Beautiful Way Of Looking At Things
向量垂直在解析几何中的应用
向量五种“变身” 玩转圆锥曲线
阅读理解两则