百度发布Deep Voice 3:全卷积注意力机制TTS系统

今年 2 月份,百度提出了完全由深度神经网络构建的高质量文本转语音(TTS)系统 Deep Voice。这一系统随后在今年五月份推出了第二个版本。近日,百度发布了 Deep Voice 3,该研究的论文已经提交 ICLR 2018 大会。

人工语音合成(亦称文本到语音,TTS)传统上都是以复杂的多态手工设计管道(Taylor, 2009)实现的。最新的对神经 TTS 的研究出现了令人印象深刻的结果—放弃管道并用更简单的特征、更少的组成获得了更高质量的合成语音。目前为止并没有一致认为最优的 TTS 神经网络架构,然而,序列到序列模型 (Wang et al., 2017; Sotelo et al., 2017; Arık et al., 2017) 已经显示了很强大的潜力。

在这篇论文中,百度研究人员提出了一个新颖的用于语义合成的全卷积架构,可以用于非常大规模的录音数据集,并解决了多个应用基于注意机制的 TTS 系统时出现的现实问题。百度的工作主要分为如下五个方面:

  1. 提出了一个全卷积的特征到频谱的架构,它使我们能对一个序列的所有元素完全并行计算,并且使用了递归单元 (e.g., Wang et al., 2017) 使其训练速度比类似的架构极大地加快。
  2. 结果表明 Deep Voice 的架构训练很快并且能用于 LibriSpeech (Panayotov et al., 2015) 这样的大规模数据集,它包含了 2484 个说话人的将近 820 个小时的录音数据。
  3. 实验结果证明了新方法可以生成单调注意行为(monotonic attention behavior),并避免语音合成常见的错误模式。
  4. 实验比较了多个信号合成方法合成单个说话人语音的质量,其中包括了 WORLD(Morise et al., 2016)、Griffin-Lim(Griffin & Lim, 1984) 和 WaveNet(Oord et al., 2016)。
  5. 研究介绍了如何实现 Deep Voice3 的一个推理内核,它可以在一个单 GPU 服务器上每天完成多达 1000 万次推断。

模型架构

百度提出的架构可以将各种文本特征(字、音素、重音)转换为各种声学特征(mel-band 声谱、线性尺度对数幅度的声谱,或一套声码器特征比如基础频率、幅频包络和非周期性参数)。然后将这些声学特征作为声音波形合成模型的输入。Deep Voice 3 架构由 3 个部分组成:

  1. 编码器:一种全卷积编码器,将文本特征转换为内部学习表征。
  2. 解码器:一种全卷积因果解码器,将学习到的表征以一种多跳型(multi-hop)卷积注意机制解码(以一种自动回归的模式)为低维声音表征(mel-band 声谱)。
  3. 转换器:一种全卷积后处理网络,可以从解码的隐藏状态预测最后输出的特征(依赖于信号波形合成方法的类型)。和解码器不同,转换器是非因果的,因此可以依赖未来的语境信息。

图 1.Deep Voice 3 使用残差卷积层编码文本特征为每个时间步的键值对向量,这些键值对向量随后馈送到基于注意力的解码器中。解码器使用这些向量预测 mel-band 对数幅度的声谱(和输出声音相关)。(浅蓝色点状箭头表示了推理时的自动回归合成过程。)然后解码器的隐藏状态传递给转换器网络以预测声学特征,从而合成信号波形。参见附录 A 获取更多细节。


图 2.(a)卷积模块包含了一个 1D 卷积和门控线性单元 (Dauphin et al., 2017) 以及残差连接。(b)4 个全连接层生成的 WORLD 特征。


图 3.key 和推断向量(query vectors)中都添加了位置编码,速率分别为ωkey 和 ωquery。强制单调性可通过向 logits 添加一个巨大负值的 mask 应用于推理过程。在两种注意机制中选择一种:softmax 或单调注意。在训练过程中,注意权重被 drop out。


图 4. 注意的分布(a)训练前,(b)训练后,没有推理约束,(c)推理约束应用于第 1 和第 3 层。我们实际观察到在 1 到 2 个主要层上固定注意足以得到高质量的输出。

转换器网络以解码器最后的隐藏层的激活值为输入,应用了多个非卷积模块,然后为下行的信号模型生成模型预测参数。和解码器不同,转换器是非因果的和非自动回归的,因此它可以利用未来的解码器语境预测输出。

图 5. 模型整体架构


表 2. 使用不同的信号波形合成方法的平均意见得分(95% 信度区间)。研究人员使用了 crowdMOS 工具包 (Ribeiro et al., 2011),这些模型的样本在 Mechanical Turk 上被批量地展示给评分人。由于展示的批量样本在所有模型中共有,该实验自然也能当做模型之间的对比。


表 3. 神经 TTS 系统利用多说话者数据集合成音频片段的 MOS 分数(95% 信度区间),研究人员也使用了 crowdMOS 工具包,如表 2 中的细节所示。


论文:DEEP VOICE 3: 2000-SPEAKER NEURAL TEXT-TO-SPEECH

论文链接:https://arxiv.org/abs/1710.07654


摘要

我们提出了 Deep Voice 3,一个基于全卷积注意力机制的神经文本转语音(TTS)系统。Deep Voice 3 的能力与目前业界最佳的神经语音合成系统相当,同时训练速度要快上十倍。我们将 Deep Voice 3 用于 TTS 任务的数据集扩展到了史无前例的程度,训练了超过 2000 名说话者,800 余小时的语音。此外,我们找到了基于注意力的语音合成网络会遇到的常见错误,展示了如何解决它们,并比较了几个不同的波形合成方法。我们也展示了如何在一台单 GPU 服务器上每天实现 1000 万次推断。

延伸阅读

百度提出 Deep Voice:实时的神经语音合成系统

百度提出神经 TTS 技术 Deep Voice 2:支持多说话人的文本转语音

Paperweekly链接:http://www.paperweekly.site/papers/993

理论百度语音合成注意力机制TTS全卷积网络Deep Voice