文章目录

  • 背景
    • 摘要
  • 介绍
  • 模型
    • 预训练目标GSG
    • 预训练语料和下游任务
  • 实验结果
    • 消融研究
    • Larger模型效果
    • 处理低资源数据集
    • 人工评测
  • 总结:

Google发布天马-地表最强文本摘要生成模型,打败人类,我只要1000个样本)

背景

机构:Google Research
作者:Jingqing Zhang, Yao Zhao, Mohammad Saleh, Peter J. Liu
论文地址:https://arxiv.org/abs/1912.08777
收录会议:ICML 2020
论文代码:https://github.com/google-research/pegasus

摘要

近些年 Transformers 在海量语料上进行自监督预训练再到下游各种NLP任务(当然也包括文本摘要)上微调的方案已取得巨大成功。但是,尚未有针抽象文本摘要(abstractive text summarization)定制预训练目标。此外,目前抽象文本摘要任务也缺乏跨领域的系统评价。为此,本文提出了一种新的自监督预训练目标:GSG(Gap Sentences Generation),以适配Transformer-based的encoder-decoder模型在海量文本语料上预训练。在 PEGASUS 中, 将输入文档中的“重要句子”删除或者遮蔽,再利用剩余的句子在输出中生成这些被删除或遮蔽的句子。从输入和输出看,该目标与文本摘要类似。本文以12个文本摘要数据集(包括新闻、科学、故事、使用说明、电子邮件、专利和立法议案)对最好的PEGASUS模型进行全面测试。实验结果是:PEGASUS刷新12个数据集的ROUGE得分记录。另外,PEGASUS模型在处理低资源摘要数据集也显示出惊人的性能,在6个数据集上仅以1000个样本就超过了之前的最先进结果。最后,本文还对PEGASUS模型生成的摘要结果进行人工评测,结果表明本文的模型在多个数据集上达到与人工摘要相媲美的性能。

介绍

抽象文本摘要是一项极具挑战的自然语言处理任务,因为这要求理解长篇文章、压缩资讯以及生成语言。目前主流的解决方案是用seq2seq,让神经网路学习把输入序列映射到输出序列。这些seq2seq模型最初是使用RNN,但因为基于Transformer encoder-decoder的各种模型在处理长序列中的依赖关系表现更好,所以逐渐更受青睐。

各种Transformer模型与自监督预训练技术(如BERT、GPT-2、 RoBERTa、XLNet、ALBERT、T5、ELECTRA)相结合,已被证明是学习生成通用语言的强大框架。之前的工作中,预训练使用的自监督目标对下游应用有一定程度的不可知性,即不考虑下游任务,如此有利于模型通用性的学习。本文认为如果预训练的自监督目标更接近最终的任务,那么最终的下游任务能取得更好的结果。

实验证明,将输入文档中部分句子遮蔽掉,用剩余的句子生成被遮蔽掉句子的这种预训练目标很适用于文本摘要任务。这种预训练目标确实适合于抽象摘要,因为它非常类似于下游任务,从而促进模型对整个文档的理解和类似摘要的生成。需要指出的是,选择重要句子比随机选择或者选择前几个句子的结果性能都要好。

在C4语料上预训练出的最好PEGASUS模型,参数只有568M,但在12个评测数据集上评测能够比肩此前最优结果,甚至超越它们刷新纪录。另外,本文为进一步提升最先进结果,引入了一个新收集的文本语料库,该语料库由新闻类文章组成包括XSum和CNN/DailyMail摘要数据集,统称为HugeNews。此外,将本文的模型应用了低资源文本摘要任务上时,实验结果表明本文的模型能够非常快速适用于少量监督对的微调,并仅以1000个样本即在6个数据集中斩获桂冠。最后,还将文本模型的结果与人工摘要结果做对比,结果表明本文的模型可以达到与人工摘要相媲美的效果。

总结下本文的贡献:

(1)提出了一个新的自监督的预训练目标(GSG)用于抽象摘要任务,并研究相应的句子选择策略。
(2)用多个领域的摘要任务数据集对GSG进行广泛评测,并仔细地选择最佳的模型设置,训练一个参数量仅为568M的PEGASUS模型。该模型在全部的12个下游数据集上能够超过或与当前最先进水平持平。
(3)对于低资源任务数据集,通过微调PEGASUS模型,可以在广泛的领域实现良好的抽象摘要效果。在多个任务上,仅需1000个样本就超过了以前的最先进的结果。
(4)对模型结果进行人工评估,结果表明在XSum, CNN/DailyMail和Reddit TIFU上的摘要效果与人工摘要比肩。

模型

预训练目标GSG

本文假设预训练自监督的目标越接近最终的任务则结果性能越好。在PEGASUS预训练中,将文件里的几个完整句子删除,而模型的目标就是要恢复这些句子,换句话说,用来预训练的输入是有缺失部分句子的文档,而输出则是缺失句子的串连。这是一项难以置信的艰巨任务,甚至对人人类来说也是不可能的,我们并不期望模型能完美地解决它。然而,这样一个具有挑战性的任务促使模型学习到关于语言的知识和这个世界的一般事实,以及如何从整个文档中提取信息,以便生成类似于微调摘要任务的输出。这种自监督的优点是,可以创建与文档一样多的示例,而不需要任何人工注释,而这通常是纯监督系统的阿喀琉斯之踵。
Figure 1 展示了GSG和MLM如何同时作用到一个样本。在实验中发现,MLM任务在大的预训练Steps中并不能提升下游任务,所以在最终的PEGASUS_{LARGE}版中舍弃了MLM任务。
Figure 1:PEGASUS是一个标准的Transformer,既有encoder也有decoder。预训练目标包括GSG和MLM。原始的3个句子,其中一个句子整句被[MASK1]遮蔽,即作为目标生成文本;另外两个句子用[MASK2]随机遮蔽部分token后作为输入。

实验发现,选择重要的句子来遮蔽效果最好,让自监督示例的输出结果更像摘要。那么怎么选择重要的句子?根据ROUGE度量标准,通过查找那些与文档的其他部分最相似的句子,自动地识别出这些句子。ROUGE计算两个文本的n-gram重叠,从而得到文本之间的相似性(ROUGE-1、ROUGE-2和ROUGE-L是三种常见的变体)。句子选择策略如Figure 2 所示:
Figure 2:以C4语料为例,绿色、红色、蓝色句子分别对应随机选择、选取前几个和Ind-Ori句子选择策略。

Ind表示独立计算每个句子得分再选择top个句子(其对立面是Seq,通过贪婪地最大化所选句子之间的ROUGE1-F1),Orig表示采用原始的n-grams(其对立面是Uniq,句子中的n-grams去重)。所以,组合方案有4种。

预训练语料和下游任务

与T5类似,本文预训练所用的海量语料也是通过网络爬取。接着在12个抽象摘要数据集上微调PEGASUS,以ROUGE得分来看取得当下最好结果,但参数量只有T5的5%。参与评测的12个数据集是多样的的,包括新闻文章、科学论文、专利、短篇小说、电子邮件、法律文件和使用指南,这表明模型框架适用于广泛的主题,具有一定通用性。

预训练的语料具体如下:
(1)C4,这是T5中引入的语料
(2)HugeNews,这是本文新引入的

下游任务具体如下:
(1)XSum(2)CNN/DailyMail(3)NEWSROOM(4)Multi-News(5)Gigaword(6)arXiv(7)PubMed(8)BIGPATENT(9)WikiHow(10)Reddit TIFU(11)AESLC(12)BillSum

实验结果

PEGASUS_{base}版:
参数量为223M,L=12,H=768,F=3072,A=12,batch size=256。
PEGASUS_{large}版:
参数量为568M,L=16,H=1024,F=4096,A=16,batch size=8192。

消融研究

模型的消融研究基于PEGASUS_{BASE},研究对象:预训练语料、预训练目标、词典尺寸。

预训练语料的影响如Figure 3所示:

Figure 3:预训练语料的影响。PEGASUS的base版是基于C4和HugeNews预训练的。

从上图可以看出在两个新闻相关的下游任务上用HugeNews预训练效果更好,而另两个非新闻类的任务WikiHow和Reddit TIFU则用C4预训练效果更好。这表明,当预训练的语料和下游任务更相关时,预训练的模型可以更有效地迁移到下游任务。

预训练目标的影响如Figure 4所示:

Figure 4a可以看出Ind-Orig的方案最佳,Seq-Uniq次之。Figure 4a展示了gap-sentences比例(GSR)的影响。实验表明GSR低于50%较好,在CNN/DailyMail数据集上15%的比例可以得到最优结果。而XSum/Reddit TIFU和WikiHow的最佳值分别是30%和45%。

Figure 5展示了词典大小的影响:

在新闻类数据集中Unigram和BPE效果相差不大,而在非新闻数据集中Unigram则优于BPE,特别是在WikiHow数据集上。在XSum和CNN/DailyMail上,Unigram 96kROUGE得分最高。在WikiHow和Reddit TIFU数据集上对应的最佳选择分别是Unigram 128k和64k。

Larger模型效果

基于之前的实验,在Large版的模型中选用的是GSG(Ind-Orig)预训练目标(不带有MLM)、Unigram词典大小96k。

Table 1和 Table 2展示了PEGASUS_{BASE}和PEGASUS_{LARGE}在下游任务上的表现。PEGASUS_{BASE}在多项任务上超过当前最优结果,PEGASUS_{LARGE}则在全部下游任务超越当下最优结果。

处理低资源数据集

经过大型语料预训练的PEGASUS模型,该模型不需要大量的样本进行微调,就可以获得接近最先进的性能。Figure 6展示了PEGASUS模型在8个数据集下使用不同样本数进行微调的结果。

Large版只要用100个样本进行微调就可以得到与Base版在20k到200k样本上进行监督训练相近的结果。Large版在其中的6个任务上以1000个微调样本量就超越了之前的最优结果。在只有1000个微调样本的情况下,在大多数任务中都比使用完整监督数据的强基线(Transformer编码器-解码器)执行得更好,在某些情况下,强基线(Transformer编码器-解码器)使用的是多个数量级的样本。这种“样本效率”极大地提高了文本摘要模型的有用性,因为它显著地降低了监督数据收集的规模和成本,而在摘要的情况下,监督数据收集的成本是非常昂贵的。

人工评测

虽然使用像ROUGE这样的自动度量标准在模型开发过程中作为度量标准有用,但是该标准提供的信息有限,比如无法获悉文本摘要的流畅性或者与人类性能相比较结果如何。为此,本文还进行了一次人工评估,要求评分者将文本的模型摘要结果与人工摘要进行比较(不知道哪个是哪个)。这与图灵测试有一些相似之处。

使用3个不同的数据集进行了实验,发现人工评分者并不总是喜欢人工摘要,有时候也会更倾向于本文模型的摘要。特别是,在XSum和CNN/Dailymail数据集被大量研究的情况下,该模型仅使用1000个示例就达到了与人工摘要相媲美的结果。这表明,使用大量的监督样本不再是文本摘要所必须的了。

总结:

本文提出了PEGASUS,一种基于间隙句子(gap-sentences)生成的序列-序列模型,它是为抽象文本摘要定制的预训练目标。研究了几种gap-sentence的选择方法,确定了主句的选择是最优策略。同时证明了预训练语料库、gap-sentences比率、词汇量所带来的影响,并设置了最佳配置以在所有12个不同下游数据集上获得最先进的结果。本文还表明,PEGASUS模型能够非常快速地适应新的摘要数据集,仅需1000个样本就可以获得较好的结果。最后在多个数据集上评测本文的模型摘要与人工摘要,证明本文模型在多个数据集上可以取得与人类媲美的结果。

ICML 2020论文笔记:地表最强文本摘要生成模型PEGASUS(天马)相关推荐

  1. TensorFlow 自动文本摘要生成模型,2016

    TensorFlow 自动文本摘要生成模型 textsum: Text summarization with TensorFlow | Google Research Blog (文/ 谷歌大脑软件工 ...

  2. 清北超越剑桥,谷歌全球霸榜,百度领衔中国公司,ICML 2020论文数排名公布

    萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI AI领域,谁能跻身前列? 就在刚刚,ICML 2020论文数排名统计出炉. 今年ICML论文接收率为21.8%,相较于去年基本持平. 而在今 ...

  3. ICML 2020论文贡献榜排名出炉:Google单挑斯坦福、MIT、伯克利;清华进TOP 20

    来源:新智元 本文约2800字,建议阅读6分钟. ICML 2020论文贡献榜排名出炉,斯坦福则获高校第一.国内高校.企业上榜. [ 导读 ] ICML 2020论文贡献榜排名出炉,Google在众多 ...

  4. 3D版DALL-E来了!谷歌发布文本3D生成模型DreamFusion,给一个文本提示就能生成3D模型!...

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 点击进入-> CV 微信技术交流群 转载自:新智元 | 编辑:LRS [导读]给一个文本提示就能生成3 ...

  5. 如何用pytorch做文本摘要生成任务(加载数据集、T5 模型参数、微调、保存和测试模型,以及ROUGE分数计算)

    摘要:如何使用 Pytorch(或Pytorchlightning) 和 huggingface Transformers 做文本摘要生成任务,包括数据集的加载.模型的加载.模型的微调.模型的验证.模 ...

  6. BUAA(2021春)大作业—— 文本摘要生成(数组字典树+快排=0.087s)

    BUAA数据结构大作业-- 文本摘要生成 看前须知 题目内容 问题描述 输入形式 输出形式 样例 样例说明 题解 思考和详解 参考代码 看前须知 要点介绍和简要声明. 题目内容 问题描述 在自然语言文 ...

  7. BUAA_2020级(信息大类)数据结构综合作业编程题_文本摘要生成_哈希表

    题面 在自然语言文本处理中,有一种分析文本.自动抽取文本主题思想的方法(通常用于文本摘要生成),其方法如下: 首先分析文本中非停用词的出现频度: 统计文本中每个句子中非停用词频度之和.若某个非停用词在 ...

  8. BUAA-2021春-数据结构-综合作业-文本摘要生成(Hash实现 + SIMD优化 终测最速)

    题目内容 问题描述 在自然语言文本处理中,有一种分析文本.自动抽取文本主题思想的方法(通常用于文本摘要生成),其方法如下: 1.        首先分析文本中非停用词(stop-word)的出现频度: ...

  9. BUAA 数据结构总结——大作业(文本摘要生成)

    << 其他专栏文章 文章目录 综合作业 1. 文本摘要生成(综合) 算法 「代码」 综合作业 1. 文本摘要生成(综合) [问题描述] 在自然语言文本处理中,有一种分析文本.自动抽取文本主 ...

  10. 文本摘要生成评价指标——rouge

    文本摘要生成评价指标--rouge rouge的作用: rouge的内容: rouge的类别: rouge的使用: rouge-N的理解: Rouge-L的理解 rouge的作用: -Rouge的全名 ...

最新文章

  1. 成为算法工程师的路上,掌握什么思维会让自我提升突飞猛进?
  2. 类和对象—对象特性—深拷贝与浅拷贝
  3. 卷积神经网络——池化层学习——最大池化
  4. Android Wifi简单的梳理【转】
  5. 并发编程的 15 条建议(译)
  6. 解决谷歌浏览器重复上传同一文件失败的问题
  7. 【个人笔记】OpenCV4 C++ 图像处理与视频分析 07课
  8. AMS1117-5.0-ASEMI低压差线性稳压IC详细解析
  9. linux下libpng库的安装以及使用
  10. VC.【转】采用_beginthread/_beginthreadex函数创建多线程
  11. 模拟人生4极乐净土mod_如何在《模拟人生4》中下载Mod
  12. ThinkPHP3.2.3手册阅读
  13. 第10章 Spark(全面解读Spark架构体系)
  14. 机器学习实战——绘制决策树(代码)
  15. wps软件打不开共享超链接_ppt超链接文件打不开,wps的ppt超链接打不开
  16. PostgreSQL 源码解读(216)- 实现简单的扩展函数
  17. 标号法(Dijkstra)求最短路 matlab
  18. 洛谷 P1719 最大加权矩形 (前缀和,动态规划)
  19. ROS入门的基本操作
  20. wwid、uuid、lun、multipath、hba、udev总结

热门文章

  1. 加州大学洛杉玑分校计算机专业,加州大学洛杉矶分校
  2. 新浪云mysql_php连接mysql数据库(新浪云SAE)
  3. 《七哥说道》第十二章:稍息,窗外的都是兄弟
  4. 计算机网络一、什么是计算机网络
  5. C++ 模板实现—双向链表: doubly linked list
  6. C# winform 右下角弹窗
  7. MSSQL 2000安装 图解
  8. Android TV 开发之 TV视频播放器
  9. 小猪短租网一个网页上的单个价格
  10. 【异常处理】devcpp编译时 “源文件未编译”