【AM】Tacotron 2

Tacotron 2 是一个端到端的语音合成神经网络结构,是Tacotron的升级版,由两部分组成,一部分负责由character映射到mel谱,另一部分是修改过的Wavenet声码器,负责将mel谱映射成音频。Tacotron2实现了和groud Truth非常接近的自然度,MOS评测得分gd 4.58, tacotron2合成的音频 4.53。

为啥说是修改过的Wavenet?
原来Wavenet的输入为语言学特征、durations、F0, 这里采用了mel谱作为Wavenet的输入,文中发现这种方法明显地降低了Wavenet的size。

1. 模型结构

由两部分组成,一部分由循环神经网络,应用Attention,自回归地产生mel谱序列,另一部分是修改后的Wavenet,将mel谱序列映射成音频。如下图所示。
在这里插入图片描述

1.1 中间的特征表示

本文选择了mel谱作为两个部分之间的桥梁,这使得两个部分可以分别训练。mel谱比waveform sample更smooth,更容易训练。同时mel谱是对线性谱的一个非线性的映射,按照人耳的敏感特征,在低频分辨率比较高,在高频分辨率比较低,在合成中,语音也是集中在低频,高频噪声等不需要被高保真的建模,因此选用了mel谱作为中间的桥梁。

线性谱丢失了相位信息,可以通过Griffin-Lim算法重建。mel谱丢失了更多的信息,但是相比较语言学信息、F0、durations,mel谱是更low-level的特征,对于Wavenet来说,降低了建模的难度,这是本文提高音质的关键。

1.2 预测mel谱的网络结构

首先是mel谱特征的提取:50ms帧长,12.5ms帧移,文中提到也尝试了和原本Wavenet一样的Hop 5ms,但是发音问题明显增多了。f_min=125 Hz, f_max=7.6 kHz.

由一个encoder和一个带attention的decoder组成,输入的character首先经过一个512维的embedding(由三层5*1卷积+BN+RELU组成),然后经过双向的512units的BLSTM,即得到了encoder的输出。

decoder应用了location-sensitive attention,即当计算当前时间步的attention时,会累加上个时间步的attention,使得attention的位置一直保持单调前行,缓解了decoder因为softmax形式的atten造成的重复和skip。将encoder的输出和location vector project到128维度的hidden reprensentations,然后用于计算Attention probabily 。

Decoder 根据 encoder 的输出自回归地产生 mel 谱, 每次产生一帧。之前产生的mel谱序列,通过pre-net,然后经过2层单向LSTM,并与Attention 后出来的context vector concat, 经过projection 预测mel谱 ,同时该mel还会经过post-net同样也产生mel谱,采用 MSE loss 同时计算两个mel谱的 loss 能够帮助收敛。同时LSTM与Attention 后出来的context vector concat, 经过另一个projection之后,用于预测 stop token, 当stop token的概率超过了0.5时,则认为解码mel谱的过程已经结束了,已经得到了完整的音频。LSTM的训练采用了’Zoneout’策略,为了在每次inference的时候能够产生不完全一样的音频,在inference时将decoder pre-net的drop out 开到了0.5。

1.3 修改后的Wavenet声码器

为了满足12.5ms的hop,采用了两层上采样,同时采用 a 10-component mixture of logistic distributions (MoL)准则(不太清楚是什么)训练声码器。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值