NAM、RAS、MTLSum、BottleSUM…你都掌握了吗?一文总结文本摘要必备经典模型(二)

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,每月250计算时 3个月
模型训练 PAI-DLC,100CU*H 3个月
简介: NAM、RAS、MTLSum、BottleSUM…你都掌握了吗?一文总结文本摘要必备经典模型(二)

NAM、RAS、MTLSum、BottleSUM…你都掌握了吗?一文总结文本摘要必备经典模型(二)

机器之心 2022-10-16 11:59 发表于北京

以下文章来源于机器之心SOTA模型,作者机器之心SOTA模型

机器之心专栏

本专栏由机器之心SOTA!模型资源站出品,每周日于机器之心公众号持续更新。

 

本专栏将逐一盘点自然语言处理、计算机视觉等领域下的常见任务,并对在这些任务上取得过 SOTA 的经典模型逐一详解。前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及 API 等资源。


本文将分 2 期进行连载,共介绍 17 文本摘要任务上曾取得 SOTA 的经典模型。


  • 第 1 期:CopyNet、SummaRuNNer、SeqGAN、Latent Extractive、NEUSUM、BERTSUM、BRIO
  • 第 2 期:NAM、RAS、PGN、Re3Sum、MTLSum、KGSum、PEGASUS、FASum、RNN(ext) + ABS + RL + Rerank、BottleSUM


您正在阅读的是其中的第 2 期。前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及 API 等资源。

第1期回顾:CopyNet、SeqGAN、BERTSUM…你都掌握了吗?一文总结文本摘要必备经典模型(一)


本期收录模型速览


模型 SOTA!模型资源站收录情况 模型来源论文
NAM https://sota.jiqizhixin.com/models/models/2072950a-5014-41a7-8801-5b894e5bb4a5收录实现数量:1支持框架:Torch A Neural Attention Model for Abstractive Sentence Summarization
RAS https://sota.jiqizhixin.com/models/models/0544ead9-de12-46b0-8fcd-61737f9951af收录实现数量:1支持框架:Torch Abstractive Sentence Summarization with Attentive Recurrent Neural Networks
PGN https://sota.jiqizhixin.com/models/models/c317f698-b7f3-46d3-abc1-f93c5f5f2b90收录实现数量:3支持框架:PaddlePaddle、TensorFlow、PyTorch Get To The Point: Summarization with Pointer-Generator Networks
Re3Sum https://sota.jiqizhixin.com/models/models/13859f1c-16a3-4b81-81f8-f85d078d91f4 Retrieve, rerank and rewrite: Soft template based neural summarization
MTLSum https://sota.jiqizhixin.com/models/models/1ee02eca-5042-4709-8bd1-af02d20bd262 Soft Layer-Specific Multi-Task Summarization with Entailment and Question Generation
KGSum https://sota.jiqizhixin.com/models/models/686f5a34-89a0-46c2-8270-ab62674c4e3f Mind The Facts: Knowledge-Boosted Coherent Abstractive Text Summarization
PEGASUS https://sota.jiqizhixin.com/models/models/161a361b-4102-415e-8f87-d00b9df241fa收录实现数量:2支持框架:TensorFlow、PyTorch PEGASUS: Pre-training with Extracted Gap-sentences for Abstractive Summarization
FASum https://sota.jiqizhixin.com/models/models/f07ad4a0-8360-40e2-bcaa-2c820116150e收录实现数量:1 Enhancing Factual Consistency of Abstractive Summarization
RNN(ext) + ABS + RL + Rerank https://sota.jiqizhixin.com/models/models/bb9e36ba-3f90-43d2-a98c-d41e5adfe870收录实现数量:1支持框架:PyTorch Fast Abstractive Summarization with Reinforce-Selected Sentence Rewriting
BottleSUM https://sota.jiqizhixin.com/models/models/88b14617-ab92-4626-a2c8-81fd9aa0720d收录实现数量:1支持框架:PyTorch BottleSum: Unsupervised and Self-supervised Sentence Summarization using the Information Bottleneck Principle


文本摘要可以看做是一种信息压缩技术,具体是指利用技术从单个文本或多个文本(文本集合)中抽取、总结或提炼要点信息,以概括展示原始文本(集)中的主要信息。在互联网快速发展的现代社会,文本摘要的作用越来越重要,可以帮助人们从海量数据中快速发现所需要的信息。文本摘要成为了自然语言处理(NLP)领域的一项重要技术。


传统的文本摘要可以分为抽取式摘要和生成式摘要两种方法。抽取式摘要是通过抽取拼接源文本中的关键句子来生成摘要,优点是不会偏离原文的信息,缺点是有可能提取信息错误,或者出现信息冗余、信息缺失。生成式摘要则是系统根据文本表达的重要内容自行组织语言,对源文本进行概括,整个过程是一个端到端的过程,类似于翻译任务和对话任务,因此,生成式摘要方法可以吸收、借鉴翻译任务和对话任务的成功经验。与传统方法对应的,应用于文本摘要的神经网络模型也有抽取式模型、生成式模型以及压缩式模型三类。其中,抽取式模型主要是将问题建模为序列标注和句子排序两类任务,包括序列标注方法、句子排序方法、seq2seq三种;生成式模型则主要是以seq2seq、transformer为基础的引入各类辅助信息的生成式模型;压缩式模型主要是基于information bottleneck的模型,也可称为是抽取式和生成式混合的模型。



第一,抽取式模型的核心思想是:为原文中的每一个句子打一个二分类标签(0 或 1),0 代表该句不属于摘要,1 代表该句属于摘要,最终由所有标签为 1 的句子进行排序后生成摘要。这种方法的首要要求就是将自然语言转化为机器可以理解的语言,即对文本进行符号数字化处理,为了能表示多维特征,增强其泛化能力,可以引入向量的表征形式,即词向量、句向量。基于seq2seq的抽取式模型的文本摘要需要解决的问题是从原文本到摘要文本的映射问题。摘要相对于原文具有大量的信息损失,而且摘要长度并不会依赖于原文本的长度,所以,如何用简短精炼的文字概括描述一段长文本是seq2seq文本摘要需要解决的问题。


第二,生成式模型主要是依托自然语言理解技术,由模型根据原始文本的内容自己生成语言描述,而非提取原文中的句子。生成式模型的工作主要是基于seq2seq模型实现的,通过添加额外的attention机制来提高其效果。此外,还有一些模型以自编码为框架利用深度无监督模型去完成生成式摘要任务。再者,还可以引入GPT等预训练模型做fine-tune,改进摘要的生成效果。


第三,压缩式模型则是先通过某种方法将源文档做一个压缩,得到一个长度较为合适的文本。然后以压缩后的文本为目标,训练生成式模型最终得到目标模型。压缩式模型也可以看作是抽取式模型和生成式模型的结合。我们在这篇文章介绍文本摘要中必备的TOP模型,介绍是根据不同类型的模型分组进行的,同一类别的模型介绍则是按照模型提出的时间顺序来完成的。


一、生成式摘要模型


1.1 NAM


NAM是使用attention机制进行生成式文本摘要的第一篇文章,主要使用Attention+seq2seq构建摘要模型。不过模型直接生成摘要的效果并不太好,增加一些人工特征后,效果能大幅提升。NAM是一种完全由数据驱动的抽象化句子摘要方法,利用一个基于局部注意力的模型,根据输入的句子生成每个词的摘要。虽然该模型结构简单,但它可以很容易地进行端到端训练,并可扩展到大量的训练数据。

解码器部分:

NAM的解码器由标准的前馈神经网络语言模型(neural network language mode,NNLM)改编而成。神经网络语言模型参数化的核心实际上是得到摘要文本下一个词语的概率,输入文本与前文窗口经由编码器生成一个向量,该向量代表了输入文本与已生成文本。隐藏层由文本窗口乘以词向量与权重矩阵得到。下一个词的概率由文本窗口与输入文本共同决定,整个模型也体现了编码器与神经语言共同训练的核心。图1a给出了一个解码器结构的示意图。黑盒函数enc是一个上下文编码器术语,它返回一个大小为H的向量,代表输入和当前的上下文。刨除enc就是一个标准的语言模型,通过引入enc,并在训练中同时考虑这两个要素,就可以在生成阶段考虑文本本身。



图1. (a) 带有额外编码器的NNLM解码器的网络图。(b) 基于注意力的编码器enc3的网络图


编码器部分:

对于编码器的选择,词袋模型(bag-of-words)编码器不能反映出词与词之间的语义关系与顺序,卷积编码器(convolutional encoder)比较复杂,并且只能为整个输入句子产生一个单一的表征。NAM采用的有监督编码器结构简单,类似于词袋模型的模型,以下是编码器的全部模型:



生成部分:
最后,通过求解下式,生成摘要:



作者最终采用了集束搜索(beam-search)解码来求解上述的公式,下面是beam-search算法的详细步骤:




当前 SOTA!平台收录NAM共 1 个模型实现资源。


模型 SOTA!平台模型详情页
NAM
前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/models/models/2072950a-5014-41a7-8801-5b894e5bb4a5


1.2 RAS


RAS 和NAM是同一个研究小组的工作,因此与NAM的模型架构非常相似。两个模型都采用seq2seq+attention的结构,都是句子层面(sentence-level)的seq2seq,区别在于选择encoder和decoder的模型,NAM模型偏容易一些,而RAS用了RNN来做。

编码器
输入句子每个词最终的嵌入是各词的嵌入与各词位置的嵌入之和,经过一层卷积处理得到aggregate vector:



根据aggregate vector计算context(encoder的输出):



解码器
解码器的部分是一个RNNLM,这里的RNN Hidden Layer使用的是LSTM单元。解码器的输出由下式计算:



其中c(t)是encoder的输出,h(t)是RNN隐藏层,由下式计算:



这里隐藏层的单元有两种思路,一种是常规的Elman RNN,一种是LSTM。

生成
RAS的生成部分和NAM一样,也是用beam search生成摘要。


当前 SOTA!平台收录RAS共 1 个模型实现资源。


模型 SOTA!平台模型详情页
RAS
前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/models/models/0544ead9-de12-46b0-8fcd-61737f9951af


1.3 PGN


应用于文本摘要生成任务的seq2seq模型存在两个问题:容易忽略到文本中的细节;容易不断地重复自身。PGN(常被称为指针生成网络)以两种正交的方式增强了标准的seq2seq注意力模型。首先,使用一个混合的指针-生成器(pointer-generator)网络,它可以通过指针从源文本中复制单词,从而有助于准确地复制信息,同时保留通过生成器产生新单词的能力。其次,使用覆盖率来跟踪已概括的内容,阻止了重复现象。



图2. 经典的seq2seq注意力模型


图2为经典的seq2seq注意力模型结构。将文本w_i的token逐一输入编码器(单层双向LSTM),产生一串编码器的隐状态h_i。在每一步t,解码器(单层单向LSTM)接收前一个词的词嵌入(在训练时,这是参考摘要的前一个词;在测试时,这是解码器发出的前一个词),对应解码器状态s_t。



图3. PGN架构


PGN是图3中基线模型和指针式网络的混合体,它既可以通过指向复制单词,又可以从固定的词汇中生成单词。与基于 attention 的端到端系统相比,PGN具有以下优点:PGN让从源文本生成单词变得更加容易。这个网络仅需要将足够多的 attention 集中在相关的单词上,并且让PGN 足够的大;PGN可以复制原文本中的非正式单词,这样我们能够处理那些没出现过的单词,同时也允许我们使用更小规模的词汇集(需要较少的计算资源和存储空间);PGN能够被更快地训练,尤其是训练的前几个阶段。


此外,引入Coverage机制解决经典模型的重复性问题。在coverage model中,主要维持coverage vector,是之前所有解码器时间步长的注意力分配总和,也就是某个特定的源词的收敛就是到此刻它所受到 attention 的和:



其中,c^t 是对源文本单词的分布,它表示到目前为止这些词从注意力机制接收到的覆盖程度。c_0 是一个零向量,因为在第一个时间步长中,没有覆盖任何源文本。此时,注意力机制为:



其中,w_c是一个与v相同长度的可学习参数向量。这确保了注意力机制的当前决策(选择下一个关注点)是由其以前的决策(总结为c_t)提醒的。


当前 SOTA!平台收录 PGN 共 3 个模型实现资源。


模型 SOTA!平台模型详情页
PGN
前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/models/models/c317f698-b7f3-46d3-abc1-f93c5f5f2b90



相关文章
|
语音技术 Python
在语音信号处理中,预加重
在语音信号处理中,预加重
761 2
|
机器学习/深度学习 JSON 自然语言处理
bert中文文本摘要代码(2)
bert中文文本摘要代码(2)
578 0
|
Oracle 关系型数据库 数据库
人大金仓数据库使用uuid
人大金仓数据库使用uuid
人大金仓数据库使用uuid
|
存储 算法
Leetcode第三题(无重复字符的最长子串)
这篇文章介绍了解决LeetCode第三题“无重复字符的最长子串”的算法,使用滑动窗口技术来找出给定字符串中最长的不含重复字符的子串,并提供了详细的代码实现和解释。
602 0
Leetcode第三题(无重复字符的最长子串)
|
机器学习/深度学习 人工智能 自然语言处理
谷歌AI Gemini 官方网站是什么?国内如何使用Gemini 1.5 pro
Gemini是Google开发的先进大型语言模型(LLM),旨在处理多种自然语言处理任务,如文本生成、翻译、摘要和对话生成。作为Google AI项目的一部分,Gemini结合了最新的研究成果和技术,显著提高了自然语言处理的准确性和效率。该模型经过大量文本数据的训练,使其能够理解和生成高质量的文本。
|
9月前
|
机器学习/深度学习 编解码 数据可视化
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR ConvNeXt V2 (附网络详解和完整配置步骤)
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR ConvNeXt V2 (附网络详解和完整配置步骤)
645 11
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR ConvNeXt V2 (附网络详解和完整配置步骤)
|
Linux 测试技术 网络安全
【好玩的开源项目】Linux系统之部署吃豆人经典小游戏
【7月更文挑战第18天】Linux系统之部署吃豆人经典小游戏
278 3
|
11月前
|
人工智能 自然语言处理 数据挖掘
田渊栋团队新作祭出Agent-as-a-Judge!AI智能体自我审判,成本暴跌97%
田渊栋团队提出Agent-as-a-Judge框架,利用智能体自身评估其他智能体的性能,不仅关注最终结果,还能提供中间反馈,更全面准确地反映智能体的真实能力。该框架在DevAI基准测试中表现出色,成本效益显著,为智能体的自我改进提供了有力支持。
324 7
|
存储 人工智能 算法
卷起来!让智能体评估智能体,Meta发布Agent-as-a-Judge
Meta(原Facebook)提出了一种名为Agent-as-a-Judge的框架,用于评估智能体的性能。该框架包含八个模块,通过构建项目结构图、定位相关文件、读取多格式数据、搜索和检索信息、询问要求满足情况、存储历史判断、以及规划下一步行动,有效提升了评估的准确性和稳定性。实验结果显示,Agent-as-a-Judge在处理复杂任务依赖关系方面优于大型语言模型,但在资源消耗和潜在偏见方面仍面临挑战。
474 1
|
运维 监控 物联网
物联网卡:物联网卡网络不稳定的解决办法
物联网卡(IoT SIM卡)网络不稳定的问题可能由多种因素引起,包括网络覆盖、SIM卡状态、设备配置、服务提供商的网络问题以及数据使用量限制等。以下是一些解决物联网卡网络不稳定的操作建议:

热门文章

最新文章