今年 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 系统时出现的现实问题。百度的工作主要分为如下五个方面:
- 提出了一个全卷积的特征到频谱的架构,它使我们能对一个序列的所有元素完全并行计算,并且使用了递归单元 (e.g., Wang et al., 2017) 使其训练速度比类似的架构极大地加快。
- 结果表明 Deep Voice 的架构训练很快并且能用于 LibriSpeech (Panayotov et al., 2015) 这样的大规模数据集,它包含了 2484 个说话人的将近 820 个小时的录音数据。
- 实验结果证明了新方法可以生成单调注意行为(monotonic attention behavior),并避免语音合成常见的错误模式。
- 实验比较了多个信号合成方法合成单个说话人语音的质量,其中包括了 WORLD(Morise et al., 2016)、Griffin-Lim(Griffin & Lim, 1984) 和 WaveNet(Oord et al., 2016)。
- 研究介绍了如何实现 Deep Voice3 的一个推理内核,它可以在一个单 GPU 服务器上每天完成多达 1000 万次推断。
模型架构
百度提出的架构可以将各种文本特征(字、音素、重音)转换为各种声学特征(mel-band 声谱、线性尺度对数幅度的声谱,或一套声码器特征比如基础频率、幅频包络和非周期性参数)。然后将这些声学特征作为声音波形合成模型的输入。Deep Voice 3 架构由 3 个部分组成:
- 编码器:一种全卷积编码器,将文本特征转换为内部学习表征。
- 解码器:一种全卷积因果解码器,将学习到的表征以一种多跳型(multi-hop)卷积注意机制解码(以一种自动回归的模式)为低维声音表征(mel-band 声谱)。
- 转换器:一种全卷积后处理网络,可以从解码的隐藏状态预测最后输出的特征(依赖于信号波形合成方法的类型)。和解码器不同,转换器是非因果的,因此可以依赖未来的语境信息。
图 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 万次推断。
延伸阅读
百度提出神经 TTS 技术 Deep Voice 2:支持多说话人的文本转语音
Paperweekly链接:http://www.paperweekly.site/papers/993