语音合成Parallel Neural Text-to-Speech论文阅读

语音合成||Parallel Neural Text-to-Speech论文阅读

在这里插入图片描述

论文地址:https://arxiv.org/pdf/1905.08459.pdf

开源代码:https://github.com/ksw0306/WaveVAE(复现代码,并非作者团队提交)

论文《Parallel Neural Text-to-Speech》由Kainan Peng、Wei Ping、Zhao Song、Kexin Zhao发表,该团队来自百度深度学习研究院。

一、简介

​ 在此文,作者团队提出了TTS的第一个非自回归seq2seq模型ParaNet,它是全卷积,并将文本转换为Mel频谱图,以逐层的方式迭代地重新确定文本和频谱图之间的注意力对齐。此外,作者还探索了一种新的方法(WaveVAE)从头开始训练IAF(一种特殊的归一化流)作为原始波形的生成模型,这避免了从单独训练的WaveNet中进行蒸馏的需要。

​ TTS系统,也称语音合成,长期以来一直是各种应用程序中的重要工具,例如人机交互,虚拟助理等等。传统的TTS技术的实现方法主要有两种:“拼接法”和“参数法”。

​ 之前很多最先进的TTS系统都是基于自回归模型。但是自回归模型的自回归性质使得它们在合成时非常慢。还有,基于RNN的自回归模型,在训练和合成时缺乏平行性。基于CNN的自回归模型,可以在训练时启用并行处理,但它们仍然在合成时顺序运行,因为必须先生成每个输出元素,然后才能在下一个时间步将其作为输入传入。

在这里插入图片描述

​ 图(a)自回归架构 图(b)非自回归架构

二、自回归seq2seq模型

作者的TTS系统有两个组成部分:
(1)seq2seq模型(Text->Mel)

​ (2)声码器(Mel->Waveform)

自回归seq2seq模型由三个部分组成:

1、编码器(encoder):卷积编码器,它接受文本输入并将其编码为内部隐藏表示。

2、解码器(decoder):一种因果卷积解码器,使用注意机制对编码器进行解码,对输入的频谱图进行预处理。

3、转换器(converter):非因果卷积处理网络,使用过去和未来的上下文信息处理来自解码器的隐藏表示。它可以实现双向处理。

三、非自回归seq2seq模型

图1网络架构

​ 图1 网络架构

1、编码器:与自回归模型相同的编码器结构。

2、解码器:由K个注意块组成,使用非因果卷积块来利用未来的上下文信息,并预测mel频谱图损失L1。

(这里没有转换器,因为非自回归模型的解码器已经使用非因果卷积块。自回归模型使用转换器的主要动机就是基于非因果卷积提供的双向上下文信息来重新确定解码器预测。)

四、注意机制(Attention Mechanism)

最早在图像领域上提出,研究的动机是收到人类注意力机制的启发,人们在进行观察图像的时候,其实并不是一次就把整幅图像的每个位置的像素都看过,大多是根据需求将注意力集中到图像的特定部分,而且人类会根据之前观察的图像学习到未来要观察图像注意应该集中的位置。Attention 在NLP中其实可以看成一种自动加权,它可以把两个你想联系起来的不同模块,通过加权的形式联系。不过NLP中的attention机制还是有所区别的,它基本上还是需要计算所有处理的对象,并额外用一个矩阵去存储其权重,其实增加了开销,而不是像人类一样可以忽略不想关注的部分,只去处理关注部分。本文的非自回归解码器采用点积注意机制,由K个注意块组成,第一个注意块为下一个基于注意力的层的卷积块提供输入。

五、注意蒸馏(Atttention Distilation)

学生——教师设置(student-teacher),怎样让一个网络把自己学过的知识传授给另一个网络?这里,作为学生的网络一般比作为老师的网络更加简单,但是可以凭借这简单的结构学到老师的精华,于是这种在网络间传授知识的过程就被称作蒸馏。一般来说,蒸馏的过程是让学生网络的输出部分尽可能逼近老师的输出分布。将非自回归ParaNet和预训练。

自回归模型的注意分布之间的交叉熵最小化。此处的注意力损失为:

在这里插入图片描述

六、位置编码(Positional Encoding)

对应时间位置处的文本表示,经过attention block中的attention函数,每个query映射的(key,value)文本表示。

在这里插入图片描述位置速率的设置:
在这里插入图片描述

七、注意掩蔽(Attention Masking)

对于来自解码器的每个query,不是在整组编码器key向量上计算softmax,而是仅在目标位置为中心的固定窗口上计算softmax并且向前或向后几个时间步长。这种策略减少了严重的注意力错误(例如重复或跳过单词)。

目标位置:
在这里插入图片描述

八、WaveVAE

WaveVAE是一个声码器(vocoder),其作用是将Mel频谱图转换成声音(Waveform)。因为使用的是VAE(变分自动编码器)框架,所以叫WaveVAE。

在这里插入图片描述

WaveVAE的编码器由高斯自回归WaveNet参数化,将真实音频x映射到相同长度的潜在表示z。

(1)编码器后部构造

在这里插入图片描述

(2)解码器的构造

在这里插入图片描述

(3)VAE objective

最大化ELBO,就是最小化KL散度,KL散度的值越小,就代表q,p的分布越接近,即合成音频与真实的音频越接近。

在这里插入图片描述

(4)STFT损失

(1)使用编码器在真实音频和重建音频之间的STFT损失。

(2)使用解码器在真实音频和合成音频之间的STFT损失。

目的是提高语音的质量和减少重建和合成音频之间的差距。

(5)最终损失

​ 本文定义的最终损失为之前所涉及的所有损失的线性组合:

在这里插入图片描述

九、实验

(1)错误计数(都使用Griffin-Lim声码器)

在这里插入图片描述

可以看出,无论是在有注意力掩蔽或者在没有注意力掩蔽的情况下,ParaNet的总失误次数都比Deep Voice 3的总失误次数要少。

(2)各种声码器的比较(都使用相同的高斯IAF结构)

在这里插入图片描述
可以看出,在使用非自回归架构(ParaNet)的WaveVAE(recons.)比使用自回归架构的WaveVAE(prior)的MOS值比较高,而且达到了与WaveNet相当的水平。

(3)组合比较(seq2seq模型+声码器)

在这里插入图片描述

结果1和4对比,都使用WaveNet声码器,MOS所差无几。

结果2和5对比,都使用ClariNet声码器,MOS相差也不大。

结果3和6对比,使用ParaNet比使用Deep Voices 3的会低较多,一部分原因是因为预测的Mel频谱图与真实的Mel频谱图之间的有差别。

但是,在语音质量没有明显下降的情况下,使用ParaNet(0.012s)的声码器在合成音频的时候会比使用自回归架构(1.12s)的加速46.7倍。

十、结论

(1)提出了第一个TT系统中的非自回归seq2seq模型

(2)提出了一种新方法WaveVAE

(3)ParaNet在合成 时带来了46.7倍的加速(Deep Voice 3)

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值