丽玉网
您所在的位置:首页 > 大数据 > 当深度学习遇见自动文本摘要

当深度学习遇见自动文本摘要

http://yfengchundi.cn |2020-06-30 12:41:28

介绍

随着近几年文本信息的爆发式增长,人们每天能接触到海量的文本信息,如新闻、博客、聊天、报告、论文、微博等。从大量文本信息中提取重要的内容,已成为我们的一个迫切需求,而自动文本摘要(automatic text summarization)则提供了一个高效的解决方案。

根据Radev的定义[3],摘要是“一段从一份或多份文本中提取出来的文字,它包含了原文本中的重要信息,其长度不超过或远少于原文本的一半”。自动文本摘要旨在通过机器自动输出简洁、流畅、保留关键信息的摘要。

自动文本摘要有非常多的应用场景,如自动报告生成、新闻标题生成、搜索结果预览等。此外,自动文本摘要也可以为下游任务提供支持。

尽管对自动文本摘要有庞大的需求,这个领域的发展却比较缓慢。对计算机而言,生成摘要是一件很有挑战性的任务。从一份或多份文本生成一份合格摘要,要求计算机在阅读原文本后理解其内容,并根据轻重缓急对内容进行取舍,裁剪和拼接内容,最后生成流畅的短文本。因此,自动文本摘要需要依靠自然语言处理/理解的相关理论,是近几年来的重要研究方向之一。

自动文本摘要通常可分为两类,分别是抽取式(extractive)和生成式(abstractive)。抽取式摘要判断原文本中重要的句子,抽取这些句子成为一篇摘要。而生成式方法则应用先进的自然语言处理的算法,通过转述、同义替换、句子缩写等技术,生成更凝练简洁的摘要。比起抽取式,生成式更接近人进行摘要的过程。历史上,抽取式的效果通常优于生成式。伴随深度神经网络的兴起和研究,基于神经网络的生成式文本摘要得到快速发展,并取得了不错的成绩。

本文主要介绍基于深度神经网络的生成式自动文本摘要,着重讨论典型的摘要模型,并介绍如何评价自动生成的摘要。对抽取式和不基于深度神经网络的生成式自动文本摘要感兴趣的同学可以参考[1][2]。

生成式文本摘要

生成式文本摘要以一种更接近于人的方式生成摘要,这就要求生成式模型有更强的表征、理解、生成文本的能力。传统方法很难实现这些能力,而近几年来快速发展的深度神经网络因其强大的表征(representation)能力,提供了更多的可能性,在图像分类、机器翻译等领域不断推进机器智能的极限。借助深度神经网络,生成式自动文本摘要也有了令人瞩目的发展,不少生成式神经网络模型(neural-network-based abstractive summarization model)在DUC-2004测试集上已经超越了最好的抽取式模型[4]。这部分文章主要介绍生成式神经网络模型的基本结构及最新成果。

基本模型结构

生成式神经网络模型的基本结构主要由编码器(encoder)和解码器(decoder)组成,编码和解码都由神经网络实现。

编码器负责将输入的原文本编码成一个向量(context),该向量是原文本的一个表征,包含了文本背景。而解码器负责从这个向量提取重要信息、加工剪辑,生成文本摘要。这套架构被称作Sequence-to-Sequence(以下简称Seq2Seq),被广泛应用于存在输入序列和输出序列的场景,比如机器翻译(一种语言序列到另一种语言序列)、image captioning(图片像素序列到语言序列)、对话机器人(如问题到回答)等。

Seq2Seq架构中的编码器和解码器通常由递归神经网络(RNN)或卷积神经网络(CNN)实现。

基于递归神经网络的模型

RNN被称为递归神经网络,是因为它的输出不仅依赖于输入,还依赖上一时刻输出。

如上图所示,t时刻的输出h不仅依赖t时刻的输入x,还依赖t-1时刻的输出,而t-1的输出又依赖t-1的输入和t-2输出,如此递归,时序上的依赖使RNN在理论上能在某时刻输出时,考虑到所有过去时刻的输入信息,特别适合时序数据,如文本、语音、金融数据等。因此,基于RNN实现Seq2Seq架构处理文本任务是一个自然的想法。

典型的基于RNN的Seq2Seq架构如下图所示:

图中展示的是一个用于自动回复邮件的模型,它的编码器和解码器分别由四层RNN的变种LSTM[5]组成。图中的向量thought vector编码了输入文本信息(Are you free tomorrow?),解码器获得这个向量依次解码生成目标文本(Yes, what's up?)。上述模型也可以自然地用于自动文本摘要任务,这时的输入为原文本(如新闻),输出为摘要(如新闻标题)。

目前最好的基于RNN的Seq2Seq生成式文本摘要模型之一来自Salesforce,在基本的模型架构上,使用了注意力机制(attention mechanism)和强化学习(reinforcement learning)。这个模型将在下文中详细介绍。

基于卷积神经网络的模型

Seq2Seq同样也可以通过CNN实现。不同于递归神经网络可以直观地应用到时序数据,CNN最初只被用于图像任务[6]。

CNN通过卷积核(上图的A和B)从图像中提取特征(features),间隔地对特征作用max pooling,得到不同阶层的、由简单到复杂的特征,如线、面、复杂图形模式等,如下图所示。

CNN的优势是能提取出hierarchical的特征,并且能并行高效地进行卷积操作,那么是否能将CNN应用到文本任务中呢?原生的字符串文本并不能提供这种可能性,然而,一旦将文本表现成分布式向量(distributed representation/word embedding)[7],我们就可以用一个实数矩阵/向量表示一句话/一个词。这样的分布式向量使我们能够在文本任务中应用CNN。

如上图所示,原文本(wait for the video and do n't rent it)由一个实数矩阵表示,这个矩阵可以类比成一张图像的像素矩阵,CNN可以像“阅读”图像一样“阅读”文本,学习并提取特征。虽然CNN提取的文本特征并不像图像特征有显然的可解释性并能够被可视化,CNN抽取的文本特征可以类比自然语言处理中的分析树(syntactic parsing tree),代表一句话的语法层级结构。

基于卷积神经网络的自动文本摘要模型中最具代表性的是由Facebook提出的ConvS2S模型[9],它的编码器和解码器都由CNN实现,同时也加入了注意力机制,下文将详细介绍。

当然,我们不仅可以用同一种神经网络实现编码器和解码器,也可以用不同的网络,如编码器基于CNN,解码器基于RNN。
YY6080电影网 https://www.6080vr.com

图片
  • 云应用与家庭安防发展趋势
  • QuestMobile:2017年Q2移动互联网报告解读
  • 中科院:昨晚“UFO”是航迹夜光云