【论文学习】《Neural Speech Synthesis with Transformer Network》

《Neural Speech Synthesis with Transformer Network》论文学习

  摘要

       尽管端到端神经文本到语音(TTS)方法(如Tacotron2)已经提出并取得了良好的性能,但它们仍然存在两个问题:(1)训练和推理效率低;(2)利用现有的递归神经网络(RNN)难以建模长依赖关系。受Transformer网络在神经机器翻译(NMT)中的成功启发,本文引入并采用多头注意机制来替代RNN结构,以及Tacotron2中原有的注意机制。在多头自注意的帮助下,并行构造编码器和解码器中的隐藏状态,提高了训练效率。同时,任意两个不同时间的输入通过自注意机制直接连接,有效地解决了远程依赖问题。我们的Transformer TTS网络使用音素序列作为输入,生成mel谱图,然后使用WaveNet声码器输出最终的音频结果。通过实验验证了该网络的效率和性能。在效率方面,我们的Transformer TTS网络可以比Tacotron2提高约4.25倍的训练速度。在性能方面,严格的真人测试表明,我们提出的模型达到了最先进的性能(优于Tacotron2,差距为0.048),非常接近真人质量(MOS4.39 vs 4.44)。
       

  1 介绍

       文本到语音(TTS)是一项非常重要的用户交互任务,旨在合成与人的录音难以区分的、可理解的、自然的音频。传统的TTS系统有两个组成部分:前端和后端。前端负责文本分析和语言特征提取,如分词、词性标注、多词消歧、韵律结构预测等;从前端构建基于语言特征的语音合成后端,如语音声学参数建模、韵律建模和语音生成。在过去的几十年里,连接式和参数式语音合成系统是主流技术。然而,它们都有复杂的管道,定义良好的语言特性通常是耗时的和特定的语言,这需要大量的资源和人力。此外,与人类语言相比,合成音频往往在韵律和发音上有小故障或不稳定,因此听起来不自然。
       
       近年来,随着神经网络的快速发展,提出了端到端生成文本到语音模型,如Tacotron (《Tacotron: A fully end-to-end text-to-speech synthesis model》)和Tacotron2 (《Natural tts synthesis by conditioning wavenet on mel spectrogram predictions》),通过用单一神经网络代替这些语言和声学特征的产生,简化了传统的语音合成流水线。TacotronTacotron2首先直接从文本生成mel谱图,然后通过声码器合成音频结果,如Griffin Lim算法(《Signal estimation from modified short-time fourier transform》)或WaveNet (《Wavenet: A generative model for raw audio》)。
       有了端到端神经网络,合成音频的质量大大提高,甚至在某些数据集上可以与人类录音相媲美。端到端神经TTS模型包含两个部分,编码器和解码器。给定输入序列(单词或音素),编码器试图将其映射到语义空间,生成编码器隐藏状态序列,解码器将这些隐藏状态作为具有注意机制的上下文信息,构造解码器隐藏状态,然后输出mel框架。对于编码器和解码器,通常使用递归神经网络(RNNs),如LSTM (《Long short-term memory》)和GRU (《Learning phrase representations using rnn encoderdecoder for statistical machine translation.》)。
       
       然而,RNN只能使用输入并按顺序生成输出,因为构建当前隐藏状态都需要先前的隐藏状态和当前的输入。顺序过程的特点限制了训练和推理过程的并行化能力。出于同样的原因,对于一个特定的框架,来自多个步骤的信息在多次重复处理后可能会有偏差。为了解决这两个问题,提出了Transformer (《Attention is all you need》)来替代NMT模型中的RNN
       
       受到这一思想的启发,本文结合Tacotron2Transformer的优点,提出了一种新颖的端到端TTS模型,该模型引入多头注意机制来替代编解码器中的RNN结构,以及普通的注意网络。自注意机制解除了对前一个隐藏状态的顺序依赖,提高了并行化能力,缓解了远程依赖问题。与编码器和解码器之间的普通注意相比,多头注意可以利用不同的注意头从不同方面构建上下文向量。以音素序列为输入,利用Transformer TTS网络生成语音谱图,利用WaveNet作为声码器进行语音合成。我们使用25小时的专业语音数据集进行实验,由测试人员对音频质量进行评估。评估结果表明,我们提出的模型在CMOS间隙为0.048的情况下优于原始Tacotron2,并且在人工记录(MOS)(4.44)的情况下达到了类似的性能(MOS 4.39)。与Tacotron2相比,Transformer TTS模型的训练速度提高了4.25倍。
       

  2 背景

       在本节中,我们首先介绍了序列到序列模型,然后简要介绍了Tacotron2Transformer,这是我们工作中的两个初步内容。
       

    2.1 序列到序列模型

       序列到序列模型(《Sequence to sequence learning with neural networks》,《Neural machine translation by jointly learning to align and translate》)转换输入序列 ( x 1 , x 2 , . . . , x T ) (x_1, x_2,..., x_T) (x1,x2,...,xT)转换为输出序列 ( y 1 , y 2 , . . . , y T ′ ) (y_1, y_2,..., y_{T^\prime}) (y1,y2,...,yT),每个预测的 y t y_t yt是基于所有之前预测的输出 ( y 1 , . . . , y t − 1 ) (y_1,..., y_{t-1}) (y1,...,yt1)。在大多数情况下,这两个序列长度不同 ( T ≠ T ′ ) (T \neq T^\prime) (T=T)。在NMT中,这种转换基于条件概率将一种语言的输入句子转换为另一种语言的输出句子 p ( y 1 , . . . y T ′ ∣ x 1 , . . . , x T ) p(y_1,...y_T^\prime|x_1, ...,x_T) p(y1,...yTx1,...,xT)
h t = e n c o d e r ( h t − 1 , x t ) (1) h_t = encoder(h_{t-1}, x_t) \tag{1} ht=encoder(ht1,xt)(1) s t = d e c o d e r ( s t − 1 , y t − 1 , c t ) (2) s_t = decoder(s_{t-1}, y_{t-1}, c_t) \tag{2} st=decoder(st1,yt1,ct)(2)        c t c_t ct是由注意机制计算出来的上下文向量:
c t = a t t e n t i o n ( s t − 1 , h ) (3) c_t = attention(s_{t-1}, \mathbf{h}) \tag{3} ct=attention(st1,h)(3)       因此 p ( y 1 , . . . y T ′ ∣ x 1 , . . . , x T ) p(y_1,...y_T^\prime|x_1, ...,x_T) p(y1,...yTx1,...,xT)可以通过
p ( y 1 , . . . y T ′ ∣ x 1 , . . . , x T ) = ∏ t = 1 T ′ p ( y t ∣ y < t , x ) (4) p(y_1,...y_T^\prime|x_1, ...,x_T) = \prod_{t=1}^{T^\prime}p(y_t|\mathbf{y_{<t}, x}) \tag{4} p(y1,...yTx1,...,xT)=t=1Tp(yty<t,x)(4)       与
p ( y t ∣ y < t , x ) = s o f t m a x ( f ( s t ) ) (5) p(y_t|\mathbf{y_{<t}, x}) =softmax(f(s_t)) \tag{5} p(yty<t,x)=softmax(f(st))(5)       式中 f ( ⋅ ) f(\cdot) f()为全连通层。对于翻译任务,该softmax函数是 f ( s t ) f(s_t) f(st)的所有维度之一,计算每个单词在词汇表中的概率。然而,在TTS任务中,不需要softmax函数,通过线性投影直接消耗解码器计算出的隐藏状态,从而获得所需的谱图帧。
       

    2.2 Tacotron2

       Tacotron2是一种直接从文本中合成语音的神经网络结构,如图1所示。输入的嵌入序列首先通过3CNN进行处理,提取较长时间的上下文,然后输入编码器,这是一个双向LSTM。前一个mel谱图帧(推理中的预测帧或训练时间中的黄金帧)首先用一个2层全连接网络(译码器前置网)进行处理,它的输出与前一个上下文向量连接,然后是一个2LSTM。该输出用于计算该时间步新的上下文向量,并将其与2LSTM的输出连接,分别以两种不同的线性投影预测mel谱图和停止标志。最后,将预测的mel谱图输入带有残差连接的5CNN,以细化mel谱图。
图1
       

    2.3 Transformer for NMT

       Transformer (《Attention is all you need》),如图2所示,是一个序列到序列网络,完全基于注意机制,完全不考虑复发和卷积。在最近的工作中,Transformer显示了非凡的结果,在NMT方面优于许多基于RNN的模型。它由两个组件组成:编码器和解码器,两者都是由几个标识块堆栈构建的。每个编码器块包含两个子网:一个多头注意和一个前馈网络,而每个解码器块包含一个额外的掩码多头注意与编码器块相比。编码器和解码器块都有残差连接和层标准化。
图2
       

  3 使用 Transformer 的神经 TTS

       与基于RNN的模型相比,在神经网络TTS中使用Transformer有两个优点。首先,由于译码器输入序列的帧可以以并行方式提供,因此它可以通过去除重复连接来实现并行训练。第二,自我关注提供了一个机会,将整个序列的全局上下文注入到每个输入帧中,直接构建长期依赖关系。Transformer缩短了向前和向后的路径长度,信号必须在输入和输出序列的任意位置组合之间遍历到1。这在神经TTS模型中有很大帮助,比如合成波的韵律,它不仅依赖于邻近的几个单词,而且还依赖于句子层次的语义。
       
       在本节中,我们将介绍我们的Transformer TTS模型的体系结构,并分析每个部分的功能。总体结构示意图如图3所示。
图3
       

    3.1 文本到音素转换器

       英语的发音有一定的规律,例如英语音节有开音节和闭音节两种。字母a在开音节中发成 ,在闭音节中发成æa:。在训练过程中,我们可以依靠神经网络来学习这种规律性。然而,当训练数据不够充分,有些异常出现的次数太少,神经网络很难学习到所有的规律。因此,我们制定了一个规则系统,并将其实现为一个文本到音素的转换,可以覆盖绝大多数情况。
       

    3.2 尺度化的位置编码

       Transformer不包含递归和卷积,因此如果我们打乱编码器或解码器的输入序列,我们将得到相同的输出。为了考虑序列的顺序,通过三角形位置嵌入注入帧的相对或绝对位置信息,如公式7所示:
P E ( p o s , 2 i ) = s i n ( p o s 10000 2 i d m o d e l ) (6) PE(pos, 2i) = sin(\frac {pos}{10000 \frac {2i} {d_{model}}}) \tag {6} PE(pos,2i)=sin(10000dmodel2ipos)(6) P E ( p o s , 2 i + 1 ) = c o s ( p o s 10000 2 i d m o d e l ) (7) PE(pos, 2i+1) = cos(\frac {pos}{10000 \frac {2i} {d_{model}}}) \tag {7} PE(pos,2i+1)=cos(10000dmodel2ipos)(7)       其中 p o s pos pos为时间步长索引, 2 i 2i 2i 2 i + 1 2i+ 1 2i+1为信道索引, d m o d e l d_{model} dmodel为每帧的向量维数。在NMT中,源语和目标语的嵌入都来自于语言空间,所以这些嵌入的尺度是相似的。这个条件在TTS场景中不存在,因为源域是文本域,而目标域是mel谱图,因此使用固定位置嵌入可能会对编码器和解码器的预网络(将在第3.3节和3.4节中描述)施加很大的限制。我们使用这些具有可训练权值的三角形位置嵌入,使这些嵌入能够自适应地适合编码器和解码器prenets输出的尺度,如公式8所示:
x i = p r e n e t ( p h o n e m e i ) + α P E ( i ) (8) x_i=prenet(phoneme_i)+\alpha PE(i) \tag{8} xi=prenet(phonemei)+αPE(i)(8)       其中, α \alpha α是可训练的权重。
       

    3.3 Encoder Pre-net

       在Tacotron2中,一个3CNN应用于输入文本嵌入,它可以模拟输入字符序列中的长期上下文。在Transformer TTS模型中,我们将音素序列输入到同一个网络中,称为Encoder Pre-net。每个音素有一个512维度的可训练嵌入,每个卷积层的输出有512个通道,然后是批处理归一化和ReLU激活,以及Dropout层。此外,由于ReLU的输出范围为 [ 0 , + ∞ ) [0,+\infty) [0+),我们在最终的ReLU激活后增加了一个线性投影,而这些三角形位置嵌入的每个维度都在 [ − 1 , 1 ] [-1,1] [1,1]。在非负嵌入中添加0中心位置信息会导致不以原点和伤害模型性能为中心的波动,这将在我们的实验中得到证明。因此我们增加了一个中心一致性的线性投影。
       

    3.4 Decoder Pre-net

       mel谱图首先被一个由两个完全连接的层(每个层有256个隐藏单元)和ReLU激活组成的神经网络所消耗,称为Decoder Pre-net,它在TTS系统中起着重要的作用。音素具有可训练的嵌入,因此音素的子空间是自适应的,而语音谱图的子空间是固定的。我们推断,译码器前置网负责将梅尔谱图投射到音素嵌入的同一子空间中,从而测量音素、梅尔帧对的相似性,从而使注意机制发挥作用。另外,也尝试了2个没有非线性激活的全连通层,但没有生成合理的对齐编码器和解码器隐藏状态的注意矩阵。在我们的另一个实验中,隐藏尺寸从256扩大到512,但这并没有产生显著的改进,而是需要更多的步骤来收敛。据此,我们推测mel谱图具有一个紧凑的低维子空间,256个隐藏单元足以适合它。这个猜想也可以在我们的实验中得到证明,在4.6节中,解码器的最终位置嵌入规模小于编码器的位置嵌入规模。此外,还像Encoder Pre-net一样增加了一个线性投影,不仅保证了中心的一致性,而且得到了与三角形位置嵌入相同的尺寸。
       

    3.5 Encoder

       在Tacotron2中,编码器是一个双向RNN。我们用章节2.3中描述的Transformer编码器来替换它。与原有的双向RNN相比,multi-head attention将一个注意分割成多个子空间,可以对多个不同方面的帧关系进行建模,并直接建立任意两帧之间的长时间依赖关系,使每一帧都考虑整个序列的全局上下文。这对于合成音频韵律至关重要,特别是当句子很长时,因为在我们的实验中生成的样本听起来更流畅和自然。另外,采用多头注意代替原有的双向RNN,可以实现并行计算,提高训练速度。
       

    3.6 Decoder

       在Tacotron2中,解码器是具有位置敏感注意的2RNN (《Attention-based models for speech recognition》)。我们用2.3节中描述的Transformer解码器替换它。使用Transformer解码器有两个主要区别,一是添加了自我注意,这可以带来类似于第3.5节所述的优点,二是使用多头注意而不是位置敏感注意。多头注意可以从多个角度集成编码器的隐藏状态,生成更好的上下文向量。考虑到之前解码器时间步长的注意矩阵,Tacotron2中使用的位置敏感注意可以鼓励模型产生一致的注意结果。我们试图修改基于点积的多头注意力的位置敏感,但这使训练时间加倍,很容易耗尽记忆。
       

    3.7 Mel Linear, Stop Linear and Post-net

       与Tacotron2一样,我们使用两个不同的线性投影分别预测mel谱图和停止标志,并使用5CNN产生残差来细化重构mel谱图。值得一提的是,对于Stop linear,在每个序列的末尾只有一个正采样,这意味着Stop,而在其他帧的末尾则有数百个负采样。这种不平衡可能导致不可阻挡的推论。在计算二元交叉熵损失时,对尾部正停止令牌施加正权值(5.0 - 8.0),有效地解决了该问题。
       

  4 实验

       在本节中,我们用25小时的专业语音对测试我们提出的Transformer TTS模型,并由人类测试人员在MOSCMOS中评估音频质量。
       

    4.1 训练设置

       我们使用4Nvidia Tesla P100来训练我们的模型与内部的美国英语女性数据集,其中包含25小时的专业演讲(17584 <text, wave>)对,去除一些太长的波)。每个波的头部和尾部分别保持50ms100ms的沉默。由于训练样本的长度变化很大,固定的批大小要么是将长样本添加到批量较大的批中会耗尽内存,要么是将短样本分割到批量较小的批中会浪费并行计算能力。因此,我们使用动态批量大小,其中mel谱图帧的最大总数是固定的,并且一个批次应该包含尽可能多的样品。因此,平均每个GPU单批有16个样本。我们尝试在单个GPU上进行训练,但过程非常不稳定,甚至失败了,因此合成的音频就像胡言乱语,难以理解。即使训练没有失败,合成波的质量也很差,韵律也很奇怪,甚至还会出现音素缺失等严重问题。因此,我们采用多GPU训练来扩大批量,有效地解决了这些问题。
       

    4.2 文本到音素转换和预处理

       Tacotron2使用字符序列作为输入,而我们的模型是在预归一化的音素序列上训练的。单词和音节的边界,标点也包括作为特殊的标记。获得训练音素序列的处理流程包括句子分离、文本归一化、分词,最后获得语音。通过文本到音素的转换,大大减少了发音错误的问题,特别是那些在我们的训练集中很少发生的发音。
       

    4.3 文本到音素转换和预处理

       我们训练了一个以mel谱图为条件的WaveNet,并使用相同的内部美英女性数据集作为本文所有模型的声编码。ground truth音频的采样率为16000ground truth mel声谱图的帧率(帧每秒)为80。我们的自回归WaveNet包含2QRNN层和20个膨胀层,所有剩余通道和膨胀通道的尺寸均为256QRNN最终输出的每一帧都复制200次,使其具有与音频样本相同的空间分辨率,并以20个放大层为条件。
       

    4.4 训练时间比较

       我们的模型可以并行训练,因为帧之间没有重复的联系。在我们的实验中,我们的模型在单个训练步骤中消耗的时间为0.4s,比相同批量(每批16个样本)的Tacotron2 (1.7s)快4.25倍。但是,由于我们模型的参数量几乎是Tacotron22倍,与Tacotron24.5天相比,仍然需要3天的时间收敛。
       

    4.5 评估

       我们从我们的内部数据集中随机选取38个不同长度(与训练集没有重叠)的固定样本作为评价集。我们对这38个由不同模型(包括录音)生成的句子进行平均选项得分(MOS)评估,在这种情况下,我们可以保持文本内容的一致性,排除其他干扰因素,因此只检查音频质量。为了提高结果的准确性,我们将整个MOS测试分成几个小测试,每个小测试包括来自我们的最佳模型的一组,来自比较模型的一组和一组记录。这些MOS测试是严格和可靠的,因为每个音频由至少20名测试者听,他们都是以英语为母语的(相比之下,Tacotron28名测试者),每个测试者听不到30个音频。
       
       我们训练了一个Tacotron2模型,使用我们内部的美式英语女性数据集作为基线(也使用音素作为输入),并获得了与我们的模型相同的MOS。因此,我们测试了由Tacotron2生成的样本与我们的模型之间的比较平均选项得分(CMOS),以获得更精细的对比。在比较平均选项得分(CMOS)测试中,测试者每次听两段音频(由Tacotron2和我们的模型生成的相同文本),并使用 [ − 3 , 3 ] [-3,3] [3,3]间隔为1的分数来评估后者与前者的感觉。这两个音频的顺序是随机变化的,所以测试者不知道它们的来源。我们的模型以0.048的差距胜出,具体结果如表1所示。
表1

       我们还分别选取了我们的模型和Tacotron2生成的相同文本的mel谱图,并与ground truth进行比较,如图4中的第123列所示。我们可以看到,我们的模型在重建红色矩形的细节方面做得更好,而Tacotron2忽略了高频区域的细节纹理。
图4
       

    4.6 评估

       在本节中,我们研究了网络架构的详细修改,并进行了几个实验来展示我们的改进。
       
       中心复位 Pre-Net 输出
       如第3.3节和3.4节所述,我们重新投影编码器和解码器prenets输出,使其与位置嵌入的中心保持一致。相比之下,我们在编码器Pre-Net中没有增加线性投影,在解码器前网中增加了一个具有ReLU激活的全连接层。结果表明,中心一致的位置嵌入性能略好,如表2所示。
表2
       
       不同的位置编码方法
       我们将位置信息注入编码器和解码器的输入序列中,如式8所示。从图5可以看出,编码器和解码器的最终位置嵌入尺度是不同的,而表3可以看出,具有可训练尺度的模型表现稍好。我们认为可训练尺度放宽了对编码器和解码器预网络的约束,使得位置信息对不同的嵌入空间更具适应性。
图5
表3
       我们还尝试在序列中添加绝对位置嵌入(每个位置都有一个可训练的嵌入),这也可以工作,但有一些严重的问题,如当序列变长时丢失音素。这是因为长样本在训练集中相对较少,大索引的嵌入很难训练,因此长样本中的后帧位置信息不准确。
       
       不同超参数模型
       原Transformer的编码器和解码器都是由6层组成,每个多头注意有8头。我们比较了不同层数和头数下的性能和训练速度,如表456所示。我们发现,减少层数和头部数都提高了训练速度,但对模型性能有不同程度的损害。
表4、5
表6
       我们注意到,在3层和6层模型中,只有从开始的2层的某些头部的对齐是可解释的对角线,这表明输入和输出序列之间的近似对应,而下面的层是无序的。即使如此,更多的层仍然可以降低损耗,改善合成的mel谱图和提高音频质量。原因在于,在不同层之间存在残差连接的情况下,我们的模型以泰勒展开的方式拟合目标变换:初始项以低排序项最多,而后续项可以细化函数。因此,增加更多的层会使合成的波更自然,因为它能更好地处理谱图细节(如图44所示)。由于每层的产量更少,减少头部可以稍微减少训练时间成本,但也会损害性能。
       

  5 相关工作

       传统的语音合成方法可以分为两类:连接系统和参数系统。串联TTS系统(《Unit selection in a concatenative speech synthesis system using a large speech database》,《Automatically clustering similar units for unit selection in speech synthesis.》)将原始波分割成小单元,并通过一些算法将它们缝合起来,例如Viterbi (《Error bounds for convolutional codes and an asymptotically optimum decoding algorithm》),然后是信号处理方法(《Diphone synthesis using an overlap-add technique for speech waveforms concatenation》,《An overlap-add technique based on waveform similarity (wsola) for high quality time-scale modification of speech》)产生新的浪潮。参数TTS系统(《Speech parameter generation algorithms for hmm-based speech synthesis》,《Statistical parametric speech synthesis》,《Statistical parametric speech synthesis using deep neural networks》,《Speech synthesis based on hidden markov models》)将语音波转换为声谱图,并使用声学参数,如基频和持续时间,合成新的音频结果。
       
       传统的语音合成方法需要广泛的领域专业知识,可能包含脆弱的设计选择。Char2Wav (《Char2wav: End-to-end speech synthesis》)将前端和后端集成为一个seq2seq (《Sequence to sequence learning with neural networks》,《Neural machine translation by jointly learning to align and translate》)模型并以端到端方式学习整个过程,预测声学参数,然后使用SampleRNN (《Samplernn: An unconditional end-to-end neural audio generation model》)作为声码器。但是对于音频来说,声学参数仍然是中间的,因此Char2Wav并不是一个真正的端到端TTS模型,他们的seq2seqSampleRNN模型需要分别进行预训练,而Tacotron 是一个端到端生成文本到语音模型,可以通过<text, spectrogram>进行训练。谱图对直接从零开始,并通过Griffin Lim算法合成语音音频与生成的谱图。
       基于TacotronTacotron2 是一个统一的、完全的神经模型,通过Tacotron风格的神经网络生成mel谱图,然后通过改进的WaveNet合成语音音频。WaveNet是一种用于波形合成的自回归生成模型,由一堆扩展卷积层组成,处理时间分辨率非常高(如24000采样率)的原始音频,但推理花费的时间非常大。该问题通过Parallel WaveNet (《Parallel wavenet: Fast high-fidelity speech synthesis》)基于逆自回归流(IAF) (《Improved variational inference with inverse autoregressive flow》)解决,达到1000倍实时速度。最近,ClariNet(《Clarinet: Parallel wave generation in end-to-end text-to-speech》),一种完全卷积的text-to-wave神经结构,被提出以实现快速的端到端从头训练。此外,VoiceLoop (《Voiceloop: Voice fitting and synthesis via a phonological loop》)是一种替代的神经TTS方法,基于野外捕获的样本,如公众演讲的音频,甚至是不准确的自动转录本,来模仿一个人的声音。
       
       另一方面,Transformer被提出用于神经机器翻译(NMT),并取得了最先进的结果。以往的NMT模型主要是基于RNN (《Neural machine translation by jointly learning to align and translate》)或基于CNN(如ConvS2S (《Convolutional sequence to sequence learning》), ByteNet (《Neural machine translation in linear time》))的神经网络。对于基于RNN的模型,对于每个样本,训练和推理都是顺序的,而基于CNN的模型支持并行训练。基于RNNCNN的模型都很难学习遥远位置之间的依赖关系,因为RNN必须穿越很长的路径,而CNN必须堆栈许多卷积层来获得一个大的接受域,而Transformer在其编码器和解码器中使用自我注意解决了这个问题。自我注意的能力也在SAGAN (《Self-attention generative adversarial networks》)中得到了证明,没有自我注意的原始GAN无法捕捉在某些类中持续出现的几何或结构模式(例如,狗通常画的时候没有明确的分开的脚)。通过添加自我注意,这些失败案例大大减少。此外,提出了多头注意,以获得多个子空间中的不同关系。最近,Transformer已被应用于自动语音识别(ASR) (《A comparison of modeling units in sequence-tosequence speech recognition with the transformer on mandarin chinese》,《Syllable-based sequence-to-sequence speech recognition with the transformer in mandarin chinese》),证明了它除了自然语言处理外,还具有声学建模的能力。
       

  6 结论与未来工作

       提出了一种基于Tacotron2Transformer的神经TTS模型,并对其进行了一些修改,使Transformer适应神经TTS任务。该模型生成的音频样本质量非常接近人类记录,并实现了并行训练和远程依赖学习,从而加快了训练速度,使音频韵律更加流畅。我们发现批量大小对训练的稳定性至关重要,而更多的层可以细化生成的mel谱图的细节,特别是高频区域,从而提高模型的性能。
       
       即使Transformer实现了并行训练,自回归模型仍然存在推理缓慢和探索偏差两个问题。慢推断是由于推断当前帧时对前一帧的依赖,推断是顺序的,而探索偏差则来自自回归误差累积。我们可以通过建立一个非自回归模型来同时解决这两个问题,这也是我们目前正在进行的研究。
       

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值