文章主题:自然语言处理, 文本摘要, 神经摘要, 机器学习模型

666AI工具大全,助力做AI时代先行者!

论文是一件「痛并快乐着」的事情。快乐的是可以将自己的研究公之于众,痛苦的是有大段大段的文本内容需要完成。特别是摘要、引言、结论,需要不断重复说明论文的主要研究、观点和贡献。现在,这样的工作可以依赖 AI 完成了。Element AI 的研究者们提出了一种新的模型,使用 Transformer 架构,自动地生成论文的摘要。AI 攒论文的进程又往前走了一步。

选自arXiv,作者:Sandeep Subramanian等,机器之心编译,参与:Panda。

神经摘要:从长文本中生成抽象摘要的新方法

在开始正文前,请读者们先读下面一段摘要:

神经摘要:从长文本中生成抽象摘要的新方法

我们提出了一种创新性的方法,能够利用神经摘要技术为超过上千词的长文本生成抽象摘要。在生成摘要之前,我们先进行了一个简易的抽取步骤,以便更好地调整 transformer 语言模型,从而提高摘要的质量。实验结果表明,这种抽取步骤可以显著增强摘要的效果。此外,我们的方法不仅生成了比先前使用复制机制方法更为抽象的摘要,而且还能获得更高的 ROUGE 分数。这充分证明了我们的方法在处理长文本摘要任务中的优越性。

阅读体验如何?实际上,你所看到的所有摘要内容并非出自人类之手,而是由论文中的机器学习模型所创作。这是Element AI研究人员最近公开的一项研究成果,他们采用了一种类似于GPT的方法来生成相关研究的摘要。

在自然语言处理(NLP)领域中,文本摘要是一项常见的任务。如果能够妥善地完成文档摘要的任务,那么这将极大地降低文字工作者的负担,从而迅速提炼出文本的核心内容,提高文本信息的提取、阅读以及生产效率。事实上,如果能够将相关的算法应用到论文写作中,那么摘要、引言、相关工作以及结论等部分都有可能得到简化。

现有的一些文本摘要算法尚不够成熟,能够在实际生产中得到广泛应用的更是少之又少。这主要是因为这些算法在面对具有逻辑结构的长文本时,往往无法进行有效的抽取和摘要。尽管在一些新闻平台上,短文本摘要算法已经得到了一定的应用,但对于长文本来说,这种算法却显得力不从心。因此,开发一种能够有效应对长文本并进行逻辑结构提取的文本摘要算法,对于当前的自然语言处理技术发展具有重要意义。

现在,这篇介绍论文摘要抽取生成的论文,也许会给这个 NLP 中的经典任务带来新的解决思路。

论文地址:https://arxiv.org/abs/1909.03186

Transformer 怎样生成论文摘要

语言模型的训练目标在于利用某大型文本语料库,对任意词或字符序列的概率进行估计。在各种不同语言任务中,该技术已经展现出了卓越的性能。近年来,Radford团队提出的GPT-2进一步证明了,只要采用较大的上下文窗口并在大规模数据集上进行训练,所获得的语言模型就能有效地捕捉到文本中的长距离依赖关系。

若要为长篇文档构建连贯且高品质的摘要,这类GPT架构具备众多关键特性。研究结果显示,这种无条件语言模型能够隐式地掌握执行摘要概括或机器翻译的能力,这是通过在大量数据上进行训练而获得的成果。当按照顺序将数据划分为文档的不同部分(如引言、正文和摘要)时,便可以让模型学习如何生成特定部分。例如,在测试过程中提供类似格式的数据,可以使模型掌握摘要任务的解决方法,也就是基于文档的引言以及随后更长的正文来生成一个摘要。

具体而言,论文的研究者使用了单个类 GPT 的 transformer 语言模型,并在文档及其摘要上进行训练。在推理阶段,语言会基于输入文档执行生成任务(见图 1)。研究者将这个任务划分为了两个步骤:抽取和摘要。为了处理超过几千词的超长文档,首先先使用两个不同的分层式文档模型执行句子抽取;其中一个模型基于指针网络(pointer network),这类似于 Chen and Bansal 2018 提出的方法一种变体;另一个模型则基于句子分类器。这个抽取步骤能够抽取出文档中的重要句子,然后这些句子可用于更好地在相关信息上调节 transformer 语言模型,然后该模型可以执行摘要生成任务。

模型框架是什么样的

他们提出的整体模型包含两个不同且可独立训练的组件。一是分层式文档表征模型,它可以指向或分类文档中的句子,从而得到一个抽取式的摘要。二是 transformer 语言模型,它可基于抽取出的句子以及文档的一部分或整体来生成摘要。

神经摘要:从长文本中生成抽象摘要的新方法
图 1:用提出的模型来为科研论文生成摘要

抽取模型

这是一种分层式文档表征模型,它可以指向或分类文档中的句子,从而得到一个抽取式的摘要。

1. 分层式序列到序列句子指针

这个抽取模型类似于 Chen and Bansal 在 2018 年开发的句子指针架构,主要的差异是编码器的选择。这里的模型使用的是分层式双向 LSTM 编码器,且使用了词级和句子级的 LSTM;而 Chen and Bansal 使用的是卷积式词级编码器,可以实现更快的训练和推理。但这两者使用的解码器是一样的,都是 LSTM。

因此,这个抽取器采用了编码器-解码器架构。其中编码器采用了分层结构,结合了 token 级与句子级的 RNN。首先,这个「句子编码器」或 token 级 RNN 是一个双向 LSTM,用于编码每个句子。两个方向的最后一层的最后隐藏状态产生句子嵌入。句子级 LSTM 或「文档编码器」则是另一个双向 LSTM,可将这个句子嵌入的序列编码成文档表征。

解码器则是一个自回归 LSTM,它的输入是之前抽取出的句子的句子级 LSTM 隐藏状态。基于这个输入,它可以预测下一个要抽取的句子。这个解码器的输出是根据该解码器在文档表征上的隐藏状态,使用一种注意机制计算出来的。这里使用了来自 (Luong, Pham, and Manning 2015) 的点积注意方法。根据 (Luong, Pham, and Manning 2015) 的输入馈送方法,这种注意感知型隐藏状态会在下一个时间步骤连接到输入。

将注意权重用作在文档句子上的输出概率分布,并据此选择下一个要抽取的句子。这里研究者采用了一种惯例来指示抽取结束,即相同的索引连续出现两次。这个模型的训练目标是最小化每个解码器时间步骤选取正确的句子的交叉熵。

2. 句子分类器

类似于指针网络,研究者使用了一个分层式 LSTM 来编码文档以及得到句子表征的序列。这个模型的训练目标是最小化与黄金标准抽取摘要的句子的二元交叉熵损失。

3. 模型细节

这个模型使用了大小为 300 的词嵌入。token 级 LSTM(句子编码器)、句子级 LSTM)文档编码器)和解码器各自都有 2 个包含 512 个单元的层,并且在每个中间层的输出处都应用了 0.5 的 dropout。训练使用了 Adam,学习率为 0.001,权重衰减为 10^-5,批大小为 32。研究者每 200 次更新对模型进行一次评估,patience 值为 50。在推理阶段,使用波束搜索进行解码,指针模型的波束大小为 4,并从句子分类器选取 k 个最有可能的句子,其中 k 是训练数据集中摘要的平均句数。

transformer 语言模型(TLM)

这里仅使用了单个从头开始训练的 transformer 语言模型,并使用了「适当」格式化的数据。

这个 transformer 语言模型有 2.2 亿个参数,具有 20 层,768 维嵌入,3072 维位置 MLP 和 12 个注意头。这与 Vaswani et al. 2017 的 transformer 语言模型一样,唯一的不同之处是这里不会在初始化时扩展权重。这个语言模型的训练在单个英伟达 DGX-2 的 16 个 V100 GPU 上用去了 5 天时间。对于前 40 000 次更新,研究者使用了一个线性上升的学习率计划,直到最大学习率 2.5×e^−4;之后的 200 000 个步骤则使用 Adam 优化器按余弦退火计划降至 0。训练采用了混合精度,批大小为 256 个序列,每个序列 1024 个 token。

有时候我们要处理非常长的文档,这些文档可能没法放入 transformer 语言模型的单个 token 窗口中,比如一篇科研论文。为此,研究者使用了引言作为代理,因为其中包含足够用于生成摘要或总结的信息;论文的其余部分则像领域语言模型训练数据那样使用。

为了实现科研论文的摘要,研究者将 arXiv 和 PubMed 数据集组织成了以下形式:1)论文引言;2)句子指针模型抽取出的句子;3)摘要;4)论文其余内容。在其它数据集上,论文引言会是整个文档,不会有论文的其它部分。

研究者使用了一个特殊 token 来标示摘要的起点,并在测试时间将其用于指示模型开始执行生成摘要的任务。文章的其余部分也会提供给该语言模型,以用作补充的域内训练数据。整个数据集被分割为了互不重叠的样本,每个样本 1024 个 token。研究者在推理时使用了「前 k 个(topk)」采样方法,其中 k=30,softmax 温度为 0.7。

结果与分析

数据集

研究者实验了四个不同的大规模长文本摘要数据集:arXiv、PubMed(Cohan et al. 2018)、 bigPatent(Sharma, Li, and Wang 2019)、Newsroom(Grusky, Naaman, and Artzi 2018)。表 1 给出了这些数据集的统计情况。

神经摘要:从长文本中生成抽象摘要的新方法
表 1:本研究中所使用的数据集的统计情况。各列依次为:数据集名称、文档-摘要对数量、文档词数与摘要词数的比、摘要的词数、文档的词数

数据预处理

抽取模型与摘要模型使用的子词单元都是通过字节对编码(byte pair encoding)(Sennrich, Haddow, and Birch 2015)计算得到的,使用了 40 000 个 replacement。为了解决句子指针网络的内存问题,每篇文章仅保留 300 个句子,每个句子保留 35 个 token。

评估

研究者使用的评估指标是全长度 F-1 ROUGE 分数(Lin 2004),为此研究中复用了(Co- han et al. 2018)的代码。本研究报告的所有 ROUGE 数值都有 95% 的置信区间,偏差最多为 0.24。

结果

神经摘要:从长文本中生成抽象摘要的新方法

表 2:在 arXiv 数据集上的摘要结果。之前的研究结果(Previous Work)来自(Cohan et al. 2018)。下面几行是简单的基线前 10 名抽取器以及指针和分类器模型。新提出的 transformer 语言模型要么只基于引言(I),要么还有抽取的句子(E),这些抽取的句子来自基本真值(G)或模型(M)抽取。

神经摘要:从长文本中生成抽象摘要的新方法

表 3:定性结果——NewsRoom 数据集的新闻文章以及新提出的模型生成的摘要

神经摘要:从长文本中生成抽象摘要的新方法

AI时代,拥有个人微信机器人AI助手!AI时代不落人后!

免费ChatGPT问答,办公、写作、生活好得力助手!

搜索微信号AIGC666aigc999或上边扫码,即可拥有个人AI助手!