TTS论文:Tacotron1/2阅读

研一阅读论文汇总

本人的研究方向为音频伪造(TTS)和音频水印。正逢暑假时期,我尝试把研一时期看过的论文都以博客的形式进行记录,对自己这一年来的学习做一个总结。在这些文章中我还会对某些理解较深的模型会有深入代码层面的剖析。如有对论文和代码上的理解不到位或理解错误之处烦请各位读者斧正。

TTS模型
Tacotron1/2


前言

语音合成,也被成为从文本到语音(Text-to-Speech,TTS),其目标在于通过给定的文本内容生成自然语言。随着深度学习技术的不断发展,近年来基于神经网络的语音合成系统已大大改善了合成语音的质量。这些系统也已被广泛应用于智能客服、虚拟助手、语音交互和有声读物等场景。在本文中,作者主要介绍2017和2018年谷歌提出的两个端到端(end-to-end)TTS模型,分别被称为Tacotron和Tacotron2。


一、TTS系统的组成部分

TTS系统可以被系统地划分为以下三个部分:文本前端声学模型声码器文本前端的作用为:从文本中提取发音和韵律信息,起到文本标准化、音素转换和韵律预测三个作用,文字通过文本前端后得到相对应的语言学特征。声学模型通过语言学特征生成声学特征。声码器通过声学特征合成语音信号。TTS系统的发展经过了统计参数合成基于神经网络的TTS全端到端TTS。不同发展过程中的模型架构见下图。具体的关于TTS系统的发展历程,可以参见2021年微软亚研院所发布的详尽TTS综述
不同TTS系统构建方法下的系统框架

二、Tacotron:Towards end-to-end Speech Synthesis

Tacotron论文链接

2.1 背景

现有(2017年时)的TTS模型系统复杂(包括了文本前端、声学特征预测模型和声码器),这些不同系统之间的误差会叠加,进而导致整个TTS系统的误差增大,难以训练。因此Tacotron提出了一个端到端的TTS模型。相较于传统包含了三个系统的TTS模型,端到端的模型存在以下优势:

  1. 减轻对复杂的特征工程的需求
  2. 端到端的模型更加鲁棒
  3. 更容易适应不同的目标说话人,不同的语音语种

2.2 模型简述

模型的主要架构如下图所示,我将根据论文和自己的理解对模型的各个模块进行拆分分析
Tacotron模型架构

2.2.1 Encoder

Encoder的目标是将文本字符转化为连续的文本序列表示。Character embedding代表了所需要生成语音的文本,这些文本以one-hot向量的形式存在于Character embedding中。Pre-net采用非线性变换和一个带有dropout能力的bottlenect layer对Character embedding进行预处理,Pre-net的存在有助于网络收敛,并能提高泛化效果(个人感觉Pre-net的存在是炼丹的成果)。CBHG模块将Pre-net输出转换为注意力模块使用的表示。与标准的多层RNN编码器相比,这种基于CBHG的编码器不仅减少了过拟合,还减少了错误发音。
Encoder

CBHG模块:用于在序列中提取特征。 CBHG中包括了一组一维卷积滤波器,残差连接,以及过一组Highway layers和双向门控递归神经网络(Bidirectional RNN)
CBHG模块

2.2.2 Decoder

Decoder的主要训练目标并非是频谱图,而是Seq2seq序列。 论文中认为,Decoder拥有直接预测频谱图的能力,但是本文中其Decoder的主要目标为学习语音信号与文本的配对。因此频谱对于Decoder来说是一个相对于冗余的表示。简单来说,频谱对于Decoder是一个很强的目的,就像是你想让高中生去学数分,他们可以学但是没必要。因此在本文中,Decoder的主要训练目标是生成Seq2seq序列。这里的Seq2seq目标更准确地来说是80-band梅尔谱图,再通过CBHG生成Linear-scale spectrogram,作为声码器的输入。
在这里插入图片描述

2.2.3 Vocoder

Vocoder的作用:将频谱图转化为可听的音频。 Tacotron中采用了一个比较古老的声码器——Griffin-Lim,因此Tacotron2在声码器方面进行了相应的改进,使用更优秀的声码器来提高生成音频的质量

2.3 实验结果及contribution

可以看到,该模型和当时的SOTA模型相比并没有优势,其主要贡献在于提出了一个端到端的TTS模型

实验Mos评分


三、Tacotron2:Natural TTS Synthesis by conditioning WaveNET on Mel-Spectrogram Predictions

Tacotron2论文链接

3.1 背景

前文中Tacotron的提出,为TTS提供了端到端生成的可行方法。Tacotron2模型在Tacotron的基础上,对其在生成语音质量上进行了优化。

3.2 模型简述(与Tacotron之间的区别)

Tacotron2和Tacotron之间的主要区别在于:

  1. 声码器采用了一种类似WaveNet的架构,比原先的Griffin-Lim声码器的能力更强;
  2. 采用卷积网络和双向LSTM来代替CBHG;
  3. 额外采用了5层的CNN作为后处理网络,对生成的Mel-Spectrogram进行进一步优化。

在这里插入图片描述

3.3 实验结果和contribution

可以明显看到,Tacotron2在使用WaveNet作为声码器后,其MOS评分已经和人类的真实语音的MOS评分不相上下。
在这里插入图片描述
既然使用了WaveNet,那WaveNet也是需要训练的,那么训练数据采用Ground truth还是模型生成的虚假语音呢?下面这个表格体现出了在不同训练情况下生成语音的MOS评分。可以发现在训练时采用模型生成的语音取得了更好的效果。论文作者认为这是由于训练和生成过程中的一致性所导致的。
在这里插入图片描述
下表则体现出Decoder生成Mel-spectrogram和Linear spectrogram在生成语音上的差别,很明显生成Mel-spectrogram的效果更好。
在这里插入图片描述


总结

本文主要讲述了Tacotron和Tacotron2两个模型,较为详细地介绍了Tacotron和Tacotron2模型各个模块的作用,以及Tacotron2相较于Tacotron的改进点。并介绍了一下实验结果。希望对自己和各位读者的论文阅读有所帮助

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值