一心二用:高性能端到端语音翻译模型同时识别声音和翻译

2021-07-02 16:51:28 浏览数 (1)

作者 | 董倩倩

编辑 | 刘冰一

自动语音翻译是指让机器完成从源语言的语音信号自动翻译生成目标语言的文本的过程,其基本设想是让计算机像人类译员一样充当持不同语言说话人之间翻译的角色。

AI 科技评论今天介绍一篇发表在 AAAI 2021上最新的端到端语音翻译的一项工作:COSTT,用一个连续的解码器同时做到对语音中源文字的识别并将其翻译为目标语言,其最大优点为可利用相对大量的文本平行语料来辅助训练,有效缓解语音翻译数据不足的局限。

道格拉斯·亚当斯(Douglas Adams)在小说《银河系漫游指南》(《The Hitchhiker’s Guide to the Galaxy》)里畅想了一种叫巴别鱼(Babelfish)的神奇生物。人们携带巴别鱼后,就能够在它的帮助下听懂任何异国语言。巴别鱼的名字来源于《圣经》里著名的故事“巴别塔”:人类想上天堂,开始建造叫做巴别塔的通天巨塔。上帝为阻止人类登天,迫使人类说不同的语言。由于沟通不畅,巴别塔计划最终半途而废。

那么是否可以将一种语言的语音直接转换为另外一种语言的文字呢?

这就是语音翻译需要解决的问题。语音翻译系统在观看国外影视作品、开展远程国际会议等场合有广泛的应用。

传统的语音翻译系统采用级联方式,由两个模块组成,分别是语音识别系统和机器翻译系统,前者先将语言识别成文本,后者再翻译成他国文字。在这个过程中存在非常严重的错误累积和延迟累积问题,因此,基于端到端建模的自动语音翻译研究方法应运而生。在端到端系统中,不再有两个独立模块,而是一个统一的模型直接把音频转换为翻译后的文本。

这篇文章给大家介绍AAAI2021上的一篇研究自动语音翻译的工作,《COnsecutive Decoding for Speech-to-text Translation》[1],简称COSTT,作者来自中科院自动化所和字节跳动人工智能实验室。

这篇工作主要是研究了端到端模型中语音识别和语音翻译的目标序列如何联合学习。

论文地址:https://arxiv.org/abs/2009.09737

1 语音翻译面临的挑战

端到端建模缓解了传统级联方式的不足,但作为一个新兴的研究领域,目前被几大障碍制约,其中包括:1)缺少有标注的训练数据;2)跨模态翻译建模难度大等。

众所周知的是,一个可商用的中、英语音识别系统需要使用上万小时音频-转写平行数据训练得到,而一个商用的中到英文本机器翻译系统则需要上亿条平行句对训练得到。

一方面,作为人工智能三大基石之一的数据,对深度学习技术的重要性好比汽油之于汽车,而目前可用于语音翻译模型训练的音频-翻译平行数据的量级只有几百小时。如何利用其他文本数据来辅助训练是考虑的方向。

另一方面,端到端模型需要将多个复杂的任务集成到一个模型中,模态交叉和协作也给学习器带来了负担。类比于人类的同传译员,工作时需要“分脑”机制,包括“听”、“理解”、“转换”、“输出”以及“监听”5个部分,机器同传的实现同样依赖于这些能力。语音翻译的研究工作道阻且长,但充满希望。端到端语音翻译方法因为有较大的应用前景,逐渐引起学术界和工业界的关注。

2 基于连续解码的联合建模框架

2.1 研究背景和动机

Bérard等[2]在2016年,使用一个带注意力机制的编码器-解码器结构,验证了端到端语音翻译模型的可行性。其后,研究者们发现利用预训练的语音识别和机器翻译模型初始化网络参数或者将二者作为多任务学习中的辅助任务,能够显著提高语音翻译模型的性能。但现有的方法还不能很好地缓解上述端到端语音翻译模型存在的挑战。

图1 上:级联系统的建模过程;中:基于编码器-解码器的端到端模型建模过程;下:COSTT的建模过程

作者观察到如下现象:在级联系统中,虽然语音识别模型和机器翻译模型是分开优化的,但是对于下游的机器翻译系统来说,可以直接得到源语言转写文本的线索输入,如图1上。

而在端到端技术中,目标语言的翻译文本序列无法与源语言的转写文本序列建立直接的条件依赖关系,如图1 中。另一方面,人类译员在为视频制作字幕时,通常是先记录源语言字幕,再翻译成目标语言字幕,类似一种“连续工作”的行为。基于此,COSTT提出了在序列到序列模型的解码过程中采用“连续预测”的方式,顺序输出源语言序列(从识别声音中得到)和目标语言序列(由翻译得到),如图1 下所示。

此结构的核心优点是单独把解码器拿出来可以看作文本翻译模型,所以可以利用传统的文本翻译平行语料来预训练。这样就有效缓解了语音翻译语料不足的问题。

2.2 模型结构和细节

图2:COSTT模型框架

如图2,COSTT采用编码器(对应Feature2)-解码器(对应Feature1)的框架实现:编码器用于“声学-语义”建模过程(Acoustic-Semantic Phase,AS);解码器用于“转写-翻译”的建模过程(Transcript-Translation Phase,TT)。AS阶段接受语音特征,输出声学表征,并将声学表征编码为语义表征。TT阶段接受AS阶段输出的表征,输出目标文本序列。

根据上述“连续工作”的启发,COSTT在TT建模阶段使用一个共享的解码器连续地输出源语言的转写序列和目标语言的翻译序列,如图3左,能够联合建模两种文本序列之间的依赖关系。TT建模阶段的优化目标是两个对应文本序列的拼接,使用任务标识符分隔,优化目标为交叉熵损失函数(CE)。与常规序列生成方法相比,连续解码机制可以将预测任务从简单任务(识别)逐步过渡到复杂任务(翻译),从而减轻了模型的学习和记忆压力。例如,当预测翻译序列时,由于已经解码出了相应的识别序列,即已知语音翻译的中间识别结果(源语言文本),可以用来改善翻译序列的预测准确性。通常,使用语音识别平行语料来提高语音翻译模型的性能的做法易于实现,但是如何利用机器翻译的平行数据却并非易事。

COSTT提出了一种通过外部机器翻译平行数据来增强端到端语音翻译性能的方法。具体地,COSTT利用外部的文本翻译平行语料,通过遮蔽的损失函数来预训练TT阶段的参数,也就是在已知转写序列输入时使解码器预测翻译序列。通过预训练-联调的方式,有效缓解了本研究领域标注数据匮乏的问题。

图3 左:COSTT的“转写-翻译”建模过程(联调阶段);右:COSTT的“转写-翻译”建模过程(预训练阶段)

由上文介绍可知,跨模态序列映射是语音翻译任务中的一大挑战,编码层计算压力较大便是这其中亟需解决的难点。由于音频特征的长度比源语言音素序列的长度大得多,考虑到解码器对编码器的交叉注意力需要关注的帧序列过长,COSTT在“声学-语义”建模阶段对声学编码进行了压缩,如图4。

具体做法是在编码层跳过以空白帧为主的时间步和合并重复的帧以减少编码序列的长度,理论上,在消除空白和重复帧的干扰情况下,模型的短时依赖关系学习能力会提高。为了完成声学编码的压缩,在“声学-语义”建模的中间层增加源语言转写对应的音素序列的监督信息,优化目标为连接时序分类损失函数(CTC)。

图4:COSTT的“声学-语义”建模过程

AS阶段和TT阶段的第一部分输出,可以组合用作语音识别模型,单独的TT阶段可以看作机器翻译模型,而整体来看,如果忽略了TT阶段输出的第一部分,则是语音翻译模型。COSTT简单有效,功能强大,能够满足语音识别、机器翻译和语音翻译任务的要求,同时兼具了级联系统和端到端系统的优势。COSTT的整体优化目标为两个阶段目标的加权求和。更多关于COSTT的实现和训练策略,请参见原始论文。

2.3 实验结果和分析

这篇论文在三个主流的语音翻译数据集上做了实验和分析,包括增广LibriSpeech英法、IWSLT 2018 英德、TED英中。其中,在Augmented Librispeech英法上的实验性能如表1。可以看出,COSTT可以使用比过去方法较少的训练数据和训练技巧的同时,取得更好的性能;同时,在利用额外MT数据作辅助训练时,COSTT得到了更高的翻译性能。

详细的实验结果和分析请参考原始论文。

表1 COSTT在Augmented Librispeech 英法上的实验性能

下面列举了COSTT在英法数据集上的样本测试结果(相应的音频文件可在附录中的项目地址获取):分析表明,COSTT在解决漏译、错译和容错方面具有明显的结构优势。

case1中,基准模型缺失了对音频转写中“yes”的翻译,而COSTT预测了完全正确的翻译,在听完原始音频之后,猜测丢失翻译是由于在“doctor”和“yes”之间存在异常的发音停顿。

case2中,基准模型将音频转写中的“aboard”错误地翻译为“vers l'avant”(英文为“ forward”),但是COSTT可以根据正确的转写预测结果将其正确地翻译为“a bord”。猜测翻译错误的原因可能是音频片段的相似发音问题,从而使翻译模型的推理发生混淆。

case3中,基准模型错误地翻译了大部分内容,虽然COSTT也将音频中的“today”识别为“to day”。但是,最后COSTT能够完全正确地预测出翻译结果。

3 总结

本文主要介绍了AAAI2021上的一篇工作,该工作提出了一种自动语音翻译模型,COSTT。实验和分析表明该方法在多个主流基准数据集上取得了明显的性能提升。

该方法能够在得到目标语言翻译序列的同时,得到源语言识别序列,更符合多数自动语音翻译的应用场景需求,也缓解了端到端语音翻译直接训练数据不足的问题。该算法有望在工业应用中落地。

传送门

论文地址:https://arxiv.org/abs/2009.09737

代码地址:https://github.com/dqqcasia/st

项目地址:https://dqqcasia.github.io/projects/COSTT

火山翻译在线体验:http://translate.volcengine.cn/

参考文献

[1] Dong, Qianqian and Wang, Mingxuan and Zhou, Hao and Xu, Shuang and Xu, Bo and Li, Lei. Consecutive Decoding for Speech-to-text Translation. AAAI, 2021.

[2] B'erard, Alexandre and Pietquin, Olivier and Servan, Christophe and Besacier, Laurent. Listen and Translate: A Proof of Concept for End-to-End Speech-to-Text Translation. Arxiv, 2016.

0 人点赞