导航菜单
首页 > 工学论文 > 科技论文 » 正文

基于深度学习的微博突发事件提取系统设计与实现

刘肖萌 滕辉 龙飞



摘 要:随着社交媒体的发展,微博平台已经成为传递信息的重要媒介,从微博中快速识别和提取出突发事件是近些年来的研究热点。本文将突发事件识别和提取转化为文本分类问题,并使用卷积神经网络和循环神经网络这两种典型的深度学习模型完成文本分类功能。实践表明,本文使用的方法可以完成微博突发事件提取任务,不间断地采集微博数据,经过系统处理自动为媒体记者提供实时突发事件新闻素材。

关键词:突发事件;事件识别;事件提取;深度学习;迁移学习

中图分类号:TP391 文献标识码:A 文章编号:1671-2064(2019)14-0036-03

0 引言

突发事件的发生会造成严重的社会危害,能否妥善地采取措施应对突发事件,及时将信息发布及传播,关乎社会稳定和安全。随着互联网的快速发展,微博、微信等社交媒体日益成为传播信息的重要渠道。微博平台上有很多关于突发事件的信息,亟需使用人工智能技术从中自动检测并提取出事件信息,为各传统媒体、融媒体平台及时提供来自微博这一社交媒体的突发事件类新闻素材。

在大规模的微博文本中,识别突发事件,本质上是文本分类问题,判断微博正文描述的是突发事件或者不是突发事件。系统实现中,可能需要多个二分类器或者多分类器。为了完成识别突发事件的功能,需要提前标注微博文本是否为突发事件,得到数据集,离线训练分类器。上线后,微博正文经过自然语言处理得到特征向量,输入分类器判断其是否为突发事件。事件提取有两种典型方法:生成式和抽取式。文中采取后一种方式通过从原文本中抽取出事件元素拼装实现事件提取,经处理获取的突发事件类新闻素材显示在终端屏幕。从原文本中抽取事件元素,例如事件起因、事件经过等,可处理为文本分类问题。原文本按照标点符号断句后,使用分类器判断分句是否为特定的事件元素,完成句子级别特征提取,经去重和权衡相关性及多样性处理后,拼接句子级别的特征完成事件提取任务。

传统的文本分类方法需要人工进行特征工程,将文本表示成高纬度高稀疏的特征向量,训练浅层的分类模型实现[1]。深度学习去掉了繁杂的人工特征工程步骤,直接通过训练神经网络语言模型,得到文本的分布式表示,将词表示成定长的连续的稠密向量[2],文本分类器模型利用典型的深度学习网络解决自动特征提取的问题,如卷积神经网络(Convolutional Neural Network,CNN)[3,4]、循环神经网络(Recurrent Neural Network,RNN)[5,6]、变换器(Transformer)[7]等。本文第2节介绍了应用于微博突发事件提取任务的深度学习文本分类算法。

1 事件识别与提取算法

突发事件的识别和提取使用文本分類方法实现,文本分类作为监督学习算法,模型训练过程需要带有标记的数据集。由于突发事件包括自然灾害、事故灾难、社会安全事件、公共卫生事件等不同种类的事件,可采用定制化的专用爬虫,定向抓取发布在微博中的相关信息,获取到某些种类突发事件可能相关的微博。比如针对交通事故类突发事件,抓取交通台、交警官微等特定发布人的微博,将交通事故类突发事件的关键词作为搜索条件,得到相关微博的列表,定向获取这些微博详情信息。人工标注通过爬虫获取的微博文本是否为突发事件,作为突发事件识别分类器数据集。根据是否含有事件触发词或事件关键元素的描述,人工判断和标注文本中的句子是否为事件自动摘要提取所使用的候选单句,作为突发事件提取的语料库。

本文设计和实现了中文微博突发事件提取系统,对于中文自然语言处理任务,必须先考虑中文的词在计算机中的表示。通过训练神经网络语言模型,将词(包括字符、词语、短语)映射到低维的实数空间,生成对应的词向量。目前已经有学习词向量表征的高效算法[2],某些研究组织会发布基于特大数量的文本训练得到的词向量模型[2,8],而通常预训练的词向量模型在开发过程中已经消耗了巨大的时间资源和计算资源。在实际自然语言处理应用中,下载并使用了这些预训练的词向量模型作为新模型的起点,即通过迁移学习,将预训练的词向量模型已经囊括的强大信息迁移到相关的问题上。实验中做了对比,如果没有使用预训练的词向量模型的分类器,准确性和召回率指标均较差。系统实现使用了北师大在多个中文数据集上预训练的词向量模型,每个向量维度是300[8]。

在完成中文分词,将词语转换为高维向量后,需要考虑将文本的句子、篇章表示成适当的数字化的表示形式。传统的统计语言模型中的n-gram特征表达,即将文本按照字节进行大小为n的滑动窗口操作,形成长度是n的字节片段序列,每个字节片段称为gram。统计分析所有的gram出现频度,按照设定的阈值过滤,形成关键gram列表,作为表示文本的特征向量,其中每个gram就是特征向量的一个维度。CNN通过设定一维卷积层的卷积核大小,如2、3等,捕捉文本中不同宽度视野内的局部相关性信息,自动抽取文本中类似n-gram的关键信息。

CNN在很多文本分类任务中有不错的表现,但是CNN有个很大的问题是固定了卷积核的视野大小,无法建模更长的序列信息,而且卷积核大小这一超参数的调节比较繁琐。RNN能够更好的表达上下文信息,同一层上每个隐藏层单元都执行相同的任务,其输出依赖于输入和上下文记忆信息,信息在时间维度上传递和积累。引入门控机制的长短记忆模型(Long Short Term Memory,LSTM)、门控循环单元(Gated Recurrent Unit,GRU)等RNN模型可以有效地解决长期记忆和反向传播中梯度消失等问题,双向长短记忆模型(Bi-directional Long Short-Term Memory, Bi-LSTM)可捕获变长且双向的n-gram信息,在自然语言处理领域得到了广泛应用。

1.1 事件识别

系统基于Bi-LSTM构建突发事件识别的分类器模型。LSTM的典型单元中包含三个门控机制,避免长期依赖问题,典型LSTM单元的结构如图1所示[6]。

其中xt、ht、Ct、分别表示t时刻的输入、隐藏状态、单元状态和待选的单元状态。W和b为待优化的权值。ft、it、ot分别表示遗忘门、输入门、输出门,激活函数都使用Sigmoid函数,用σ表示,实现从实数域到[0,1]区间的转换操作,如果门控函数输出为0,表示与此门控相乘的信息不能通过;而如果门控函数输出为1,表示与此门控函数相乘的信息可以完全通过,而在0和1之间的门控输出,表示部分信息可以通过。运算关系见式(1)-(6)。

Bi-LSTM由前向LSTM和后向LSTM组合而成,共同建模上下文信息。随着时间推移,不断输入文本的词向量序列,使用Bi-LSTM单元传递隐藏状态和单元状态信息。最终文本输入结束时的隐藏状态作为输出,通过全连接层,激活函数选为Sigmoid函数或者Softmax函数,softmax函数可以表示多分类的概率。计算交叉熵做分类器的损失函数,通过Adam优化算法实现,得到表示网络结构的最优权值。学习过程使用了随机失活(dropout)策略,随机将部分隐含层节点的权重归零,降低网络的结构风险,实现二分类器或多分类器的训练过程。

1.2 事件提取

微博突发事件提取基于卷积神经网络的多分类器模型完成新闻事件关键元素的抽取,其中事件关键元素包括时间、地点、事件起因、经过、现状描述、结果六种元素。仍然使用预训练的词向量模型对文本进行表征,将微博正文根据标点符号分开后,判断每个句子的重要性,即是否为事件的关键元素。借鉴论文[4]的思路构建卷积神经网络,网络有6层包括卷积和最大池化操作的卷积层、3层全连接层,最后一层全连接激活函数为Softmax函数,也使用了dropout策略,利用交叉熵作为损失函数,通过优化算法得到CNN网络的权重最优值,完成分类器的训练。

基于CNN的事件关键元素分类器模型对测试集进行新闻关键元素抽取,得到仅包括六中关键事件元素的文本候选单句集合。采用了文本相似度算法去除语义重复内容,即依次计算文本候选单句之间的余弦相似度值,过滤掉余弦相似度值大于预设阈值(如0.7)的句子,得到无重复的候选单句集合,记为事件临时摘要内容集T。利用最大边缘相关性模型权衡抽取内容的相关性和多样性,获取更加全面的突发事件新闻内容摘要。遍历事件临时摘要内容集T中的文本单句,按照公式(7)得到候选摘要文本s,并添加到候选摘要集合中。

其中,S表示候选摘要集合,初始值设为空。λ取值为0.9,score(Ti)表示临时摘要内容第i句与整个临时摘要内容T的余弦相似度。score(Ti,Sj)表示为临时摘要内容T第i句与已经成为候选摘要集合S第j句的余弦相似度。

重复上述步骤C次(C为正整数且小于T中的句子总数),得到候选摘要集合,即事件抽取处理后的摘要文本,存入突发事件的新闻素材库中。

2 系统实现

系统在线运行流程为:(1)实时数据采集、入库;(2)突发事件识别,如果经分类器判断是突发事件,则更新数据库信息并进入下面的流程继续处理;(3)突发事件提取,如果经过分类器判断存在突发事件的关键元素,则通过去重和权衡抽取内容的相关性及多样性处理,得到突发事件新闻内容摘要,更新数据库信息,进入下面的流程继续处理;(4)前端展示页面更新。系统在线运行过程处于循环动态更新的状态。

目前,不间断的采集微博上可能为突发事件的数据,每日约入库存储两万多条,通过突发事件识别和提取处理后,得到约100条重大突发事件的新闻素材,在移动端和PC端界面中,实时为媒体记者提供包括交通事故、水灾事故、火灾事故、刑事案件、动物疫情事件等重大突发事件的新闻素材。

3 结语

本文介绍了基于深度学习算法的微博突发事件提取系统的设计和开发,分析突发事件识别和提取两个核心模块的功能,通过处理转化为文本分类问题,采用两种典型深度学习算法RNN和CNN完成了文本分类功能。突发事件提取核心模块与数据收集模块、数据存储模块、用户交互界面模块等系统中的其它子系统结合,完成了实时微博突發事件提取和展示的功能。通过不间断抓取微博平台数据和智能化处理,为合作单位的专业媒体记者提供了实时的突发事件类新闻素材。

参考文献

[1] Daniel Jurafsky, James H. Martin. Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition. (2nd Edition.) [M]. New Jersey: Prentice-Hall,2009.

[2] Tomas Mikolov, Kai Chen, Greg Corrado, Jeffrey Dean. Efficient Estimation of Word Representations in Vector Space [C]. ICLR Workshop,2013.

[3] Kim Yoon. Convolutional Neural Networks for Sentence Classification [C]. EMNLP. Doha, Qatar: Association for Computational Linguistics,2014:1746-1751.

[4] Xiang Zhang, Junbo Zhao, Yann leCun. Character-level Convolutional Networks for Text Classification [C]. In Advances in Neural Information Processing Systems,2015:649-657.

[5] Kai Sheng Tai, Richard Socher, and Christopher D Manning. Improved semantic representations from tree-structured long short-term memory networks. arXiv preprint arXiv:1503.00075,2015.

[6] Chris Olah. Understanding LSTM Networks [EB/OL]. Colah.github.io,2015.

[7] Jacob Devlin, Ming-Wei Chang, Kenton Lee, Kristina Toutanova. BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding[J].arXiv preprint arXiv:1810.04805,2018.

[8] Shen Li, Zhe Zhao, Renfen Hu, Wensi Li, Tao Liu, Xiaoyong Du, Analogical Reasoning on Chinese Morphological and Semantic Relations [C]. Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics. Melbourne, Australia: ACL,2018:138-143.

收藏此文 赞一个 ( ) 打赏本站

如果本文对您有所帮助请打赏本站

  • 打赏方法如下:
  • 支付宝打赏
    支付宝扫描打赏
    微信打赏
    微信扫描打赏
留言与评论(共有 0 条评论)
   
验证码:
二维码