0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅析Google Research的LaserTagger和Seq2Edits

深度学习自然语言处理 来源:哈工大讯飞联合实验室 作者:吴珂 2021-07-23 16:15 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本期导读:近年来,序列到序列(seq2seq)方法成为许多文本生成任务的主流思路,在机器翻译、文本摘要等绝大多数生成任务上都得到了广泛的应用。与此同时,一些研究人员另辟蹊径,跳脱出传统的seq2seq方法,探索如何将 编辑方法(edit-based approach) 应用于一些文本生成任务,从而提升模型在生成任务上的表现。本期结合Google Research的三篇工作,对基于编辑方法的文本生成技术进行介绍。

1. 引言

在文本生成任务中引入编辑方法的 motivation 主要有两方面:

首先,基于Transformer结构的seq2seq模型在当前各项文本生成任务上得到了广泛使用。而这类传统seq2seq模型的不足主要有以下几点:

(1)数据效率: 为使模型在文本生成任务上获得较好的表现,传统seq2seq模型通常需要在大量数据上进行训练,时间长,计算量庞大。

(2)推理时间: 传统seq2seq模型在解码时主要采用自回归的方式。这种方式按顺序从左至右一个词一个词地预测输出,虽然遵循了人类语言的单向顺序性,但大大增加了模型的推理时间。

(3)可控性与可解释性: 传统seq2seq模型在输出时会发生一些错误。例如,产生输入文本中并不支持的输出(hallucination)。此外,模型在输出时的可解释性也较差。

其次,以句子融合、语法纠错等为代表的一些文本生成任务均具有 “重合”(overlap) 的特点,即源文本和目标文本在语言上重复性较大,只需要对源文本做微小的改动就能生成目标文本(图1)。因此从头训练一个seq2seq模型然后自回归地预测输出就显得较为浪费。基于此,复制机制(copy mechanism)的引入使得模型能够对当前输出是复制原词还是生成新词进行选择。但即使模型使用了复制机制,仍需要较大规模的训练数据来满足解码时的词汇量需求,从而保证模型性能。

综上,在文本生成任务中引入文本编辑的方法,意在针对一些生成任务中的overlap特点,合理利用源文本与目标文本的相似部分,改善传统seq2seq模型的不足。这种方法直观上保留了从源文本到目标文本的编辑过程(如哪些词保留,哪些词需要删除等),与人类实际处理这类生成任务的思路不谋而合,从而也带来了较好的可解释性。

2. LaserTagger

LaserTagger是Google Research在 “Encode, Tag, Realize: High-Precision Text Editing” 一文中提出的文本生成模型,该论文发表于EMNLP 2019。

这篇工作的主要贡献有:

(1)将序列标注作为源文本到目标文本的跳板,即首先对源文本标注编辑操作标签,再根据标注得到的标签序列将源文本并行转化为目标文本(图2)。

(2)基于(1)的思路,设计了基于编辑操作的文本生成模型LaserTagger(包括LaserTaggerFF和LaserTaggerAR两种模型变体),并且在四种文本生成任务上进行了对比实验,获得了较好的效果。

2.1 主要方法

标注操作定义

本文定义文本编辑操作标签由两部分构成:基本标签B和附加标签P,表示为。

基本标签分为两种:保留()或删除(),指对当前位置的token进行保留还是删除操作。

附加标签指需要在当前位置插入新短语(可以是单个词、多个词或标点等,也可以为空)。

在构造编辑标签序列时,由匹配算法(见图4)从训练语料构造出的phrase vocabulary 中选出合适的短语插入。因此,若词典的大小为,则编辑标签的总规模则约为。

此外,可以根据不同的下游任务定义一些特殊标签。例如在句子融合任务中有时需要交换输入句子的语序,此时可以设置标签SWAP代表交换语序操作。

构造phrase vocabulary

在构造训练数据对应的编辑标签序列时,若词典无法提供可插入的新短语,则该条训练数据会被筛掉。因此理想的词典应满足以下两点:一方面,词典规模应尽可能的小;另一方面,该词典应能够尽可能的覆盖更多的训练数据。

构造词典的步骤为:

(1) 将源文本和目标文本对齐,计算出它们的最长公共子序列(longest common subsequence, LCS)。

(2) 将目标文本中不属于LCS的n-grams加入词典中。

(3) 最终保留出现频率最高的个phrases。

在实验中发现,词典保留频率最高的500个phrases已能覆盖85%的训练样本,且再继续增大词典规模对LaserTagger的性能帮助很小。因此,在本文的各主要实验中,词典的大小均被设置为500。

构造编辑标签序列

在定义好标签、构造完词典之后,就可以根据训练语料中的源文本和目标文本构造出对应编辑标签序列,进行有监督学习。

构造编辑标签序列的算法如图4中伪代码所示。该算法主要采用贪心匹配的思想,通过设置两个指针(is与it)对源文本和目标文本进行遍历,进而构造出标签序列。值得注意的是伪代码中并未给出PDELETE标签如何生成。笔者猜测可能是由于PDELETE标签与PKEEP标签实际上可以相互替代(如图5所示),在实验中二者使用一个即可。

2.2 模型概述

本文设计的LaserTagger有两种变体:LaserTaggerFF与LaserTaggerAR。前者Decoder部分采用前馈网络(feed forward network),推理速度更快;后者Decoder部分采用的是1层Transformer Decoder,推理效果更好。两种变体Encoder部分均与BERT-base结构相同,为12层Transformer Encoder。

3. Seq2Edits

Seq2Edits是Google Research在 “Seq2Edits: Sequence Transduction Using Span-level Edit Operations” 一文中提出的文本生成模型,该论文发表于EMNLP 2020。

本篇工作的主要改进有:

(1)与LaserTagger不同,Seq2Edits是在span-level上进行标签标注。即,LaserTagger对每一个词(token)标注一个编辑标签,而Seq2Edits对一个或多个词(span)标注一个编辑标签。

论文作者认为在span-level上进行标注操作能够更好地对局部依赖(local dependencies)进行建模,而对于语法纠错等生成任务而言,人类实际解决这类问题时的主要根据也是span与span间的局部依赖,因此在span-level上进行标注操作也与人类实际解决问题时的思路相吻合。

(2)Seq2Edits将标注操作进一步细化,每一个span对应的编辑标签都由一个三元组组成,相比LaserTagger的标签定义方式粒度更细,因此可解释性也更好。

(3)推理时间不再取决于目标文本的长度,而是依赖于编辑操作的规模。推理速度相比传统seq2seq模型仍得到大幅提升。

3.1 主要方法

标注操作定义

Seq2Edits的标注操作与LaserTagger主要有两点不同:(1)Seq2Edits是在span-level上打标签;(2)Seq2Edits的编辑标签被定义为三元组的形式。

编辑标签被定义为一个三元组,其中代表编辑操作类型(例如修改标点,修改动词形式等),代表编辑操作的结束位置(默认当前操作的开始位置为上一个标签的结束位置),为替换短语(保留原文为)。

生成任务表示

设源文本为序列,长度为;目标文本为序列,长度为。

则传统seq2seq思路下文本生成任务可表示为:

使用本文方法,则任务可表示为:

以图7中句子为例,若源文本、目标文本分别为:

则编辑标签序列为:

从源文本到目标文本的过程则可表示为:

从本文对生成任务的概率表示中可以看出,在每一个上,标签三元组中相互并不是条件独立的,而是有着一定的依赖关系,即:

因此,模型在预测标签三元组时存在着先后顺序:在第个上,先预测,然后预测,最后预测。

3.2 模型概述

在理解Seq2Edits生成文本的概率表示后就不难理解其模型结构。Seq2Edits沿用了标准的Transformer Encoder-Decoder结构,将Decoder分为A和B两部分来分别预测标签、和。Decoder A和Decoder B之间使用残差连接(residual connections)。

对于位置标签的预测基于pointer-network,使用了类似Transformer中attention的机制,即:其中(queries)来自历史的decoder states,(keys)和(values)来自当前的encoder states。

本期介绍了Google Research的LaserTagger和Seq2Edits两篇工作,下一期将继续介绍Google的第三篇工作FELIX以及三篇工作的实验评价部分和总结,敬请关注。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Google
    +关注

    关注

    5

    文章

    1801

    浏览量

    60266

原文标题:基于编辑方法的文本生成(上)

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    谷歌查找我的设备配件(Google Find My Device Accessory)详解和应用

    谷歌查找我的设备配件(Google Find My Device Accessory)介绍 谷歌查找我的设备配件是与谷歌 “查找我的设备” 应用程序配合使用的配件,旨在帮助用户更方便地追踪和定位个人
    发表于 08-31 21:10

    Google Fast Pair服务简介

    Google Fast Pair 是一项利用低功耗蓝牙(Bluetooth LE)技术,实现设备间快速安全配对及提供多种服务的协议。其主要功能包括: 设备处于配对模式时,显示半页通知,便于用户进行
    发表于 06-29 19:28

    同步电机失步浅析

    纯分享帖,需要者可点击附件免费获取完整资料~~~*附件:同步电机失步浅析.pdf【免责声明】本文系网络转载,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请第一时间告知,删除内容!
    发表于 06-20 17:42

    2025 Google I/O大会演讲亮点回顾

    在今年的 Google I/O 大会上,我们展示了如何在 Google 的各个平台进行应用构建,并利用 Google DeepMind 的卓越 AI 模型实现创新,大展拳脚。以下是开发者主旨演讲中的重磅亮点内容,不容错过。
    的头像 发表于 05-28 09:34 764次阅读

    Google推出全新Cloud WAN解决方案

    超过 25 年来,Google 一直在推动网络技术的边界,其创新连接了全球数十亿用户使用 Gmail、YouTube 和 Search 等核心服务。这一切的基础是 Google 庞大的骨干网络。凭借
    的头像 发表于 05-14 16:48 1117次阅读

    NVIDIA Research在多个领域不断取得突破

    近二十年来,NVIDIA Research 的研究成果催生了包括 NVIDIA DLSS、NVLink 和 Cosmos 在内的标志性产品。
    的头像 发表于 03-28 09:52 747次阅读

    函数HAL_I2C_Slave_Seq_Transmit_IT和HAL_I2C_Slave_Seq_Receive_IT实现代码里有处理DMA请求,这是出于什么考虑?

    函数HAL_I2C_Slave_Seq_Transmit_IT和HAL_I2C_Slave_Seq_Receive_IT实现代码里有处理DMA请求,这是出于什么考虑?求解答!
    发表于 03-14 09:01

    如何开发一款Google Find My Tag?

    My 网络的配件(如 AirTag)。通过结合 GPS、蓝牙和众包网络,Find My 提供了高精度的定位功能,同时保护用户隐私 Google Find My网络同样也是由数亿台运行较新版本
    发表于 03-05 17:39

    隆基荣膺EUPD Research“2025年美国顶级光伏品牌”

    近日,隆基荣膺EUPD Research授予的“2025年美国顶级光伏品牌”奖项。
    的头像 发表于 02-27 16:36 874次阅读

    DLPLCR4500EVM打光结束后任然显示Seq. Running, 并且pause与stop无法终止该状态是怎么回事?

    我使用Windows GUI控制DLPLCR4500EVM, 碰到如下问题: 设置Play once并send指定图像, 打光结束后, 任然显示Seq. Running, 并且pause与stop
    发表于 02-21 08:02

    Arm技术助力Google Axion处理器加速AI工作负载推理

    由 Arm Neoverse V2 平台赋能的 Google Axion 处理器已在 Google Cloud 上正式上线,其中,C4A 是首款基于 Axion 的云虚拟机,为基于 CPU 的人工智能 (AI) 推理和通用云工作
    的头像 发表于 02-14 14:11 958次阅读
    Arm技术助力<b class='flag-5'>Google</b> Axion处理器加速AI工作负载推理

    Lam Research拟在印度投资12亿美元

    近日,美国芯片工具制造商Lam Research宣布了一项重大投资决策,计划在未来几年内向印度南部卡纳塔克邦投资超过1000亿卢比(折合美元约为12亿)。这一举措标志着Lam Research在印度
    的头像 发表于 02-13 09:57 628次阅读

    Thorlabs收购MEMS VCSEL先驱者Praevium Research

    据报道,总部位于美国加州的领先光学解决方案提供商Thorlabs,近日宣布成功收购MEMS垂直腔面发射激光器(VCSEL)领域的先驱者Praevium Research。这一战略收购标志着两家
    的头像 发表于 01-24 10:45 754次阅读

    如何利用Google Play实现出海应用增长

    本文内容来自于活动演讲内容的整理和总结,演讲人分别: Google Play 应用增长顾问 Tammy Taw,Google Play 商业拓展经理 Christina Li,Google Play
    的头像 发表于 01-22 11:52 1095次阅读
    如何利用<b class='flag-5'>Google</b> Play实现出海应用增长

    Google Play如何帮助您的应用变现

    本文内容来自于活动演讲内容的整理和总结,演讲人分别为: Google Play 资深产品经理 Kalpa Raj 和 Google Play 商业拓展经理 Maya Ma   在 Google
    的头像 发表于 01-21 11:21 1096次阅读
    <b class='flag-5'>Google</b> Play如何帮助您的应用变现