目前,在序列到序列( seq2seq )的自然语言生成任务中,主流预训练模型仍然面临一些重大缺陷,例如:生成输出与输入文本之间长度匹配问题、需要大量训练数据才能实现较高性能、推断速度慢等。

因此,Google 提出了一种新型的文本生成模型 LaserTagger,该模型旨在解决 seq2seq 模型运行过程中的上述缺陷,可以预测将将源文本转换为目标文本的一系列生成操作。Google 发布了相关文章介绍了这一开源文本生成模型,雷锋网 AI 开发者内容整理编译如下。

开发背景

序列到序列(seq2seq,https://en.wikipedia.org/wiki/Seq2seq)模型最初由软件⼯程师 Eric Malmi 和 Sebastian Krause 开发,这一模型一经推出后,为机器翻译领域带来了巨大的技术革新,并成为了各种⽂本⽣成任务(如摘要生成、句⼦融合和语法错误纠正)的主流模型。

同时,结合模型架构(例如,Transformer,https://ai.googleblog.com/2017/08/transformer-novel-neural-network.html)的改进,以及通过⽆监督的预训练方法使用⼤量无标注⽂本的能⼒,使得近年来神经⽹络⽅法获得了质的提升。

文本生成神经网络架构发展;其中,BERT是深双向的,OpenAI GPT是单向的,ELMo是浅双向的

但根据实际使用情况,将 seq2seq 模型⽤于⽂本⽣成也有一些实质性的缺陷,例如:⽣成输⼊⽂本不⽀持的输出(称为幻觉,hallucination)、需要⼤量的训练数据才能到达很好的效果;此外,seq2seq 模型通常需要逐字⽣成输出,因此其推断时间较长。

近日,Google 的《Encode, Tag, Realize: High-Precision Text Editing》(https://ai.google/research/pubs/pub48542/)一文介绍了⼀种新颖的、开源的⽂本⽣成模型,旨在专⻔解决上述三个缺陷。由于该模型的速度快、精度高,因此该模型名为 LaserTagger。

该模型的核心思想在于:不从头开始⽣成输出⽂本,⽽是通过使⽤预测的编辑操作标注单词来⽣成输出;然后在单独的实现步骤中将这些单词应⽤于输⼊单词。这是处理⽂本⽣成的⼀种不太容易出错的⽅法,而且它可以通过更易于训练和更快执⾏的模型架构来处理文本。

《Encode, Tag, Realize: High-Precision Text Editing》论文

LaserTagger 的设计和功能

许多⽂本⽣成任务的显着特征是输⼊和输出之间经常存在⾼度重叠。例如:在检测和纠正语法错误、或者是在融合句⼦时,⼤多数输⼊⽂本可以保持不变,并且仅⼀⼩部分单词需要修改。

因此,LaserTagger 会产⽣⼀系列的编辑操作,⽽不是实际的单词。我们使⽤的四种编辑操作类型是: Keep(将单词复制到输出中),Delete(删除单词)和 Keep-AddX / Delete-AddX(添加短语 X)标注的单词之前,并可以选择删除标注的单词)。

下图说明了此过程,该图显示了 LaserTagger 在句⼦融合中的应⽤:

LaserTagger 适⽤于句⼦融合。预测的编辑操作对应于删除「.Turing」,然后替换为「and he」,注意输⼊和输出⽂本之间的⾼度重叠

所有添加的短语均来⾃受限制的词汇表。该词汇表是⼀个优化过程的结果,该优化过程具有两个⽬标:

(1)最⼩化词汇表的⼤⼩;

(2)最⼤化训练示例的数量;

其中添加到⽬标⽂本的唯⼀必要单词仅来⾃词汇表,短语词汇量受限制会使输出决策的空间变⼩,并防⽌模型添加任意词,从⽽减轻了「幻觉」问题。

输⼊和输出⽂本的⾼重叠特性也可以得到⼀个推论,即:所需的修改往往是局部的并且彼此独⽴。这意味着编辑操作可以⾼精度地并⾏进⾏预测,与顺序执⾏预测的⾃回归 seq2seq 模型相⽐,可以显着提⾼端到端的速度。

实验结果与结论

研究人员在实验中对 LaserTagger 实现的四个文本生成任务进行了评估,四个任务分别为:句⼦融合、拆分和改述、抽象总结和语法纠正。

在所有任务 中,LaserTagger 的性能与使⽤⼤量训练示例的基于 BERT 的强⼤seq2seq 基线相当;并且在训练示例数量有限时,其结果明显优于该基线。

下图显示了 WikiSplit 数据集上的结果,其具体任务是将⼀个⻓句⼦改写为两个连贯的短句⼦:

当在 100 万个示例的完整数据集上训练模型时,LaserTagger 和基于 BERT 的 seq2seq 基线模型均具有可⽐的性能,但是在 10,000 个或更少示例的⼦样本上进⾏训练时,LaserTagger 明显优于基线模型(SARI 得分越⾼越好)

LaserTagger 的主要优点 

根据实验结果,研究人员将 LaserTagger 与传统的 seq2seq⽅法相⽐,总结出该新型模型具有以下优点:

  • 可控性强 通过控制输出短语词汇(也可以⼿动编辑或整理),LaserTagger ⽐ seq2seq 基线模型不易产⽣幻觉。

  • 推理速度快 LaserTagger 计算预测的速度⽐seq2seq 基线模型快 100 倍,使其适⽤于实时应⽤。

  • 数据效率高 即使仅使⽤⼏百或⼏千个训练示例进⾏训练,LaserTagger 也可以产⽣合理的输出。在实验中,seq2seq 基线模型需要成千上万个示例才能获得可比拟的性能。

由此可见,LaserTagger 的优势在⼤规模应⽤时变得更加明显。研究人员表示:通过减少响应的⻓度并减少重复性可以用于改进某些服务中语⾳应答格式。

而较⾼的推理速度使该模型可以插⼊现有技术堆栈中,并且不会在⽤户端增加任何明显的延迟;除此之外,改进的数据效率可以收集多种语⾔的训练数据,从⽽使来⾃不同语⾔背景的⽤户受益。

图片来源:网络

原文链接:

https://ai.googleblog.com/2020/01/encode-tag-and-realize-controllable-and.html

Github 地址:

https://github.com/google-research/lasertagger

谷歌开源文本生成新方法 LaserTagger,直击 seq2seq 效率低、推理慢、控制差三大缺陷!相关推荐

  1. seq2seq模型_推断速度达seq2seq模型的100倍,谷歌开源文本生成新方法LaserTagger

    使用 seq2seq 模型解决文本生成任务伴随着一些重大缺陷,谷歌研究人员提出新型文本生成方法 LaserTagger,旨在解决这些缺陷,提高文本生成的速度和效率. 选自arXiv,作者:Eric M ...

  2. 推断速度达seq2seq模型的100倍,谷歌开源文本生成新方法LaserTagger

    选自arXiv 作者:Eric Malmi等 机器之心编译 序列到序列(seq2seq)模型给机器翻译领域带来了巨大变革,并成为多种文本生成任务的首选工具,如文本摘要.句子融合和语法纠错.模型架构改进 ...

  3. MIT推出3D全息图生成新方法,可在智能手机上实时运行

    本文经机器之心(微信公众号:almosthuman2014)授权转载,禁止二次转载 编辑:小舟.陈萍 来自 MIT 的研究者利用深度学习推出了 3D 全息图生成新方法,可以为VR.3D 打印.医学成像 ...

  4. FGPM:文本对抗样本生成新方法

    ©PaperWeekly 原创 · 作者|孙裕道 学校|北京邮电大学博士生 研究方向|GAN图像生成.情绪对抗样本生成 论文标题: Fast Gradient Projection Method fo ...

  5. 【NLP】Sentence-T5|谷歌提出文本表示新SOTA

    卷友们好,我是rumor. 又出新SOTA了. 每个新SOTA,都意味着下一位要卷得更辛苦.调得更猛烈一些. 而这个SOTA还出在我一直关注的文本表示赛道. 这次谷歌用了T5,把STS的平均分从82. ...

  6. 【广告技术】如何提升定向广告效果?腾讯广告提出高质量负实例生成新方法

    基于CCF-腾讯犀牛鸟基金的平台支持,腾讯广告与清华大学李勇老师团队围绕分布式大规模推荐算法开展了深入的合作研究.双方最新的合作成果入选了信息检索和数据挖掘领域顶级学术会议之一ACM CIKM 202 ...

  7. 谷歌开源预训练新范式BiT,准确率提高近25%!网友评价:CV界的BERT

    鱼羊 发自 凹非寺 量子位 报道 | 公众号 QbitAI BERT在NLP界无往不利,大大提高了自然语言模型的性能,那么,在计算机视觉领域,有没有可能一个CNN打天下? 现在,谷歌大脑给出了一个答案 ...

  8. 背景宽高随文本变化_中科大提出ContourNet:更准确的任意形状场景文本检测新方法...

    点击上方"CVer",选择加"星标"置顶 重磅干货,第一时间送达 本文转载自:CSIG文档图像分析与识别专委会 本文简要介绍2020年被CVPR录用的论文&qu ...

  9. 妙笔生花:一个易用、高效的文本生成开源库

    文本生成作为近年来自然语言处理中的热门领域,受到了学界和工业界的广泛关注.随着研究的不断深入,文本生成领域下的子任务和相应的模型越来越丰富,一些优秀的开源框架也纷纷涌现. 现有的开源文本生成库大致可分 ...

最新文章

  1. sklearn随机森林模型:ValueError: Unknown label type: ‘unknown‘
  2. uboot重定位代码分析(转)
  3. EF Core 实现多租户
  4. 二进制十六进制相互转换
  5. ssis for循环容器_使用SSIS ForEach Loop容器以日期顺序处理文件
  6. 缺少ncurses包的解决办法
  7. java动态是如何根据实体建表_传入Java对象 自动创建动态表 并录入数据
  8. HRBUST 2386 - 霍冰阔落(主席树)
  9. java对接天眼查接口,天眼查提供案例方法过期最新案例
  10. STM32与ESP8266物联网编程
  11. SpringBoot单元测试RunWith注解无法解析
  12. 网传刘强东遭失实指控 性侵女大学生被捕是假的已保释
  13. OCX控件的问题以及解决方法
  14. 中国机器人产业图谱(2022)
  15. Vue2 的 diff 算法
  16. mysql联合主键,也就是两个数据字段一起做主键的情况
  17. 这个周末很开心 - 虽然脚丫疼
  18. 微信小程序项目实例SSM项目源代码会议预约管理+后台
  19. 什么是活动分区?活动分区的标志是什么?
  20. 使用计算机进行生产流水线控制属于计算机,在自动化生产线上计算机控制技术的应用探究...

热门文章

  1. TOMCAT9 如何突破的双亲委派机制
  2. 【Keras】Linux一个shell脚本安装python、keras、tensorflow、anaconda等~
  3. js RegExp用法
  4. 4年级计算机 设计贺卡教案,四年级上册信息技术《小贝的贺卡》教学设计
  5. 庖丁解牛剖析国际学术论文写作的快速入门
  6. 2022 专属程序员的桌面必备单品!
  7. 经典图书《重构:改善既有代码的设计》图灵再版出版倒计时
  8. 如何通过DICOM的tag来判断3D图像的方向
  9. 区块链相关论文研读1- 关于边缘计算
  10. OpenCV安装 问题总结以及相关注意事项