阿⾥预训练⽣成语⾔模型PALM刷新SOTA

公众号关注 “ML_NLP”

设为 “星标”,重磅干货,第一时间送达!

阿⾥预训练⽣成语⾔模型PALM刷新SOTA

本文分享来自今年阿里达摩院在EMNLP2020上的工作

作者 | 阿里达摩院

1. 前言

阿⾥巴巴达摩院在提出的StructBERT在GLUE登顶之后,⼜挑战⾃然语⾔⽣成任务。提出的新预训练⽣成语⾔模型PALM在摘 要⽣成、问题⽣成、回复⽣成等五个语⾔⽣成任务上刷新了Y优效果,在MARCO NLG⾃然语⾔⽣成排⾏榜上位居第⼀,并 被应⽤到了实际业务场景中。相关论⽂已被EMNLP 2020收录。

2. 介绍(motivation)

过去⼀年,阿⾥达摩院NLP团队⾃研的预训练模型体系ALICE (ALIbaba’s Collection of Encoder-decoders)中的通⽤预训练 模型StructBERT、多语⾔模型VECO、多模态预训练模型StructVBERT等相继刷新了世界纪录。该预训练模型体系ALICE已 经被应⽤到阿⾥内部和外部客户的产品和业务中,验证了ALICE体系带来的技术与业务价值。近⽇,研究团队⼜在⾃然语⾔⽣ 成预训练模型上实现了新的突破。

他们创新地提出了预训练⽣成语⾔模型PALM。该模型采⽤了与之前的⽣成模型不同的预训练⽅式,它将预测后续⽂本作为其 预训练⽬标,⽽⾮重构输⼊⽂本。如下图所示,PALM在⼀个模型中使⽤⾃编码⽅式来编码输⼊⽂本,同时使⽤⾃回归⽅式来⽣成后续⽂本。

这种预测后续⽂本的预训练⽅式促使该模型提⾼对输⼊⽂本的理解能⼒,使其在下游的各个语⾔⽣成(NLG)任务上取得更 好的效果。PALM在MARCO NLG⾃然语⾔⽣成公开评测上取得了排⾏榜第⼀,同时在摘要⽣成标准数据集CNN/DailyMail和 Gigaword上也超过了现有的各个预训练⽣成语⾔模型。

阿⾥预训练⽣成语⾔模型PALM刷新SOTA

3. 模型

自编码和自回归的联合建模

经过精⼼设计,PALM可以通过双向⾃编码⽅式理解给定的上下⽂,并根据理解以⾃回归⽅式预测后续⽂本序列。PALM将⾃ 编码的理解交给Transformer中的编码器,将⾃回归的⽣成交给Transformer解码器。编码器和解码器联合预训练包括了两个目标:

  • 输⼊到编码器的上下⽂中的词被随机采样后⽤[MASK]符号替换,编码器根据该修改后的上下⽂来推断并重建原始⽂本。该预训练⽬标优化了编码器输出与原始上下⽂之间的交叉重构损失,类似BERT中的掩码语⾔建模(Masked LM)。通过预 测上下⽂中被掩盖的词,PALM让编码器学习去理解整个上下⽂的语义。

  • 之后PALM将编码器和解码器联合训练,根据编码器的上下⽂表示⾃回归地⽣成⽂本。如下式所示,其中X表示上下⽂,Y 表示要⽣成的后续⽂本。通过在上下⽂表示上设置⽣成条件,PALM迫使解码器在预测下⼀个词时深度依赖上下⽂,而非之前已⽣成的词序列。

    阿⾥预训练⽣成语⾔模型PALM刷新SOTA

输入和输出的表示

在模型预训练阶段,对输⼊和输出进行裁剪,从而最小化pretraining和finetuning之间差异。在常见的下游生成任务中(如抽象式摘要和生成式QA),上下文通常为⼀个相当⻓的段落,模型被要求基于对该上下文的理解来生成⼀段较短的文本。

在处理预训练文本时,对每个⻓度为L的连续文本片段,PALM使用前 8 0 % × L 文本片段作为上下⽂输⼊到编码器,并使⽤剩余2 0 % × L 的⽂本作为输出,由解码器预测。这种表示设计模仿了下游任务的输⼊和输出。它假设⼈类书写的⽂本是连贯的,因此后 2 0 % × L 文本是由前 8 0 % × L 文本衍生而来,它包含了⼈对前述文本的理解。通过预测后续文本,PALM学会了依据前述文本推断后⾯的文本内容。

前文中的词重用

在⼈⼯编写的⽂档中,后续⽂本常常引⽤前述文本中出现过的词、实体和短语。因此,在无标签语料库的预训练中加⼊拷贝机制,可以增加下游⽣成文本的连贯性。这使得模型可以从预训练中学习到何时以及如何复制前述⽂本中的词,并将该知识传递。

阿⾥预训练⽣成语⾔模型PALM刷新SOTA

4. 实验

PALM在⾃然语⾔⽣成任务、摘要⽣成、问题⽣成、回复⽣成等5个公开评测与数据集上进⾏了finetuning实验,均取得了最优效果。

MARCO NLG

MARCO NLG https://microsoft.github.io/msmarco/ 榜单是微软发布的用于评测模型⽣成⾃然语⾔能⼒的榜单。该评测让模型阅读理解⽂档后以⾃然语⾔来回答针对该⽂档的问题,通过这种方式来评价模型的语⾔生成能力。通过在该数据上finetune,PALM以单模型取得了榜单第⼀的成绩,超过了其它所有single/ensemble模型。

文本摘要

PALM在CNN/DailyMail和Gigaword两个主流摘要数据集上都刷新了SOTA结果,超过了包括Google的BERT&T5、Facebook的BART、百度的ERNIE-GEN等在内的各个预训练模型,取得了最优的摘要⽣成效果。

阿⾥预训练⽣成语⾔模型PALM刷新SOTA

SQuAD问题生成

问题⽣成任务的目标是为给定的输⼊文本及答案⽚段⽣成该答案可回答的问题,常⽤于许多业务的QA挖掘。PALM在SQuAD 数据上超过了之前所有问题⽣成系统,刷新了SOTA结果。

阿⾥预训练⽣成语⾔模型PALM刷新SOTA

对话回复生********成

PALM也可⽤于在对话中自动生成回复。它在Cornell电影对话语料上生成回复的困惑度显著优于其它语⾔模型。

阿⾥预训练⽣成语⾔模型PALM刷新SOTA

5. 总结

阿⾥预训练⽣成语⾔模型PALM刷新SOTA

除了上述的公开学术排⾏榜及数据集外,基于PALM中⽂预训练⽣成模型的Learning to Ask和Paraphrasing等在阿里云小、店小蜜和 多个行业应用上均取得明显的效果。此外,基于PALM中⽂通⽤预训练的Data-to-Text模型还被⽤于斑马的车载信息播报和蚂蚁的营销文案生成等业务上。后续PALM还将⽀持更多不同类型的⽣成任务。未来阿⾥将更深⼊地研究语⾔⽣成技术,借此 发挥更⼤的商业和社会价值。

论⽂链接:

https://arxiv.org/pdf/2004.07159.pdf https://arxiv.org/pdf/2004.07159.pdf

下载1:动手学深度学习

在机器学习算法与自然语言处理公众号后台回复“动手学”,
即可获取547页《动手学深度学习》电子书和源码。
本书同时覆盖深度学习的方法和实践,
不仅从数学的角度阐述深度学习的技术和应用,
还包含可运行的代码,
为读者展示如何在实际中解决问题。

阿⾥预训练⽣成语⾔模型PALM刷新SOTA

下载2:仓库地址共享
在机器学习算法与自然语言处理公众号后台回复“代码”,
即可获取195篇NAACL+295篇ACL2019有代码开源的论文。开源地址如下:https://github.com/yizhen20133868/NLP-Conferences-Code

仓库地址共享:
在机器学习算法与自然语言处理公众号后台回复“代码”,
即可获取195篇NAACL+295篇ACL2019有代码开源的论文。
开源地址如下: https://github.com/yizhen20133868/NLP-Conferences-Code
重磅!机器学习算法与自然语言处理交流群已正式成立
群内有大量资源,欢迎大家进群学习!
额外赠送福利资源!邱锡鹏深度学习与神经网络,pytorch官方中文教程,利用Python进行数据分析,机器学习学习笔记,pandas官方文档中文版,effective java(中文版)等20项福利资源

阿⾥预训练⽣成语⾔模型PALM刷新SOTA

注意:请大家添加时修改备注为 [学校/公司 + 姓名 + 方向]

例如 —— 哈工大+张三+对话系统。

号主,微商请自觉绕道。谢谢!

阿⾥预训练⽣成语⾔模型PALM刷新SOTA

阿⾥预训练⽣成语⾔模型PALM刷新SOTA

推荐阅读:
Longformer:超越RoBERTa,为长文档而生的预训练模型
一文直观理解KL散度
机器学习必读TOP 100论文清单:高引用、分类全、覆盖面广丨GitHub 21.4k星

阿⾥预训练⽣成语⾔模型PALM刷新SOTA