Transformer全靠数据堆?那没有数据怎么办?LUT告诉你「冇问题」|AAAI 2021
新智元报道
新智元报道
作者:叶蓉
编辑:好困
【新智元导读】我们有一个梦想,那就是有一天看剧能有实时翻译字幕。然而级联模型复杂冗长,还容易出现传播错误,端到端模型又缺少标记数据去训练。于是全新的语音翻译模型LUT诞生了,不仅翻译速度快,而且就算听错也能翻译对。
你是否曾遇到这样的场景:在陌⽣的国家旅游因为听不懂当地⼈说话只能咿咿呀呀、⼿语⽐划、连蒙带猜?
因为不懂⼩语种,⼤热悬疑泰剧《禁忌⼥孩》、年度狗⾎韩剧《顶楼》只能煎熬到翌⽇字幕组的熟⾁放送?
每每遇此,我都会想,如果计算机能帮我们⾃动把语⾳翻译成中⽂就好了。
语⾳翻译,⼀种语⾔的语⾳到另外⼀种语⾔的语⾳或⽂本的⾃动翻译过程,在如今国际化的社会中有着⼴泛的应⽤场景:在线外语视频、跨国会议、出国旅游、国际贸易。
如何将翻译准确传达成了业界和学术界⼗分关⼼的课题。
端到端语⾳翻译的挑战
传统的语⾳识别系统为级联语⾳翻译模型(cascaded speech translation model),通常先通过⼀个语⾳识别模型(ASR)先识别出⾳频对应的转写⽂本(transcript),再通过机器翻译模型将转写⽂本翻译出⽬标语⾔。
级联语⾳翻译模型
然⽽这种级联系统除了链路⻓,时间复杂度较⾼之外,还容易产⽣误差传播,即⼀旦ASR识别错误,会连带着翻译结果⼀起出错。
所以为了缓解级联系统误差传播的问题,端到端的语⾳翻译模型被学界⼴泛研究。
随着基于Transformer[1]编码器-解码器的模型在⽂本⽣成、机器翻译等任务上的成功,这类模型也被运⽤到了语⾳翻译中,⽐如speech Transformer[2]。
不幸的是,Transformer等模型在机器翻译领域之所以这么成功是因为⼤量标注的平⾏语料数据,⽽在语⾳翻译领域,标注好的「语⾳-转写-翻译」数据远远不如⽂本翻译那么丰富。
⽬前最⼤可⽤的数据集也只有⼏百⼩时,远不如WMT⽂本翻译中的⼤语种平⾏语料规模。这也是为何在很⻓⼀段时间,端到端语⾳翻译系统性能不如级联模型的原因。
所以挑战出现了:如何利⽤有限的标注数据尽极⼤可能提升端到端语⾳翻译的性能呢?
这⾥给⼤家介绍在AAAI 2021上⼀篇语⾳翻译的论⽂:
Listen, Understand and Translate(LUT): Triple Supervision Decouples End-to-end Speech-to-text Translation[3],作者是来⾃中科院⾃动化所的董倩倩、徐波等和字节跳动李磊团队。
本⽂核⼼思想是尽可能的利⽤标注数据中「转写⽂本」的作⽤,并利⽤额外⼤规模单语预训练的语⾔模型来辅助监督,架起从语⾳到⽂本的跨模态转变的桥梁。
论⽂地址:https://arxiv.org/abs/2009.09704
LUT的设计动机和⽅法
⾸先,⼀个问题是:⼈如何翻译⼀段语⾳?通常⽿朵在接受⼀段语⾳后,我们⼈脑会加以理解,最后给出翻译结果。⽽对⽐于「编码器-解码器」模型,单个编码器负责解析语⾳信号,却缺少了「理解」这⼀部分。
左图为⼈翻译的过程,对⽐右图为⽬前基于编码器-解码器的端到端语⾳翻译模型示意图
该⽂认为:
(1)单个编码器很难捕捉适合翻译的语⾳信号表示;
(2)另⼀⽅⾯,它对于「转写」监督信号的利⽤也是有限的。
所以,该⽂引⼊了两个编码器——声学编码器和语义编码器,声学编码器负责将语⾳信号解析到和转写⽂字匹配的表示(但没有显示表示成⽂字,仍然是向量形式),语义编码器负责理解。
其次为了让语义编码器能尽可能产⽣适合翻译的理解(实际表示为另⼀组向量),这⾥充分利⽤了转写⽂本的信息,利⽤了预训练好的BERT语⾔模型来监督语义编码器的输出表示向量。
LUT的模型结构如下图所示:
具体地说,声学编码器(Acoustic Encoder)负责听(Listen),语义编码器(Semantic Encoder)负责理解(Understand),最后,翻译解码器(Translation decdoer)负责输出翻译结果(Translate)。
LUT模型结构
声学编码器:使⽤FilterBank特征作为⾳频信号输⼊,经过基于Transformer encoder的声学编码器,得到⾳频输⼊的声学表示(即⼀组向量)。 这⾥增加了⼀个额外的Connectionist Temporal Classification (CTC) loss,⽬的是使其和转写⽂本对⻬(对应图中的CTC loss)。
语义编码器:声学表示再次通过语义编码器,仍然是⼀个Transformer encoder,通过额外的attention层和average pooling操作得到句⼦语义表示。 这⾥增加了⼀个额外的MSE loss,将其和直接把转写⽂字经过BERT计算的句⼦表示向量对⻬(对应图中的 Distance loss)。 语义编码器的核⼼思想是让语⾳经过了声学编码和语义编码之后的表示与转写⽂字直接经过预训练好的表示能对⻬,⽽我们认为预训练的BERT模型能很好的刻画⽂本语义信息。 这样通过预训练模型来监督,即模拟了翻译过程中“理解”的过程。
翻译解码器:负责将表示解码得到译⽂,和普通翻译任务⼀样,使⽤Transformer decoder作为解码器。 整体再使⽤交叉熵(cross-entropy loss)进⾏训练(对应图中的Translation loss)。
LUT使⽤了三项loss进⾏监督,为了更好收敛,该⽂设计了先优化CTC loss+distance loss,再优化所有loss的训练策略。
该训练策略的另⼀好处是可以将额外的ASR监督也可以利⽤起来。具体的模型细节和训练过程可以参考论⽂。
LUT在语⾳翻译实验中的效果分析
En-Fr/De/Zh 三个语向、两⼤场景下的语⾳翻译能⼒显著提升
该⽂在:
(1)Augmented Librispeech 英->法;
(2)IWSLT-2018 英->德;
(3)TED 英->中
三个数据集上进⾏了实验,验证了LUT模型在有声书翻译和讲座两⼤场景下,都获得了不错的语⾳翻译结果。
值得注意的是,由于数据稀少,前⼈的模型中通常会加⼊ASR pretrain或者MT pretrain的技巧,⽽该⽂的训练策略使得LUT即使没有pretrain,也获得了⽐前⼈更好的结果。
对⽐级联模型的效果
如前⽂所⾔,在很⻓⼀段时间,端到端模型的效果⼀直不如级联系统。
该⽂也将LUT和仅⽤同样数据训练的级联系统进⾏了对⽐,结果显示,在同等数据量下,LUT在英-法、英-德的效果能超越级联系统,在英-中上获得差不多的效果。
值得注意的是,LUT的参数量远⼩于级联系统,翻译速度也更快。
当然略不⾜的是,该⽂中⽐较的级联系统尚不是最强级联系统,最强级联系统是不受限的使⽤⼤规模额外数据训练的语⾳识别模型和机器翻译模型的级联。
案例分析
更重要的是,作为端到端模型,LUT可以有效避免级联系统中误差传导的问题。这⾥通过三个例⼦说明:
通过CTC解码(CTC decoding algorithm),LUT中间语⾳解码器可以得到转写。
分析发现即使转写解码出错的时候(⽐如错识别、漏识别、重复识别⾳节等),LUT依旧可以给出正确的翻译。⽽由于识别错误,级联模型在这种情况下容易给出错误的翻译结果。
声学和语义两编码器的作⽤分析
注意⼒分配可视化分析
该⽂将声学编码器和语义编码器的attention进⾏可视化,发现声学编码器的注意⼒偏向局部注意⼒,⽽语义编码器的注意⼒能获取 到更全局的上下⽂信息。
声学编码器和语义编码器的注意⼒可视化
语义编码器的作⽤
该⽂分别利⽤训练好的LUT模型的声学表示(Acoustic hidden)和语义表示(Semantic hidden),在语⾳理解(SLU)数据集Fluent Speech Commands Dataset上进⾏说话⼈识别(speaker identifiation)和意图识别(intention identification)实验。
分析发现:
(1)在意图识别任务上,利⽤语义表示的识别准确率⾼于声学表示,这证明了语义编码器能更好获取到内容信息;
(2)利⽤语义表示在说话⼈识别任务上的准确率仅46.3%,这证明了语义编码器能极⼤程度过滤掉和内容⽆关的声学信息(⽐如说话⼈信息),从⽽更好地适合翻译任务。
Accuracy | Intention | Speaker |
Acoustic Hidden | 91.0% | 97.6% |
Semantic Hidden | 93.1% | 46.3% |
⽂章中还有更多实验分析验证每⼀个损失项(loss)都是有效的,分析模型超参的影响等等,具体可参考论⽂。
总结
该⽂提出了Listen, Understand and Translate(LUT)模型,模型包含声学编码器、语义编码器和翻译解码器。
语义编码器可充分利⽤转写和其预训练表示作为监督;LUT模型也可以利⽤相较⼤量的语⾳识别(ASR)数据辅助训练,进⼀步提升翻译效果。
实验表明LUT在En-Fr/De/Zh三个语向的语⾳翻译,对⽐其他端到端模型和级联翻译系统,性能都有提升。
参考资料:
代码和预训练好的模型: https://github.com/dqqcasia/st
论文: https://arxiv.org/abs/2009.09704
⽕⼭翻译:http://translate.volcengine.cn/
引⽤:
[1] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin. Attention is all you need. NeurIPS. 2017.
[2] Linhao Dong, Shuang Xu, and Bo Xu. Speech-transformer: a no-recurrence sequence-to-sequence model for speech recognition. ICASSP, 2018.
[3] Qianqian Dong, Rong Ye, Mingxuan Wang, Hao Zhou, Shuang Xu, Bo Xu, and Lei Li. Listen, Understand and Translate: Triple Supervision Decouples End-to-end Speech-to-text Translation. AAAI, 2021.