《Tacotron: Towards End-to-End Speech Synthesis》论文学习

文章目录

  • 《Tacotron: Towards End-to-End Speech Synthesis》论文学习
    • 摘要
    • 1 介绍
    • 2 相关工作
    • 3 模型架构
      • 3.1 CBHG模块
      • 3.2 编码器
      • 3.3 解码器
      • 3.4 后处理网和波形合成
    • 4 模型细节
    • 5 实验
      • 5.1 消融分析
      • 5.2 平均意见得分测验
    • 6 讨论

摘要

文本到语音合成系统通常包括多个阶段,如文本分析前端、声学模型和音频合成模块。构建这些组件通常需要广泛的领域专业知识,可能包含脆弱的设计选择。在本文中,我们提出了Tacotron,一个端到端生成文本到语音的模型,它可以直接从字符合成语音。给定<文本,语音>数据对,模型可以使用随机初始化完全从头开始训练。我们提出了几个关键技术,以使序列到序列框架执行这一具有挑战性的任务。Tacotron在美式英语上获得了3.82的主观MOS平均意见得分,在自然度方面超过了生产级参数系统。此外,由于Tacotron在帧级生成语音,它比样本级自回归方法快得多。

1 介绍

现代文本-语音(TTS)管道是复杂的(《Text-to-speech synthesis》)。例如,统计参数TTS通常有提取各种语言特征的文本前端、持续时间模型、声学特征预测模型和基于复杂信号处理的声码器(《Statistical parametric speech synthesis》,《Vocaine the vocoder and applications in speech synthesis》)。这些组件基于广泛的领域专业知识,并且设计起来很费力。它们也是独立训练的,所以每个组成部分的错误可能会叠加。现代TTS设计的复杂性导致在构建新系统时需要大量的工程工作。
       
       因此,集成的端到端TTS系统有许多优点,可以在文本、音频上进行训练。与最少的人类注释配对。首先,这样的系统减轻了费力的特征工程的需要,这可能涉及启发式和脆弱的设计选择。其次,它更容易对各种属性(如说话人或语言)或高级特征(如情感)进行丰富的条件反射。这是因为条件作用可能发生在模型的最开始,而不是只发生在特定的组件上。同样,适应新数据可能也更容易。最后,单个模型可能比每个组件的错误可能复合的多阶段模型更健壮。这些优势意味着端到端模型可以让我们在现实世界中大量丰富的、有表现力的、但常常是嘈杂的数据上进行训练。
       
       TTS是一个大规模的反问题:高度压缩的源(文本)被解压缩成音频。由于同一文本可以对应不同的发音或说话风格,这对于端到端模型来说是一项特别困难的学习任务:它必须处理给定输入信号水平上的巨大变化。此外,与端到端语音识别(《Listen, attend and spell: A neural network for large vocabulary conversational speech recognition》)或机器翻译(《Google s neural machine translation system: Bridging the gap between human and machine translation》)不同,TTS输出是连续的,输出序列通常比输入序列长得多。这些属性导致预测错误迅速累积。在本文中,我们提出了Tacotron,一种基于序列到序列(seq2seq)的端到端生成TTS模型(《Sequence to sequence learning with neural networks》)和注意范式(《Neural machine translation by jointly learning to align and translate》)。我们的模型以字符作为输入,原始谱图作为输出,采用多种技术来提高普通seq2seq模型的性能。给定<文本,语音>数据对,Tacotron可以通过随机初始化完全从零开始训练。它不需要音素水平的对齐,所以它可以很容易地扩展到使用大量的录音数据。通过一种简单的波形合成技术,Tacotron在美国英语评估集上产生了3.82的平均意见得分(MOS),在自然度方面超过了生产级参数系统。

2 相关工作

WaveNet (《WaveNet: A generative model for raw audio》)是一个强大的音频生成模型。它适用于TTS,但由于其样本级自回归的性质,运行速度较慢。它还需要对现有TTS前端的语言特征进行调节,因此不是端到端:它只是取代了声码器和声学模型。另一个最近开发的神经模型是DeepVoice (《Deep voice: Real-time neural text-to-speech》),它用相应的神经网络替代典型的TTS管道中的每个组件。但是,每个组件都是独立训练的,以端到端方式改变系统以训练是非常重要的。
       
       据我们所知,《First step towards end-to-end parametric TTS synthesis: Generating spectral parameters with neural attention》是最早使用seq2seq关注端到端TTS的工作。然而,它需要一个预先训练的隐马尔可夫模型(HMM)对准器来帮助seq2seq模型学习对准。很难说seq2seq本身学习了多少对齐。其次,我们使用了一些技巧来训练这个模型,作者指出,这样做会损害韵律。第三,它预测声码器参数,因此需要一个声码器。此外,该模型是基于音素输入进行训练的,实验结果似乎有一定的局限性。
       
       Char2Wav (《Char2Wav: End-to-end speech synthesis》)是一个独立开发的端到端模型,可以对角色进行训练。然而,Char2Wav仍然在使用SampleRNN神经声码器之前预测声码器参数(《SampleRNN: An unconditional end-to-end neural audio generation model》),而Tacotron直接预测原始谱图。另外,它们的seq2seqSampleRNN模型需要分别进行预训练,但我们的模型可以从头开始训练。最后,我们对普通的seq2seq范例做了几个关键的修改。如后面所示,普通的seq2seq模型不能很好地用于字符级输入。

3 模型架构

Tacotron的主干是一个具有注意力的seq2seq模型(《Neural machine translation by jointly learning to align and translate》,《Grammar as a foreign language》)。图1描述了该模型,该模型包括编码器、基于注意的解码器和后处理网络。在高层次上,我们的模型以字符为输入,产生谱图帧,然后转换为波形。我们将在下面描述这些组件。

3.1 CBHG模块

我们首先描述一个名为CBHG的构建块,如图2所示。CBHG由一组一维卷积滤波器、高速网络(《Highway networks》)和双向门控循环单元(GRU) (《Empirical evaluation of gated recurrent neural networks on sequence modeling》)循环神经网络(RNN)组成。CBHG是一个从序列中提取表示的强大模块。输入序列首先与 K K K个1-D卷积滤波器集卷积,其中第 k k k个集合包含宽度为 k k k的滤波器 C k C_k Ck​( K = 1 , 2 , . . . , K K=1,2,...,K K=1,2,...,K)。这些滤波器显式地建模局部和上下文信息(类似于建模ungrambiggram,直到K-gram)。卷积输出堆叠在一起,并在时间维度最大池化增加局部不变性。注意,我们使用跨距为1来保持原始的时间分辨率。我们进一步将处理后的序列传递给几个固定宽度的一维卷积,卷积的输出通过残差连接与原始输入序列相结合(《Deep residual learning for image recognition》)。批量标准化(《Batch normalization: Accelerating deep network training by reducing internal covariate shift》)用于所有卷积层。将卷积输出输入多层高速公路网络,提取高级特征。最后,我们在上面叠加一个双向的GRU RNN,从正向和反向的上下文中提取序列特征。CBHG的灵感来自机器翻译工作(《Fully character-level neural machine translation without explicit segmentation》),主要区别包括使用非因果卷积、批处理归一化、剩余连接和 s t r i d e = 1 stride=1 stride=1的最大池化。我们发现这些修改提高了泛化。

3.2 编码器

编码器的目标是提取文本的鲁棒序列表示。编码器的输入是一个字符序列,其中每个字符表示为一个one-hot向量,并嵌入到一个连续向量中。然后,我们对每个嵌入应用一组非线性变换,统称为pre-net。本文采用了一种带dropout的瓶颈层作为pre-net,提高了算法的收敛性和泛化能力。CBHG模块将pre-net输出转换为注意模块使用的最终编码器表示。我们发现这种基于CBHG的编码器不仅减少了过拟合,而且比标准的多层RNN编码器发音错误更少(见音频样本链接页面)。

3.3 解码器

我们使用一个基于内容的tanh注意力解码器(《Grammar as a foreign language》),其中有状态循环层在每个解码器时间步产生注意力查询。我们将上下文向量和注意RNN cell输出连接起来,形成对解码器RNN的输入。我们在解码器中使用了一组具有垂直残差连接的GRU (《Google s neural machine translation system: Bridging the gap between human and machine translation》)。我们发现残差连接加速了收敛。解码器目标是一个重要的设计选择。虽然我们可以直接预测原始的谱图,但对于学习语音信号和文本之间的对齐来说,这是一个高度冗余的表示(这正是在这个任务中使用seq2seq的真正动机)。由于这种冗余,我们使用不同的目标进行seq2seq解码和波形合成。seq2seq目标只要为反演过程提供足够的可解性和韵律信息,就可以进行高度压缩,可以对其进行固定或训练。我们使用80波段的梅尔谱图作为目标,但可以使用更少的波段或更简洁的目标,如倒谱。我们使用一个后处理网络(下面将讨论)将seq2seq目标转换为波形。
       
       我们使用一个简单的全连接输出层来预测解码器的目标。我们发现的一个重要技巧是在每个解码器步骤中预测多个非重叠的输出帧。同时预测 r r r帧可以将解码器总步数除以 r r r,从而减少模型大小、训练时间和推理时间。更重要的是,我们发现这种技巧可以大大提高收敛速度,这可以通过从注意力中学习到的更快(更稳定)的对齐来衡量。这可能是因为相邻的语音帧是相关的,每个字符通常对应于多个帧。每次预测一帧迫使模型在多个时间步中处理相同的输入标识;预测多帧可以让注意力在训练的早期向前移动。Zen等人(《Fast, compact, and high quality LSTM-RNN based statistical parametric speech synthesizers for mobile devices》)也使用了类似的技巧,但主要是为了加快推理。
       
       第一个解码器步骤以一个全零帧为条件,该帧表示一个<GO>框架。在推理中,在解码器步骤 t t t时,预测 r r r的最后一帧在步骤 t + 1 t+1 t+1时作为解码器的输入。注意,输入最后一个预测是一种特殊的选择,在这里我们可以使用所有预测 r r r。在训练过程中,我们总是将第 r r r个真实帧输入到解码器。输入帧被传递到pre-net,就像在编码器中所做的那样。由于我们没有使用诸如计划采样(《Scheduled sampling for sequence prediction with recurrent neural networks》)等技术(我们发现它会损害音频质量),pre-net中的dropout对于模型的推广是至关重要的,因为它提供了一个噪声源来解决输出分布中的多种模式。

3.4 后处理网和波形合成

如上所述,后处理网的任务是将seq2seq目标转换为一个可以合成成波形的目标。由于我们使用Griffin-Lim作为合成器,后处理网络学习预测在线性频率尺度上采样的频谱幅度。后处理网络的另一个动机是它可以看到完整的解码序列。seq2seq总是从左到右运行,与此相反,它同时具有向前和向后的信息来纠正每一帧的预测误差。在这项工作中,我们使用CBHG模块作为后处理网络,尽管一个更简单的架构可能也能工作。后处理网络的概念是非常普遍的。它可以用来预测其他目标,如声码器参数,或作为WaveNet类神经声码器(《WaveNet: A generative model for raw audio》,《SampleRNN: An unconditional end-to-end neural audio generation model》,《Deep voice: Real-time neural text-to-speech》)直接合成波形样本。
       
       我们使用Griffin-Lim算法(《Signal estimation from modified short-time fourier transform》)从预测的谱图合成波形。我们发现,在执行Griffin-Lim之前,将预测的幅值提高1.2次幂可以减少人为干扰,这可能是由于它的谐波增强效应。我们观察到Griffin-Lim50次迭代后收敛(实际上,大约30次迭代似乎就足够了),这是相当快的。我们在TensorFlow(《TensorFlow: Large-scale machine learning on heterogeneous distributed systems》)中实现了Griffin-Lim ,因此它也是模型的一部分。虽然Griffin-Lim是可区分的(它没有可训练的权重),我们在这项工作中没有对它施加任何损失。我们强调,我们选择Griffin-Lim是为了简单;虽然它已经产生了强有力的结果,开发一个快速和高质量的可训练的频谱到波形逆变器是正在进行的工作。

4 模型细节

1列出了超参数和网络架构。我们使用带有Hann加窗、50ms帧长、12.5ms帧移和2048点傅里叶变换的对数幅值谱图。我们还发现预加强(0.97)是有帮助的。我们在所有实验中使用24khz的采样率。
       
       在本文中,我们使用 r = 2 r=2 r=2(输出层缩减因子)作为MOS结果,尽管较大的 r r r值(如 r = 5 r=5 r=5)也可以很好地工作。我们使用Adam优化器(《Adam: A method for stochastic optimization》),学习速率衰减,从0.001开始,在500K1M2M全局步长后分别减小到0.00050.00030.0001。我们对seq2seq解码器(mel-scale谱图)和后处理网络(linear-scale谱图)都使用了简单的 L 1 \mathcal{L}_1 L1​损耗,这两项损失的权重相等。
       
       我们使用32个批处理大小进行训练,其中所有序列都填充到最大长度。使用损耗掩模来训练序列模型是一种常见的做法,它可以在零填充帧上掩盖损耗。但是,以这种方式训练的模型不知道什么时候停止发出输出信号,导致声音在最后不断重复。解决这个问题的一个简单技巧是重建零填充帧。

5 实验

我们在一个内部北美英语数据集上训练Tacotron,该数据集包含一个职业女性说话者大约24.6小时的语音数据。这些短语是文本规范化的,例如“16”被转换为“sixteen”。

5.1 消融分析

我们进行了一些消融研究,以了解我们模型中的关键部件。与生成模型一样,很难比较基于客观指标的模型,这些指标往往与感知不太相关(《A note on the evaluation of generative models》)。我们主要依赖于视觉对比。我们强烈鼓励读者听取提供的示例。
       
       首先,我们将与普通的seq2seq模型进行比较。编码器和解码器都使用了2层残差RNN,每层有256GRU cell(我们尝试了LSTM,得到了类似的结果)。该解码器不使用预处理网或后处理网,直接预测线性尺度对数数量级谱图。我们发现该模型需要定时采样(采样率0.5)来学习对齐和推广。我们在图3中显示了学习到的注意力对齐。图3(a)显示了普通的seq2seq学习到的对齐很差。一个问题是,注意力倾向于在向前移动之前停留许多帧,这导致合成信号中的语音清晰度很差。自然性和整体持续时间因此被破坏。相比之下,我们的模型学习了一种干净而平滑的对齐方式,如图3(c)所示。

       
       其次,我们将CBHG编码器替换为2层残差GRU编码器的模型进行了比较。模型的其余部分,包括编码器预网络,保持完全相同。对比图3(b)和图3(c),我们可以看到,来自GRU编码器的对齐是有噪声的。听合成的信号,我们发现嘈杂的排列经常导致发音错误。CBHG编码器减少了过拟合,并能很好地推广到长而复杂的短语。
       
       图4(a)和4(b)显示了使用后处理网的好处。我们训练了一个没有后处理网络的模型,同时保持所有其他组件不变(除了解码器RNN预测线性尺度谱图)。有了更多的上下文信息,来自后处理网络的预测包含了更好的分辨率谐波(例如在频段100400之间的更高的谐波)和高频共振峰结构,这减少了合成伪影。

5.2 平均意见得分测验

我们进行了平均意见得分测试,在测试中,受试者被要求对音频的自然程度进行Likert 5分评分。MOS测试是由母语人士众包的。测试中使用了100个未出现过的短语,每个短语得到8个评级。在计算MOS时,我们只包括使用耳机的评级。我们将我们的模型与一个参数化系统(基于LSTM (《Fast, compact, and high quality LSTM-RNN based statistical parametric speech synthesizers for mobile devices》))和一个串联系统(《Recent advances in Google real-time HMM-driven unit selection synthesizer》)进行了比较,这两个系统都在生产中。如表2所示,TacotronMOS值为3.82,优于参数系统。考虑到强基线和由Griffin-Lim合成引入的工件,这代表了一个非常有希望的结果。

6 讨论

我们提出了一种集成的端到端生成TTS模型Tacotron,该模型以字符序列作为输入输出对应的谱图。通过一个非常简单的波形合成模块,它在美国英语上获得了3.82 MOS分数,在自然度方面超过了生产参数系统。Tacotron是基于框架的,因此其推理速度大大快于样本水平的自回归方法。与之前的工作不同,Tacotron不需要手工设计的语言特征或复杂的组件,如HMM对齐器。它可以通过随机初始化从头开始训练。我们执行简单的文本规范化,尽管最近在学习文本规范化方面取得了进展(《RNN approaches to text normalization: A challenge》)可能会使这在未来变得不必要。
       
       我们还需要研究我们模型的许多方面;许多早期的设计决策都没有改变。我们的输出层、注意模块、损耗函数和基于Griffin-Lim的波形合成器都已经成熟,有待改进。例如,众所周知,Griffin-Lim的输出可能有声音伪影。目前,我们正在研究快速、高质量的基于神经网络的谱图反演。

Wang Y, Skerry-Ryan R J, Stanton D, et al. Tacotron: Towards end-to-end speech synthesis[J]. arXiv preprint arXiv:1703.10135, 2017.

之前的工作较为粗糙,很多细节都有遗漏。为方便后续深入研究,特此更新Tacotron模型的论文笔记。

【论文学习】《Tacotron: Towards End-to-End Speech Synthesis》相关推荐

  1. 【论文学习笔记】《A Review of Deep Learning Based Speech Synthesis》

    基于深度学习的语音合成综述论文学习 文章目录 基于深度学习的语音合成综述论文学习 1 简介 2 语音合成概述 2.1 语音合成概念 2.2 语音合成发展历史 2.3 传统语音合成技术 2.3.1 拼接 ...

  2. 论文学习之综述:《Deep learning》

    论文学习之综述:<Deep learning> 文章目录 论文学习之综述:<Deep learning> 前言: 第一部分:深度学习基础(1-4)页 作者介绍: 前期知识储备: ...

  3. 论文翻译:2021_语音增强模型压缩_Towards model compression for deep learning based speech enhancement...

    论文地址:面向基于深度学习的语音增强模型压缩 论文代码:没开源,鼓励大家去向作者要呀,作者是中国人,在语音增强领域 深耕多年 引用格式:Tan K, Wang D L. Towards model c ...

  4. 综述:基于深度学习的文本分类 --《Deep Learning Based Text Classification: A Comprehensive Review》总结(一)

    文章目录 综述:基于深度学习的文本分类 <Deep Learning Based Text Classification: A Comprehensive Review>论文总结(一) 总 ...

  5. 论文详读:LEMNA: Explaining Deep Learning based Security Applications

    我以我ppt的内容顺序介绍一下这篇论文,希望有错误的地方大家可以帮我指出嘻嘻 1.论文出处 论文名:LEMNA: Explaining Deep Learning based Security App ...

  6. 【论文学习笔记】《Parallel WaveNet: Fast High-Fidelity Speech Synthesis》

    Parallel WaveNet 论文学习 文章目录 Parallel WaveNet 论文学习 1 简介 2 WaveNet 介绍 3 Parallel WaveNet 介绍 4 概率密度蒸馏 4. ...

  7. Deep Learning论文笔记之(八)Deep Learning最新综述

    Deep Learning论文笔记之(八)Deep Learning最新综述 zouxy09@qq.com http://blog.csdn.net/zouxy09 自己平时看了一些论文,但老感觉看完 ...

  8. 【论文学习】《“Hello, It’s Me”: Deep Learning-based Speech Synthesis Attacks in the Real World》

    <"Hello, It's Me": Deep Learning-based Speech Synthesis Attacks in the Real World>论文 ...

  9. 综述论文翻译:A Review on Deep Learning Techniques Applied to Semantic Segmentation

    综述论文翻译:A Review on Deep Learning Techniques Applied to Semantic Segmentation 近期主要在学习语义分割相关方法,计划将arXi ...

  10. 论文翻译七:Adversarial Transfer Learning for Deep Learning Based Automatic Modulation Classification

    30天挑战翻译100篇论文 坚持不懈,努力改变,在翻译中学习,在学习中改变,在改变中成长- Adversarial Transfer Learning for Deep Learning Based ...

最新文章

  1. python使用matplotlib可视化线图(line plot)、自定义可视化图像的四个边框的色彩、可以分别设置矩形每一条边的色彩(change the axis color)
  2. Notepad2替代系统自带的记事本
  3. 怎么把项目推到gitlab上_Gitlab利用Webhook+jenkins实现自动构建与部署
  4. springboot优雅停机
  5. scrapy立面parse_立面设计模式–设计观点
  6. c语言分治算法求最大值,分治法找最大值(C語言)
  7. 俄国数学家称:“平行线可以相交”,却遭到质疑,死后12年被证实
  8. cocos2d-x 3.X (二)创建动起来的精灵
  9. SQLAlchemy Mapping Table Columns
  10. 带你过一遍:廖雪峰大神Git教程(建议收藏)
  11. DOIT多易教育简介
  12. python 大智慧股池_大智慧股票池
  13. JAVA8十大新特性详解
  14. 单细胞测序原理10X UMI Barcode
  15. #AR游戏--音之国度#初次简单的测试
  16. 移动APP测试用例设计实践经验分享
  17. 搭建SecureCRT
  18. 现在为什么很多企业都在使用终端安全管理系统?有什么好处...
  19. 深入理解JVM-GC
  20. 农业信息化让农民“心明眼亮”

热门文章

  1. U盘文件不删除情况下转换格式:
  2. 计算机如何永久删除文件无法找回,电脑被永久删除的文件怎么恢复?操作得当就能实现...
  3. VUE+ELEMENTUI el-upload照片墙手动上传多张图片 保存和修改功能前后端完整实现
  4. Socket -- 网络编程
  5. 上坤地产“换血”:佟文艳离职、周青等加入,业绩已开始下滑
  6. java数据结构之Set
  7. 鼎镁科技冲刺上交所:年营收18亿 拟募资13亿
  8. 记住!在看小电影前一定要检查下域名是不是 HTTPS 的
  9. 用超级计算机当游戏服务器,超级计算机做服务器 中国网游照样卡死你
  10. ftp服务器老是显示登录界面,登录ftp服务器总提示登陆框