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

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

3天内不再提示

用于NAT的选择性知识蒸馏框架

深度学习自然语言处理 ? 来源:南大NLP ? 作者:南大NLP ? 2022-12-06 14:44 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

01

研究动机

在本文中,我们研究了一种能够高效推理的机器翻译模型NAT (Non-Autoregressive Transformer)[1]。相较于传统的Transformer,NAT能够在解码阶段并行预测,从而大幅提升模型的推理速度。此外,NAT可以使得模型在训练和测试阶段从相同的分布进行预测,从而有效避免了顺序解码模型中经常出现的exposure bias问题。在WMT21 news translation shared task for German→English translation中,已经有NAT模型在翻译质量上超过了许多顺序解码的模型。

尽管NAT在拥有许多潜在的优势,目前的工作中这类模型仍然在很大程度上依赖于句子级别的知识蒸馏(sequence-level knowledge distillation, KD)[2]。由于需要并行预测所有token,NAT对单词间依赖关系的建模能力较弱。这个特点使得在真实数据集上,NAT很容易受到multi-modality问题的影响:训练数据中一个输入可能对应多个不同的输出。在这样的背景下,Gu提出训练一个AT (Autoregressive Transformer)[3]模型作为老师,将它的输出作为NAT的学习对象。这种KD方式可以帮助NAT绕过multi-modality问题,从而大幅提升NAT的翻译表现。

e0ba8f3e-751e-11ed-8abf-dac502259ad0.png

图1:Selective KD的流程示意图

KD在帮助NAT提升表现的同时,也会带来一些负面影响,例如模型在低频词上的准确率较低[4]、AT teacher的错误会传播到NAT上等。此外,如果NAT仅能在AT teacher的输出上学习,这类模型的翻译质量将很难有更进一步的突破。我们的研究希望能够在避免multi-modality的情况下,让NAT能够从真实的数据分布中学到知识蒸馏的过程中缺失的信息,从而提升NAT的表现。

为达到这样的目的,我们提出了selective KD:在KD数据上训练一个NAT作为评估模型,并通过它来选择需要蒸馏的句子。通过这种方式,我们可以让模型接触到翻译质量更高的真实数据,同时避免了严重的multi-modality情况。受课程学习的影响,我们也在训练过程中动态调整蒸馏数据的比例。“用评估模型有选择地蒸馏数据”和“动态调节蒸馏数据的比例”共同构成了我们的Selective KD训练框架。

02

解决方案

2.1评估模型

我们首先将数据蒸馏产生的结果划分为四种不同的情况:

较轻的modality change:某些单词可能被替换为同义词,句式和语义并没有发生显著的变化

较轻的错误:在保持原有句式和语义的情况下,发生了一些小错误,例如单词重复

严重的modality change:语义不变的情况下,句子的表达方式发生了显著的变化

严重的错误:翻译的质量很糟糕

对于情况1,我们可以容忍较轻的modality change,这种情况下真实数据和蒸馏数据都可以被视作正确的学习目标,同时引入真实数据不会大幅增加数据集的复杂程度。情况2中,用真实数据替换蒸馏数据可以得到更高的翻译质量,找出属于这种情况的样本是我们方法的主要目标。情况3中,由于引入真实数据会恶化multi-modality问题,我们希望蒸馏这部分数据。情况4很少发生,我们认为这种情况下该训练样本对NAT可能太过困难,引入真实数据带来的提升很有限。总的来说,我们希望能找到情况1、2对应的训练样本,在训练过程中将它们的原始数据作为学习对象。

e0e43014-751e-11ed-8abf-dac502259ad0.png



图2:4种不同的情况对应的案例

为了筛选情况1、2中的数据,我们在蒸馏数据上训练一个NAT作为评估模型,通过比较评估模型的输出和真实数据计算一个score,判断一个真实翻译是否适合被直接用于训练。若对于某个样本评估模型的输出和真实数据较为接近,则score较高,我们可以认为蒸馏数据仅有微小的错误或modality change,从而认为它属于情况1、2,无需蒸馏。反之,可以认为蒸馏数据发生了较大的变化,因此属于情况3、4,或是这个样本在蒸馏后不发生太大变化的情况下对NAT而言仍过于困难。经过筛选,我们仅蒸馏那些不适合用于训练的真实数据。

2.2动态调整蒸馏比例:由困难到容易

我们在训练过程中会调整蒸馏数据的比例。一般来说,刚开始训练时绝大多数训练样本为真实数据,训练的尾声则会蒸馏整个训练集。具体实现中,我们通过动态调节score的阈值来调整蒸馏的比例。

e11339ae-751e-11ed-8abf-dac502259ad0.png

图3:selective KD在第k次update的算法示意

03

实验

我们在WMT14 EN-DE和WMT16 EN-RO上开展了实验,包括了两种代表性的NAT架构:CMLM [5]和GLAT+CTC [6],以及一种inference-efficient的AT架构:DeepShallow [7](6层编码器,1层解码器)。

3.1翻译质量与推理速度

我们通过BLEU score [8]和一种learned metric COMET [9]来衡量模型的翻译质量,并通过和标准Transformer比较来衡量推理速度。可以发现,相比于常规的知识蒸馏,Selective KD可以在不同数据集、不同架构以及不同metric上稳定取得翻译质量的提升,同时保持模型自身在推理速度上的优势。我们方法在inference-efficient AT上也有明显的效果,这进一步说明了selective KD具有广泛的价值。

e128553c-751e-11ed-8abf-dac502259ad0.png



图4:翻译质量与推理速度。翻译质量括号外为BLEU,括号内为COMET

3.2调节quality和complexity

真实数据的翻译质量往往是优于蒸馏数据的,通过调节蒸馏数据的比例,Selective KD可以调节训练集的quality。与此同时,我们希望知道这个方法是否可以灵活调节训练集的complexity。为了更好地观察这一点,文章中用了两个metric来衡量数据的复杂程度:Translatioin Uncertainty [10]和Alignment Shift。Translation Uncertainty反映了源句单词对应翻译结果的多样性,Alignment Shift反映了句式的变化程度。

e1596ce4-751e-11ed-8abf-dac502259ad0.png

e168ab32-751e-11ed-8abf-dac502259ad0.png

图5:Translation Uncertainty(左)和Alignment Shift(右)的计算方式

如图6所示,我们的方法可以有效控制数据的complexity。我们保留的真实数据(绿色折线)在两个指标上都远远低于被蒸馏的真实数据(红色折线)。在增加真实数据的比例同时,整个数据集complexity的提升是缓慢而平滑的。

e17f4176-751e-11ed-8abf-dac502259ad0.png



图6:数据的Translation Uncertainty(左)和Alignment Shift(右)

3.3蒸馏数据占比的影响

如图7所示,我们在不同蒸馏比例的数据上进行了实验。可以发现,通过selective KD仅蒸馏5%的数据就可以提升2.4 BLEU。在蒸馏数据比例为80%时,模型的表现甚至超过了完全蒸馏的数据,根据[10],一种可能的解释是这种比例下数据的complexity更适合我们实验中采用的GLAT+CTC架构。另外,动态调节真实数据的比例(蓝色虚线)可以进一步提升模型的表现。

e1a73dac-751e-11ed-8abf-dac502259ad0.png

图7:在不同蒸馏比例下模型的表现

04

总结

在这篇文章中,我们提出了选择性知识蒸馏,从而使得NAT模型可以从真实的数据分布中学到知识蒸馏过程中缺失的部分信息。具体来说,我们采用一个NAT作为评估模型来判断哪些句子需要蒸馏,并动态提高蒸馏数据的比例。我们用实验结果证明了该方法可以有效提升NAT在机器翻译任务上的表现。

审核编辑 :李倩

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

    关注

    0

    文章

    154

    浏览量

    16788
  • 机器翻译
    +关注

    关注

    0

    文章

    141

    浏览量

    15242
  • 数据集
    +关注

    关注

    4

    文章

    1226

    浏览量

    25659

原文标题:AAAI'23 | 用于NAT的选择性知识蒸馏框架

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

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Keithley 6517B静电计在离子选择性电极和pH测量中的优势

    在现代科学研究和工业应用中,离子选择性电极和pH测量扮演着至关重要的角色。这些技术广泛应用于环境监测、食品工业、医药研究以及化学分析等领域。Keithley 6517B静电计作为一种高精度、高灵敏度
    的头像 发表于 06-18 10:52 ?178次阅读
    Keithley 6517B静电计在离子<b class='flag-5'>选择性</b>电极和pH测量中的优势

    PCBA 加工必备知识选择性波峰焊和传统波峰焊区别大揭秘

    DIP焊接时,选择性波峰焊与传统波峰焊是两种常见的焊接工艺。两者各有特点,适用于不同的应用场景。 传统波峰焊的特点 1. 工艺概述 传统波峰焊是一种成熟的批量焊接技术,通过将插件组件插入PCB板后,将整板通过焊锡波峰来实现批量焊接。该工艺适合焊
    的头像 发表于 05-08 09:21 ?594次阅读

    半导体选择性外延生长技术的发展历史

    选择性外延生长(SEG)是当今关键的前端工艺(FEOL)技术之一,已在CMOS器件制造中使用了20年。英特尔在2003年的90纳米节点平面CMOS中首次引入了SEG技术,用于pMOS源/漏(S/D
    的头像 发表于 05-03 12:51 ?2659次阅读
    半导体<b class='flag-5'>选择性</b>外延生长技术的发展历史

    什么是高选择性蚀刻

    华林科纳半导体高选择性蚀刻是指在半导体制造等精密加工中,通过化学或物理手段实现目标材料与非目标材料刻蚀速率的显著差异,从而精准去除指定材料并保护其他结构的工艺技术?。其核心在于通过工艺优化控制
    的头像 发表于 03-12 17:02 ?463次阅读

    22.0%效率的突破:前硅多晶硅选择性发射极双面TOPCon电池的制备与优化

    随着全球能源需求的增长,开发高效率太阳能电池变得尤为重要。本文旨在开发一种成本效益高且可扩展的制备工艺,用于制造具有前侧SiOx/多晶硅选择性发射极的双面TOPCon太阳能电池,并通过优化工艺实现
    的头像 发表于 03-03 09:02 ?817次阅读
    22.0%效率的突破:前硅多晶硅<b class='flag-5'>选择性</b>发射极双面TOPCon电池的制备与优化

    NAT网关(网段隔离器)有什么功能?哪个品牌好用?

    NAT网关(Network Address Translation,网络地址转换)是一种用于在不同网络段之间进行通信的设备。它的主要功能是将内部网络的私有IP地址转换为外部网络的公网IP地址,从而
    的头像 发表于 02-19 17:14 ?743次阅读
    <b class='flag-5'>NAT</b>网关(网段隔离器)有什么功能?哪个品牌好用?

    大连理工提出基于Wasserstein距离(WD)的知识蒸馏方法

    的机制,应用于中间层蒸馏时存在问题,其无法处理不重叠的分布且无法感知底层流形的几何结构。 为了解决这些问题,大连理工大学的研究人员提出了一种基于 Wasserstein 距离(WD)的知识蒸馏
    的头像 发表于 01-21 09:45 ?736次阅读

    奔腾NAT造型获国家知识产权局“中国外观设计银奖”

    近日,国家知识产权局发布《关于第二十五届中国专利奖授奖的决定》,奔腾NAT造型凭借独特创新的设计脱颖而出,荣获 “中国外观设计银奖”。? 中国专利奖代表着我国知识产权领域的至高荣誉。该奖项由中
    的头像 发表于 01-13 16:38 ?821次阅读

    SiGe与Si选择性刻蚀技术

    文章来源:半导体与物理 原文作者:jjfly686 本文简单介绍了两种新型的选择性刻蚀技术——高氧化性气体的无等离子体刻蚀和原子层刻蚀。 全环绕栅极晶体管(Gate-All-Around FET
    的头像 发表于 12-17 09:53 ?1455次阅读
    SiGe与Si<b class='flag-5'>选择性</b>刻蚀技术

    选择性沉积技术介绍

    选择性沉积技术可以分为按需沉积与按需材料工艺两种形式。 随着芯片制造技术的不断进步,制造更小、更快且能效更高的芯片具很大的挑战,尤其是全环绕栅极(Gate-All-Around, GAA)晶体管和更
    的头像 发表于 12-07 09:45 ?1017次阅读
    <b class='flag-5'>选择性</b>沉积技术介绍

    基于介电电泳的选择性液滴萃取微流体装置用于单细胞分析

    我们开发了一种微流体装置,可以基于介电电泳从多个液滴捕获袋中选择性提取液滴。该装置由一个主微通道、五个带侧通道的液滴捕获袋和适当位于捕获袋周围的驱动电极对组成。由于主通道和侧通道之间的流动阻力
    的头像 发表于 11-11 14:10 ?553次阅读

    Nat server技术原理和配置过程

    Nat server:指定公有地址:端口和私有地址:端口形成一对一映射关系——映射表。这也是Nat server与其他nat的区别之一,Nat server可以指定端口进行映射。
    的头像 发表于 10-10 14:38 ?1542次阅读
    <b class='flag-5'>Nat</b> server技术原理和配置过程

    过电流保护的选择性是靠什么来实现的

    过电流保护的选择性是指在电力系统中,当发生短路或过载时,保护装置能够按照预定的顺序和时间,优先切断故障部分,而不影响其他正常运行的部分。选择性是电力系统保护设计的重要原则之一,它能够确保系统的稳定性
    的头像 发表于 09-26 14:38 ?1604次阅读

    选择性唤醒如何实现局部联网

    电子发烧友网站提供《选择性唤醒如何实现局部联网.pdf》资料免费下载
    发表于 09-12 10:29 ?0次下载
    <b class='flag-5'>选择性</b>唤醒如何实现局部联网

    简化ECU中具有选择性唤醒功能的隔离式CAN设计

    电子发烧友网站提供《简化ECU中具有选择性唤醒功能的隔离式CAN设计.pdf》资料免费下载
    发表于 09-06 11:15 ?0次下载
    简化ECU中具有<b class='flag-5'>选择性</b>唤醒功能的隔离式CAN设计