摘要
与自动语音识别(ASR)和文本机器翻译(MT)模型的级联相比,端到端语音翻译(ST)模型具有许多潜在的优势,包括降低推理延迟和避免错误复合。然而,端到端ST的质量通常受到缺乏训练数据的限制,因为难以收集大量并行的语音和翻译的转录物对。以前的研究已经提出使用预先训练的组件和多任务学习,以便从弱监督的训练数据中受益,例如语音到副本或文本到外文文本对。在本文中,我们证明使用预训练的MT或文本到语音(TTS)合成模型将弱监督数据转换为用于ST训练的语音到翻译对 可以比多任务学习更有效。此外,我们证明了可以仅使用弱监督数据集来训练高质量的端到端ST模型,并且可以使用源自未标记的单语文本或语音的合成数据来提高性能。最后,我们讨论了通过定量消融研究避免过度拟合合成语音的方法。
索引术语 - 语音翻译,序列到序列模型,弱监督学习,综合训练数据。
PS:消融研究(ablation study):实际上ablation study就是为了研究模型中所提出的一些结构是否有效而设计的实验。比如你提出了某某结构,但是要想确定这个结构是否有利于最终的效果,那就要将去掉该结构的网络与加上该结构的网络所得到的结果进行对比,这就是ablation study。
1. 简介
深度学习的最新进展,尤其是序列到序列建模的最新进展已致ASR [1,2]和MT [3,4,5,6,7]任务的显著改进。 这些成功自然引导大家尝试将端到端语音到文本翻译系统构建为单个神经网络[8,9]。 这种端到端系统优于传统的执行ASR和MT的级联系统,因为它们:
1)自然地避免了两个系统之间的复合错误;
2)可以直接利用语音中的韵律提示来改善翻译;
3)通过避免两个模型的推断使其具有较低的延迟;
4)较低的内存和计算资源使用。
然而,训练这样的端到端ST模型通常需要大量并行的语音到翻译的训练数据。 获取如此大的数据集比获取ASR和MT任务的数据要昂贵得多。 这通常是这种端到端系统性能的限制因素。 最近探索的 缓解这一问题 的技术包括多任务学习[9,10]和预训练的组件[11],以便利用弱监督数据,即语音到抄本或文本到翻译对,与完全监督的语音到翻译对相反。
尽管已经证明多任务学习能够为端到端ST系统带来显著的质量改进,但是它有两个限制条件限制了训练的ST模型的性能:
1)共享组件必须在多个任务之间妥协,这限制了他们在个人任务上的表现;
2)对于每个训练示例,针对单个任务计算梯度,因此针对每个任务独立地更新参数,这可以导致针对整个多任务优化问题的次优解决方案。
在本文中,我们在比以前的工作更大的数据集上训练端到端ST模型,跨越多达1亿个训练样例,包括1.3K小时的翻译语音和49K小时的转录语音。 我们确认多任务学习和预训练仍然如此大规模有益。 我们通过使用从弱监督数据(例如典型的ASR或MT训练集)合成的大量数据,证明我们的端到端ST系统的性能可以显著提高,甚至优于多任务学习。 同样,我们表明,通过利用预先训练的组件和从弱监督数据集合成的数据,可以在没有任何完全监督的训练数据的情况下训练高质量的端到端ST模型。 最后,我们证明了从完全无监督的单语数据集合成的数据可用于改善端到端ST性能。
2. 相关工作
早期的语音翻译工作通常使用ASR模型和MT模型的级联[12,13,14],使MT模型具有来自ASR的预测概率和不确定性。 最近的工作重点是在单一模型中训练端到端ST [8,9]。
为了利用完全监督的数据和弱监督的数据,[9,10]使用多任务学习来与ASR和/或MT模型一起训练ST模型。 通过这样做,他们使用端到端模型都比级联模型获得更好的性能。 [11]在更长的236小时英语到法语数据集上进行实验,并在多任务学习之前预先训练编码器和解码器,这进一步提高了性能; 但是,端到端模型的表现比该工作中的级联模型差。 [15]表明,对一种语言的语音编码器进行预训练可以提高不同源语言的ST质量。
当没有直接的并行训练数据可用时,使用TTS合成数据来训练语音翻译是必要的,例如[8,16]。相比之下,我们表明,即使有大型全监督训练集可用,使用来自高质量多扬声器 TTS系统的合成训练数据也可以进一步提高端到端ST模型的性能。合成数据也被用于改善ASR性能。 [17]在TTS和ASR模型之间建立一个循环链,其中一个模型的输出用于帮助另一个模型的训练。 [18]不是使用TTS,而是从未标记的文本合成重复的音素序列,以模仿声学输入中的时间持续时间。类似地,[19]训练伪TTS模型以从文本中合成来自预训练的ASR模型的潜在表示,并将其用于ASR训练中的数据增强。
这项工作中的MT合成数据以类似于知识蒸馏的方式帮助系统[20],因为网络经过训练以预测来自预训练MT模型的输出。相反,使用TTS合成语音输入更类似于MT反向翻译[21]。
3. 模型
与[9]类似,我们使用三个序列到序列模型。 每个都由编码器,解码器和Attention模块组成。 除了作为本文主要关注点的端到端ST模型外,我们还构建了ASR模型和MT模型,用于构建基线级联ST模型,以及用于ST的多任务学习和编码器/解码器预训练。 所有三个模型都使用 包含16K个token的相同共享英语/西班牙语单词模型(WPM)[22]来表示文本。
ASR模型:我们的ASR模型遵循[2]的架构。 我们使用5层双向LSTM编码器,单元大小为1024.解码器是一个2层单向LSTM,单元大小为1024. Attention是4头additive Attention。 该模型将80通道对数谱频谱特征作为输入。
MT模型:我们的MT模型遵循[23]的架构。 我们使用一个6层双向LSTM编码器,单元大小为1024. 解码器是一个8层单向LSTM,单元大小为1024,跨层有剩余连接。 我们使用8头additive Attention。
ST模型:编码器具有与ASR编码器类似的架构,并且解码器具有与MT解码器类似的架构。 在整个这项工作中,我们尝试改变编码器层的数量。 具有最佳性能的模型在图1中可视化。它使用8层双向LSTM用于编码器,以及8层单向LSTM,其具有剩余连接,用于解码器。 遵循MT模型,Attention是8头additive Attention。
4. 合成训练数据
获取大规模并行语音到翻译训练数据非常昂贵。 这种数据的稀缺性通常是端到端ST模型质量的限制因素。 为了克服这个问题,我们通过以下方式使用两种形式的弱监督数据:在平行文本MT训练语料库中合成对应于输入文本的输入语音,并在ASR训练语料库中合成来自输出转录本的翻译文本目标。
4.1 用TTS模型做合成
最近的TTS系统能够合成具有接近人类自然的语音[24],在不同的说话者的声音中[25],通过从连续的说话人embedding空间中采样来创造新颖的声音[26]。
在这项工作中,我们使用了来自[26]的LibriSpeech [27]训练的TTS模型,除了我们使用[29]中的Griffin-Lim [28]声码器,其成本显著降低,但导致音频质量降低。 我们从每个合成示例的连续说话人embedding空间中随机采样,致使合成数据中说话人声音的广泛多样性。 这避免了在使用它来训练ST模型时对一些合成说话人的无意偏差,并鼓励对训练集外的说话人进行推广。
4.2 用MT模型做合成
合成训练数据的另一种方法是使用MT模型将ASR训练集中的转录本翻译成目标语言。
在这项工作中,我们使用Google Translate服务来获取此类翻译。 这个过程类似于知识蒸馏[20],不同之处在于它使用最终预测作为训练目标而不是预测概率分布。
5. 实验
5.1 数据库和优点
我们专注于英文语音到西班牙文本的会话语音翻译任务。我们的实验使用三个专有数据集,所有数据集都包含会话语言,包括:
(1)一组70M英语 - 西班牙语平行句的MT训练集;
(2)从匿名语音搜索日志中收集的29M手写英语话语的ASR训练集;
(3)通过对70M MT集合中的一个子集进行抽样,并通过众包人来阅读英语句子,从而获得一个相当小的英语到西班牙语的1M语音翻译集。
最终数据集可以直接用于训练端到端ST模型。我们通过以与[2]相同的方式添加不同程度的背景噪声和混响,在两个语音语料库上使用数据增强。该
所有模型共享的WPM都使用70M MT集进行训练。
我们使用两个数据集进行评估:来自1M ST集的10.8K示例的保持子集,其包含读取语音,以及在不同于70M MT和29M ASR集的域中的另外8.9K自然对话语音记录。两个评估集都包含英语语音,英语转录和西班牙语翻译三元组,因此它们可用于评估ASR,MT或ST。 ASR性能是根据字错误率(WER)来衡量的,翻译性能是根据BLEU [30]得分来衡量的,两个指标都是在案例和标点符号敏感参考文本上。
5.2 基线级联系统
我们通过训练英语ASR模型和用第3节中描述的体系结构的英语 - 西班牙语MT模型来构建基线系统,并通过将来自ASR模型的预测转录作为MT模型的输入 来将它们级联在一起。 ASR模型在29M ASR集和1M ST集的混合上进行训练,每个数据集采样比例为8:1,以便更好地适应ST集的域。 MT模型在70M MT集上训练,这是1M ST集的超集。 如表1所示,ST集的 BLEU明显低于MT集的 BLEU,这是来自ASR模型的级联错误的结果。
5.3 基线 end-to-end 系统
我们直接在1M ST集上训练一个带有5层编码器和8层解码器的 Vanilla 端到端ST模型。然后,我们采用先前文献[9,10,11,15]中提出的预训练和多任务学习,以提高其性能。我们在ASR任务上预训练编码器,并在第5.2节中描述MT任务上的预训练解码器。在使用预先训练的组件(或未预先训练的组件进行随机值初始)进行初始化之后,在1M ST集上对ST模型进行微调。最后,我们分别使用1M,29M,70M数据集,通过联合训练ST,ASR和MT任务的组合网络,进行多任务学习。 ST子网与ASR网络共享编码器,并与MT网络共享解码器。对于每个训练步骤,以相等的概率对一个任务进行采样和训练。
这些基线模型的性能如表2所示。与以前的文献一致,我们发现预训练和多任务学习都能显着提高ST性能,因为它们将训练期间看到的数据量增加了两个数量级。当应用预训练和多任务学习时,端到端ST模型略微优于级联模型。
5.4 使用合成训练数据
我们将探讨如第4节所述使用合成训练数据的效果。为了避免过度拟合TTS合成音频(特别是因为使用Griffin-Lim算法合成的音频包含明显且不自然的伪像),我们冻结了预先训练好的编码器但是在它上面堆叠了 几个额外的层。 表3中显示了使用1M ST集进行微调时添加不同数量的附加层的影响。即使没有附加层,此方法也优于域外的完全可训练模型(表2第3行) eval set,这表示冻结的预训练编码器有助于ST模型更好地归纳。 添加额外层的好处是在约3层后饱和。 在此结果之后,我们使用3个额外的层进行以下实验,如图1所示。
:
我们分析了使用表4中的不同合成数据集进行微调的效果。 TTS合成数据来自70M MT训练集,通过合成第4.1节中描述的英语语音。 按照与用于真实语音的相同过程,合成语音通过噪声和混响来增强。 MT合成数据来自29M ASR训练集,通过合成第4.2节中描述的西班牙语翻译。 编码器和解码器分别在ASR和MT任务上进行预训练,但不使用多任务学习。
表4中的中间组显示了使用合成数据集和1M真实数据集进行微调的结果,以相等的概率进行采样。 正如预期的那样,添加大量合成训练数据(将训练样例的总数增加1-2个数量级),可以显着提高域内和域外集的性能。 相对于来域内集提高的性能而言,MT合成数据更能提高域外eval集的性能,一部分原因是它包含自然语音而不是读语音,这更好地匹配域外eval集 ,另一部分原因是它为训练集引入了更多的多样性,从而更好地推广。 对三个数据集的混合进行微调会导致两个eval集的显着增益,这表明两个合成源具有互补效应。 它也明显优于级联模型。
表4中的底部组仅使用合成数据进行微调。 令人惊讶的是,它们在域外评估集上的合成的和实际收集数据方面都取得了非常好的性能,甚至超过了训练。 这可以归因于具有自然语音(而不是阅读语音)的训练数据的采样权重的增加。 该结果证明了使用仅具有弱监督数据来训练高质量的端到端ST系统的可能性,通过利用高质量的TTS和MT模型或服务,将这些数据用于预训练组件并从中生成合成并行训练数据,
5.5 冻结编码器和多扬声器TTS的重要性
为了验证冻结预训练编码器的重要性,我们将比较编码器在ST任务上完全微调的模型。如表5所示,完全编码器微调通过过度拟合合成语音来损害ST性能。当使用数据增强对大量真实语音进行预训练时,ASR编码器学习语音内容的高质量潜在表示。对合成语音的额外微调仅会损害性能,因为TTS数据不像真实语音那样真实或多样化。
同样,为了验证使用高质量多说话人TTS系统来合成具有广泛的说话人变化的训练数据的重要性,我们使用来自[24]的单说话人TTS模型合成的数据来训练模型。该模型比小节5.4 [26]中使用的多说话人模型产生更自然的语音。为确保公平比较,我们使用Griffin-Lim声码器和16 kHz采样率。我们使用上述相同的数据增强程序。
结果显示在表6中。即使使用冻结的预训练编码器,仅对单说话人TTS合成数据进行微调仍然比使用多说话人TTS数据进行微调更糟糕,特别是在域外评估集。但是,当训练真实和合成语音的组合时,域内评估集的性能不受影响。我们猜想这是因为域内评估集由读语音组成,它更好地匹配单说话人TTS模型的韵律质量。域外评估集的大的性能降级再次表明更糟糕的泛化。
结合TTS的最新进展,为合成语音引入更自然的韵律和风格变异[31,32,33],可以进一步提高合成语音训练的表现。我们将未来的工作留下这样的调查。
5.6 利用未标记的单语文本或语音
在本节中,我们进一步说明,可以利用未标记的单语言语音和文本来提高端到端ST模型的性能,方法是使用它们来合成使用可用ASR,MT和 TTS系统的并行语音到翻译示例。尽管这些数据集是高度合成的,但它们仍然可以令使用多达1M个真实训练样例训练的ST模型受益。
我们将70M MT集的英文文本作为未标记的文本集,使用如第5.4节所述的多说话人TTS模型为其合成英语语音,并使用Google Translate服务将其翻译为西班牙语。同样,我们将来自29M ASR集的英语演讲作为未标记的语音集,使用我们在5.2节中构建的级联模型为其合成翻译目标。我们仅使用此级联模型来比较其自身的性能。用级联的ASR和MT模型或服务替换它不应该改变结论。由于在这种情况下ASR或MT没有并行训练数据,因此不适用预训练。我们使用如5.3节所述的带有5层编码器的Vanilla模型。
结果显示在表7中。尽管这些数据集是高度合成的,但它们仍然显着提高了Vanilla模型的性能。因为未标记的语音是用较弱的模型处理的,所以它不会带来与未标记文本的合成集相同的增益。由于它基本上从级联模型中提取知识,因此它也不会超越它,这也是可以理解的。由于未使用预训练,因此性能远远落后于我们在第5.4节中的最佳结果。然而,这一结果表明,通过访问高质量的ASR,MT和/或TTS系统,人们可以利用大量未标记的单语数据来提高端到端ST系统的质量,即使是少量的直接并行训练数据是可用的。
6. 结论
我们提出了一种弱监督学习过程,该过程利用合成训练数据来微调端到端序列到序列ST模型,其编码器和解码器网络分别在ASR和MT任务上单独预训练。 我们证明这种方法在大规模英语语音到西班牙语文本翻译任务的实验中优于多任务学习。 当使用合成语音输入时,我们发现使用高质量多说话人TTS模型并冻结预先训练的编码器以避免过度拟合合成音频非常重要。 我们探索更加贫困的数据场景,并表明通过仅对来自现有ASR或MT训练集的合成数据进行微调,可以训练高质量的端到端ST模型。 最后,我们证明了当一个小的完全监督的训练语料库可用时,可以利用大量未标记的语音或文本来改进端到端ST模型。
7. 致谢
作者感谢Patrick Nguyen,Orhan Firat,Google Brain团队,Google Translate团队和Google Speech Research团队的有益讨论和反馈,以及Mengmeng Niu对数据收集的运营支持。
参考文献