Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

中科院自动化所、字节跳动作者

AAAI 2021|语音翻译新方法LUT——克服平行数据稀少的挑战

来自中科院自动化所和字节跳动的研究者提出了一个端到端语音翻译模型 Listen, Understand and Translate(LUT),该模型的最大特点是:可充分利用有限的“语音-转写-翻译”标注数据信息,以及相较大量的语音识别(ASR)平行语料来辅助训练。与之前的模型相比,该方法可以获得更好的语音翻译结果。

你是否曾遇到这样的场景:在陌生的国家旅游因为听不懂当地人说话只能咿咿呀呀、手语比划、连蒙带猜?因为不懂小语种,大热悬疑泰剧《禁忌女孩》、年度狗血韩剧《顶楼》只能煎熬到翌日字幕组的熟肉放送?每每遇此,我都会想,如果计算机能帮我们自动把语音翻译成中文就好了。

GeneratedGeneratedGenerated

语音翻译,一种语言的语音到另外一种语言的语音或文本的自动翻译过程,在如今国际化的社会中有着广泛的应用场景:在线外语视频、跨国会议、出国旅游、国际贸易。如何将翻译准确传达成了业界和学术界十分关心的课题。

端到端语音翻译的挑战

传统的语音识别系统为级联语音翻译模型(cascaded speech translation model),通常先通过一个语音识别模型(ASR)先识别出音频对应的转写文本(transcript),再通过机器翻译模型将转写文本翻译出目标语言。

Generated

级联语音翻译模型

然而这种级联系统除了链路长,时间复杂度较高之外,还容易产生误差传播,即一旦ASR识别错误,会连带着翻译结果一起出错。

所以为了缓解级联系统误差传播的问题,端到端的语音翻译模型被学界广泛研究。随着基于Transformer[1]编码器-解码器的模型在文本生成、机器翻译等任务上的成功,这类模型也被运用到了语音翻译中,比如speech Transformer[2]。

不幸的是,Transformer等模型在机器翻译领域之所以这么成功是因为大量标注的平行语料数据,而在语音翻译领域,标注好的“语音-转写-翻译”数据远远不如文本翻译那么丰富。目前最大可用的数据集也只有几百小时,远不如WMT文本翻译中的大语种平行语料规模。这也是为何在很长一段时间,端到端语音翻译系统性能不如级联模型的原因。

所以挑战出现了:如何利用有限的标注数据尽极大可能提升端到端语音翻译的性能呢?

这里给大家介绍在AAAI2021上一篇语音翻译的论文 Listen, Understand and Translate(LUT): Triple Supervision Decouples End-to-end Speech-to-text Translation[3],作者是来自中科院自动化所的董倩倩、徐波等和字节跳动李磊团队。本文核心思想是尽可能的利用标注数据中“转写文本”的作用,并利用额外大规模单语预训练的语言模型来辅助监督,架起从语音到文本的跨模态转变的桥梁。

Generated

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

LUT的设计动机和方法

首先,一个问题是:人如何翻译一段语音?通常耳朵在接受一段语音后,我们人脑会加以理解,最后给出翻译结果。而对比于“编码器-解码器”模型,单个编码器负责解析语音信号,却缺少了“理解”这一部分。

GeneratedGenerated

左图为人翻译的过程,对比右图为目前基于编码器-解码器的端到端语音翻译模型示意图

该文认为,(1)单个编码器很难捕捉适合翻译的语音信号表示,(2)另一方面,它对于“转写”监督信号的利用也是有限的。所以,该文引入了两个编码器——声学编码器和语义编码器,声学编码器负责将语音信号解析到和转写文字匹配的表示(但没有显示表示成文字,仍然是向量形式),语义编码器负责理解。其次为了让语义编码器能尽可能产生适合翻译的理解(实际表示为另一组向量),这里充分利用了转写文本的信息,利用了预训练好的BERT语言模型来监督语义编码器的输出表示向量。

LUT的模型结构如下图所示。具体地说,声学编码器(Acoustic Encoder)负责听(Listen),语义编码器(Semantic Encoder)负责理解(Understand),最后,翻译解码器(Translation decdoer)负责输出翻译结果(Translate)。

Generated

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模型在有声书翻译和讲座两大场景下,都获得了不错的语音翻译结果。

Generated

值得注意的是,由于数据稀少,前人的模型中通常会加入ASR pretrain或者MT pretrain的技巧,而该文的训练策略使得LUT即使没有pretrain,也获得了比前人更好的结果。

对比级联模型的效果

Generated

如前文所言,在很长一段时间,端到端模型的效果一直不如级联系统。该文也将LUT和仅用同样数据训练的级联系统进行了对比,结果显示,在同等数据量下,LUT在英-法、英-德的效果能超越级联系统,在英-中上获得差不多的效果。值得注意的是,LUT的参数量远小于级联系统,翻译速度也更快。当然略不足的是,该文中比较的级联系统尚不是最强级联系统,最强级联系统是不受限的使用大规模额外数据训练的语音识别模型和机器翻译模型的级联。

案例分析

更重要的是,作为端到端模型,LUT可以有效避免级联系统中误差传导的问题。这里通过三个例子说明:

Speech




Transcript

(En)

Referance

It was mister jack maldon

cried the old soldier

chapter seventeen the abbes chamber

CTC outputs

it was mister jack mal

cried the soldier

chapter seventeen teen the abbes chamber

Translation (Fr)

c'était monsieur Jack Maldon

s'écria le vieux soldat

chapitre xvii la chambre de I’abbé

通过CTC解码(CTC decoding algorithm),LUT中间语音解码器可以得到转写。分析发现即使转写解码出错的时候(比如错识别、漏识别、?重复识别音节等),LUT依旧可以给出正确的翻译。而由于识别错误,级联模型在这种情况下容易给出错误的翻译结果。

声学和语义两编码器的作用分析

注意力分配可视化分析

该文将声学编码器和语义编码器的attention进行可视化,发现声学编码器的注意力偏向局部注意力,而语义编码器的注意力能获取到更全局的上下文信息。?

Generated

声学编码器和语义编码器的注意力可视化

语义编码器的作用

该文分别利用训练好的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三个语向的语音翻译,对比其他端到端模型和级联翻译系统,性能都有提升。

传送门:

Code和预训练好的模型: https://github.com/dqqcasia/st

Paper: 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.

理论语音翻译
相关数据
字节跳动机构

北京字节跳动科技有限公司成立于2012年,是最早将人工智能应用于移动互联网场景的科技企业之一,是中国北京的一家信息科技公司,地址位于北京市海淀区知春路甲48号。其独立研发的“今日头条”客户端,通过海量信息采集、深度数据挖掘和用户行为分析,为用户智能推荐个性化信息,从而开创了一种全新的新闻阅读模式

https://bytedance.com
交叉熵技术

交叉熵(Cross Entropy)是Loss函数的一种(也称为损失函数或代价函数),用于描述模型预测值与真实值的差距大小

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

时间复杂度技术

在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。这是一个代表算法输入值的字符串的长度的函数。时间复杂度常用大O符号表述,不包括这个函数的低阶项和首项系数。使用这种方式时,时间复杂度可被称为是渐近的,亦即考察输入值大小趋近无穷时的情况。例如,如果一个算法对于任何大小为 n (必须比 n0 大)的输入,它至多需要 5n3 + 3n 的时间运行完毕,那么它的渐近时间复杂度是 O(n3)。

收敛技术

在数学,计算机科学和逻辑学中,收敛指的是不同的变换序列在有限的时间内达到一个结论(变换终止),并且得出的结论是独立于达到它的路径(他们是融合的)。 通俗来说,收敛通常是指在训练期间达到的一种状态,即经过一定次数的迭代之后,训练损失和验证损失在每次迭代中的变化都非常小或根本没有变化。也就是说,如果采用当前数据进行额外的训练将无法改进模型,模型即达到收敛状态。在深度学习中,损失值有时会在最终下降之前的多次迭代中保持不变或几乎保持不变,暂时形成收敛的假象。

说话人识别技术

说话人识别作为模式识别的一类,主要任务是通过待测试语音来判断对应的说话人身份。 从识别对象进行划分可以主要分为两个部分:说话人确认(speaker verification)和说话人辨认(speaker identification)。如果待测说话人的范围已知,需要通过语音段对待测说话人的身份进行判断,是否是属于某个说话人,则为说话人确认。说话人确认问题可以归结为是一种1:1的身份判别问题。若说话人的身份范围未知,需要从一定的范围内来对语音段对应的说话人身份进行辨别,这属于说话人辨认问题。说话人辨认问题可以归结为是1:N的问题。 从识别语音段的文本,可以讲说话人识别问题分为文本相关问题和文本无关问题。对于文本相关问题,待测试语音段的内容需要和系统中预先登记的内容相同。对于文本无关问题,待测试语音段的内容可以与系统中预先登记的内容不同,待测试说话人可以只说几个字来进行身份认证。

机器翻译技术

机器翻译(MT)是利用机器的力量「自动将一种自然语言(源语言)的文本翻译成另一种语言(目标语言)」。机器翻译方法通常可分成三大类:基于规则的机器翻译(RBMT)、统计机器翻译(SMT)和神经机器翻译(NMT)。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

语音识别技术

自动语音识别是一种将口头语音转换为实时可读文本的技术。自动语音识别也称为语音识别(Speech Recognition)或计算机语音识别(Computer Speech Recognition)。自动语音识别是一个多学科交叉的领域,它与声学、语音学、语言学、数字信号处理理论、信息论、计算机科学等众多学科紧密相连。由于语音信号的多样性和复杂性,目前的语音识别系统只能在一定的限制条件下获得满意的性能,或者说只能应用于某些特定的场合。自动语音识别在人工智能领域占据着极其重要的位置。

语言模型技术

语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。由于字词与句子都是任意组合的长度,因此在训练过的语言模型中会出现未曾出现的字串(资料稀疏的问题),也使得在语料库中估算字串的机率变得很困难,这也是要使用近似的平滑n元语法(N-gram)模型之原因。

文本生成技术

文本生成是生成文本的任务,其目的是使人类书写文本难以区分。

意图识别技术

意图识别指理解说话人的意图 。

推荐文章
暂无评论
暂无评论~