CN117043855A - 无监督并行Tacotron非自回归和可控的文本到语音 - Google Patents
无监督并行Tacotron非自回归和可控的文本到语音 Download PDFInfo
- Publication number
- CN117043855A CN117043855A CN202180096036.2A CN202180096036A CN117043855A CN 117043855 A CN117043855 A CN 117043855A CN 202180096036 A CN202180096036 A CN 202180096036A CN 117043855 A CN117043855 A CN 117043855A
- Authority
- CN
- China
- Prior art keywords
- sequence
- phoneme
- representation
- spectrogram
- embedding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 45
- 238000012549 training Methods 0.000 claims abstract description 43
- 230000005236 sound signal Effects 0.000 claims description 70
- 239000011159 matrix material Substances 0.000 claims description 64
- 230000006870 function Effects 0.000 claims description 48
- 230000015654 memory Effects 0.000 claims description 32
- 238000012545 processing Methods 0.000 claims description 29
- 238000001228 spectrum Methods 0.000 claims description 18
- 238000013518 transcription Methods 0.000 claims description 9
- 230000035897 transcription Effects 0.000 claims description 9
- 238000003780 insertion Methods 0.000 claims description 8
- 230000037431 insertion Effects 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 8
- 238000005070 sampling Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 3
- 238000013528 artificial neural network Methods 0.000 description 32
- 230000004913 activation Effects 0.000 description 15
- 230000008569 process Effects 0.000 description 11
- 238000004590 computer program Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000001143 conditioned effect Effects 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000001537 neural effect Effects 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 230000002194 synthesizing effect Effects 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 230000008447 perception Effects 0.000 description 3
- 230000000306 recurrent effect Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 2
- 230000008451 emotion Effects 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003595 spectral effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001755 vocal effect Effects 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000002028 premature Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002459 sustained effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/04—Details of speech synthesis systems, e.g. synthesiser structure or memory management
- G10L13/047—Architecture of speech synthesisers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/04—Details of speech synthesis systems, e.g. synthesiser structure or memory management
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/18—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Signal Processing (AREA)
- Probability & Statistics with Applications (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Machine Translation (AREA)
Abstract
一种用于训练非自回归TTS模型(300)的方法(600)包括获得与变分嵌入(220)级联的编码文本序列(219)的序列表示(224)。方法还包括预测由编码文本序列表示的每个音素的音素持续时间(240)。方法还包括,基于预测音素持续时间,学习区间表示和辅助注意力上下文表示以及使用区间表示和辅助注意力上下文表示将序列表示上采样为上采样输出(258)。方法还包括,基于上采样输出针对编码文本序列生成一个或多个预测梅尔频谱图序列(302)。方法还包括基于预测梅尔频谱图序列和参考梅尔频谱图序列(202)来确定最终频谱图损失(280)以及基于最终频谱图损失来训练TTS模型。
Description
技术领域
本公开涉及无监督并行tacotron非自回归且可控的文本到语音。
背景技术
文本到语音(TTS)系统向用户大声朗读数字文本并且在移动设备上变得越来越流行。某些TTS模型旨在合成语音的各个方面(诸如说话风格),以产生听起来类似人类、自然的语音。TTS模型中的合成是一个一对多映射问题,因为针对文本输入的不同韵律能够存在多种可能的语音输出。许多TTS系统利用基于先前的值来预测当前值的自回归模型。虽然自回归TTS模型能够合成文本并且生成高度自然的语音输出,但所需的数百次计算降低了推断过程中的效率。
发明内容
本公开的一个方面提供了一种计算机实现的方法,当该方法在数据处理硬件上施行时,使数据处理硬件执行用于训练非自回归文本到语音(TTS)模型的操作。操作包括获得与变分嵌入级联的编码文本序列的序列表示。操作还包括,使用持续时间模型网络,基于序列表示来预测由编码文本序列表示的每个音素的音素持续时间。操作包括,基于预测音素持续时间,使用以序列表示为条件的第一函数来学习区间表示,以及使用以序列表示为条件的第二函数来学习辅助注意力上下文表示。操作还包括使用区间表示矩阵和辅助注意力上下文表示将序列表示上采样为指定帧的数量的上采样输出。操作还包括,作为来自包括一个或多个自注意力块的堆栈的频谱图解码器的输出,并且基于上采样输出,针对编码文本序列生成一个或多个预测梅尔频谱图序列。操作还包括基于一个或多个预测梅尔频谱图序列和参考梅尔频谱图序列来确定最终频谱图损失,并且基于最终频谱图损失来训练TTS模型。
本公开的实施方式可以包括以下可选特征中的一个或多个。在一些实施方式中,第一函数和第二函数各自包括相应的多层基于感知的可学习函数。操作可以进一步包括基于预测音素持续时间和平均音素持续时间来确定全局音素持续时间损失。这里,训练TTS模型是进一步基于全局音素持续时间损失。在一些示例中,基于最终频谱图损失和全局音素持续时间损失来训练TTS模型包括训练持续时间模型网络以预测每个音素的音素持续时间,而不使用从外部对准器提取的受监督音素持续时间标签。
在一些实施方式中,操作进一步包括,使用持续时间模型网络,通过基于由编码文本序列表示的每个音素的预测音素持续时间来生成相应的开始和结束边界,基于由编码文本序列表示的音素的数量和参考梅尔频谱图序列中的参考帧的数量,将针对每个音素生成的相应的开始和结束边界映射到相应的网格矩阵。这里,学习区间表示是基于从开始和结束边界映射的相应的网格矩阵,并且学习辅助注意力上下文是基于从开始和结束边界映射的相应的网格矩阵。将序列表示上采样为上采样输出可以包括确定区间表示矩阵和序列表示的乘积,确定区间表示矩阵和辅助注意力上下文表示的爱因斯坦求和(einsum),以及对区间表示矩阵和序列表示的乘积以及einsum的投影求和以生成上采样输出。
在一些实施方式中,操作进一步包括:接收包括参考音频信号和对应的输入文本序列的训练数据,参考音频信号包括口头话语,并且输入文本序列对应于参考音频信号的转录;使用残差编码器将参考音频信号编码为变分嵌入,该变分嵌入从参考音频信号中解开风格/韵律信息;使用文本编码器将输入文本序列编码为编码文本序列。在一些示例中,残差编码器包括全局变分自动编码器(VAE)。在这些示例中,将参考音频信号编码成变分嵌入包括从参考音频信号中采样参考梅尔频谱图序列以及使用全局VAE将参考梅尔频谱图序列编码成变分嵌入。可选地,残差编码器可以包括音素级细粒度变分自动编码器(VAE)。这里,将参考音频信号编码为变分嵌入包括:从参考音频信号中采样参考梅尔频谱图序列;将参考梅尔频谱图序列与从输入文本序列提取的音素序列中的每个音素对准;使用音素级细粒度VAE并且基于将参考梅尔频谱图序列与音素序列中的每个音素对准,编码音素级变分嵌入序列。
残差编码器包括轻量级卷积(LConv)块的堆栈,LConv块的堆栈中的每个LConv块可以包括门控线性单元(GLU)层,LConv层,其被配置为接收GLU层的输出,残差连接,其被配置为级联LConv层的输出与GLU层的输入,以及最终前馈层,其被配置为接收级联LConv层的输出与GLU层的输入的残差连接作为输入。在一些实施方式中,操作进一步包括:级联编码文本序列、变分嵌入和表示发出参考音频信号的参考说话者的身份的参考说话者嵌入;以及基于持续时间建模网络接收编码文本序列、变分嵌入和参考说话者嵌入的级联作为输入来生成序列表示。在一些示例中,输入文本序列包括音素序列。在这些示例中,将输入文本序列编码为编码文本序列包括:从音素查找表接收在音素序列中的每个音素的相应的嵌入;针对音素序列中的每个音素,使用文本编码器的编码器预网神经网络来处理相应的嵌入以生成音素的相应的变换后的嵌入;使用一组卷积块来处理相应的变换后的嵌入以生成卷积输出;以及使用自注意力块的堆栈对卷积输出进行处理以生成编码文本序列。可选地,自注意力块堆栈中的每个自注意力块都包括相同的轻量级卷积(LConv)块。自注意力块堆栈中的每个自注意力块都包括相同的变换器块。
本公开的另一方面提供了一种用于训练非自回归文本到语音(TTS)模型的系统,该系统包括数据处理硬件和存储指令的存储器硬件,该指令当在数据处理硬件上施行时,使数据处理硬件执行操作。操作包括获得与变分嵌入级联的编码文本序列的序列表示。操作还包括,使用持续时间模型网络,基于序列表示来预测由编码文本序列表示的每个音素的音素持续时间。操作包括,基于预测音素持续时间,使用以序列表示为条件的第一函数来学习区间表示,以及使用以序列表示为条件的第二函数来学习辅助注意力上下文表示。操作还包括使用区间表示矩阵和辅助注意力上下文表示将序列表示上采样为指定帧的数量的上采样输出。操作还包括,作为来自包括一个或多个自注意力块的堆栈的频谱图解码器的输出并且基于上采样输出,针对编码文本序列生成一个或多个预测梅尔频谱图序列。操作还包括基于一个或多个预测梅尔频谱图序列和参考梅尔频谱图序列来确定最终频谱图损失,并且基于最终频谱图损失来训练TTS模型。
本公开的实施方式可以包括以下可选特征中的一个或多个。在一些实施方式中,第一函数和第二函数各自包括相应的多层基于感知的可学习函数。操作还可以包括基于预测音素持续时间和平均音素持续时间来确定全局音素持续时间损失。这里,训练TTS模型进一步基于全局音素持续时间损失。在一些示例中,基于最终频谱图损失和全局音素持续时间损失来训练TTS模型包括训练持续时间模型网络以预测每个音素的音素持续时间,而不使用从外部对准器提取的受监督音素持续时间标签。
在一些实施方式中,操作进一步包括,使用持续时间模型网络,通过基于由编码文本序列表示的每个音素的预测音素持续时间来生成相应的开始和结束边界,基于由编码文本序列表示的音素的数量和参考梅尔频谱图序列中的参考帧的数量,将针对每个音素生成的相应的开始和结束边界映射到相应的网格矩阵。这里,学习区间表示是基于从开始和结束边界映射的相应的网格矩阵,并且学习辅助注意力上下文是基于从开始和结束边界映射的相应的网格矩阵。将序列表示上采样为上采样输出可以包括确定区间表示矩阵和序列表示的乘积,确定区间表示矩阵和辅助注意力上下文表示的爱因斯坦求和(einsum),以及对区间表示矩阵和序列表示的乘积以及einsum的投影求和以生成上采样输出。
在一些实施方式中,操作进一步包括:接收包括参考音频信号和对应的输入文本序列的训练数据,参考音频信号包括口头话语,并且输入文本序列对应于参考音频信号的转录;使用残差编码器将参考音频信号编码为变分嵌入,该变分嵌入从参考音频信号中解开风格/韵律信息;使用文本编码器将输入文本序列编码为编码文本序列。在一些示例中,残差编码器包括全局变分自动编码器(VAE)。在这些示例中,将参考音频信号编码成变分嵌入包括从参考音频信号采样参考梅尔频谱图序列以及使用全局VAE将参考梅尔频谱图序列编码成变分嵌入。可选地,残差编码器可以包括音素级细粒度变分自动编码器(VAE)。这里,将参考音频信号编码为变分嵌入包括:从参考音频信号中采样参考梅尔频谱图序列;将参考梅尔频谱图序列与从输入文本序列提取的音素序列中的每个音素对准;使用音素级细粒度VAE并且基于将参考梅尔频谱图序列与音素序列中的每个音素对准,编码音素级变分嵌入序列。
残差编码器包括轻量级卷积(LConv)块的堆栈,LConv块的堆栈中的每个LConv块可以包括门控线性单元(GLU)层,LConv层,其被配置为接收GLU层的输出,残差连接,其被配置为级联LConv层的输出与GLU层的输入,以及最终前馈层,其被配置为接收级联LConv层的输出与GLU层的输入的残差连接作为输入。在一些实施方式中,操作进一步包括:级联编码文本序列、变分嵌入和表示发出参考音频信号的参考说话者的身份的参考说话者嵌入;以及基于持续时间建模网络接收编码文本序列、变分嵌入和参考说话者嵌入的级联作为输入来生成序列表示。在一些示例中,输入文本序列包括音素序列。在这些示例中,将输入文本序列编码为编码文本序列包括:从音素查找表接收在音素序列中的每个音素的相应的嵌入;针对音素序列中的每个音素,使用文本编码器的编码器预网神经网络来处理相应的嵌入以生成音素的相应的变换后的嵌入;使用一组卷积块来处理相应的变换后的嵌入以生成卷积输出;以及使用自注意力块的堆栈对卷积输出进行处理以生成编码文本序列。可选地,自注意力块堆栈中的每个自注意力块都包括相同的轻量级卷积(LConv)块。自注意力块堆栈中的每个自注意力块都包括相同的变换器块。
本公开的一个或多个实施方式的细节在附图和下面的描述中阐述。其他方面、特征和优点将从描述和附图以及权利要求中变得显而易见。
附图说明
图1是用于训练深度神经网络以提供预测文本话语的频谱图的非自回归TTS模型的示例系统。
图2是训练非自回归TTS模型的非自回归神经网络的示意图。
图3是施行由图2的非自回归深度神经网络训练的非自回归TTS模型的示意图。
图4是示例卷积块的示意图。
图5是示例轻量级卷积块的示意图。
图6是用于训练非自回归文本到语音模型的计算机实现的方法的示例性操作布置的流程图。
图7是可以被用于实现本文中描述的系统和方法的示例计算设备的示意图。
各个附图中相同的附图标记指示相同的元件。
具体实施方式
真实人类语音的合成是一个未确定的问题,因为相同的文本输入具有无限数量的合理的口语实现。虽然基于端到端神经网络的方法正在不断进步以匹配简短的类似助理的话语的人类表现,神经网络模型有时被认为比更传统的模型更难以解释或控制,更传统的模型包括多个处理步骤,每个处理步骤都对精细的语言或音标表示进行操作。语音的变化的来源包括语调、重音、节奏和风格的韵律特征,以及说话者和声道特征。口头话语的韵律特征传达的语言、语义和情感意义超出了词汇表示(例如,口头话语的转录)中存在的含义。
神经网络是采用一层或多层非线性单元来预测接收到的输入的输出的机器学习模型。例如,基于神经网络的端到端文本到语音(TTS)模型可以将输入文本转换为输出语音。神经网络TTS模型通过预测与文本输入未提供的韵律相对应的语言因素来提供稳健合成语音的潜力。因此,许多应用程序(诸如有声读物旁白、新闻阅读器、话音设计软件和会话助理)能够产生听起来不单调的听起来逼真的合成语音。
许多神经端到端TTS模型利用基于先前值来预测当前值的自回归模型。例如,许多自回归模型是基于循环神经网络,该循环神经网络使用前一时间步的网络内部状态的部分或全部来计算当前时间步的输出。循环神经网络的一个示例是包括一个或多个LSTM内存块的长短期(LSTM)神经网络。每个LSTM存储器块能够包括一个或多个单元,每个单元包括输入门、遗忘门和输出门,该输出门允许单元存储单元的先前状态,例如用于生成当前激活或被提供到LSTM神经网络的其他组件。
虽然自回归TTS模型能够合成文本并且生成高度自然的语音输出,但是与完全前馈架构相比,它们的架构通过一系列基于LSTM的单向解码器块(具有软注意力),固有地使得在现代并行的硬件上实现时训练和推断的效率都更低。此外,由于自回归模型经由教师强制通过为每个时间步应用真实值标签来进行训练,因此自回归模型附加地容易在训练和推断过程中应用训练模型之间产生偏差。与软注意力机制一起,这些偏差能够导致合成语音输出质量下降,诸如合成语音表现出鲁棒性错误,诸如胡言乱语、过早中断、单词重复和跳词。随着合成文本大小的增加,自回归TTS模型中合成语音质量的下降可能进一步加剧。
为了减轻基于自回归的TTS模型的前述缺点,本文中的实施方式针对利用基于变分自编码器(VAE)的残差编码器增强的非自回归神经TTS模型。显而易见的是,基于VAE的残差编码器可以从传达残差信息的参考音频信号中解开潜在表示/状态,诸如无法由要合成的输入文本(例如,音素序列)表示的风格/韵律信息或说出参考音频信号的说话者的说话者标识符(ID)。也就是说,潜在表示使由TTS模型产生的输出合成语音听起来像输入到残差编码器的参考音频信号。
利用基于VAE的残差编码器增强的非自回归神经TTS模型提供了用于针对输入文本话语来预测梅尔谱信息的可控模型(例如,预测梅尔频谱图序列),同时有效地控制梅尔谱信息中表示的韵律/风格。例如,使用由基于VAE的残差编码器学习的选定的变分嵌入来表示将文本话语合成为表达性语音的预期韵律/风格,TTS模型的频谱图解码器可以预测文本话语的梅尔频谱图,并且将梅尔频谱图作为输入提供给合成器(例如,波形合成器或声码器网络)以转换为指示具有预期韵律/风格的合成语音的时域音频波形。显而易见的是,非自回归TTS模型仅针对样本输入文本序列和人类语音的对应参考梅尔频谱图序列进行训练,使得经过训练的TTS模型能够将输入文本话语转换为具有通过已学习的先前变分嵌入传达的预期韵律/风格的梅尔频谱图序列。
图1示出了示例系统100,其用于训练利用基于VAE的残差编码器180增强的深度神经网络200以提供非自回归神经TTS模型(或简称“TTS模型”)300,并且用于使用TTS模型300针对文本话语320来预测频谱图(即,梅尔频谱图序列)302。系统100包括计算系统120,该计算系统120具有数据处理硬件122和与数据处理硬件122通信并存储使数据处理硬件122执行操作的指令的存储器硬件124。在一些实施方式中,施行经过训练的TTS模型300的计算系统120(例如,数据处理硬件122)或用户计算设备10向合成器155提供由TTS模型300根据输入文本话语320预测的预测梅尔频谱图302,以用于转换成指示合成语音152的时域音频波形,该合成语音152可以作为输入文本话语320的口头表示被可听地输出。时域音频波形包括定义音频信号随时间的幅度的音频波形。合成器155可以分开地在梅尔频谱图上进行训练和调节以用于转换成时域音频波形。
梅尔频谱图包括声音的频域表示。梅尔频谱图强调低频,这对语音清晰度至关重要,同时不强调高频,高频以摩擦音和其他突发噪声为主并且通常不需要以高保真度建模。合成器155可以包括声码器神经网络,该声码器神经网络可以包括被配置为接收梅尔频谱图并且基于梅尔频谱图生成音频输出样本(例如,时域音频波形)的任何网络。例如,声码器网络155能够基于van den Oord,Parallel WaveNet:Fast High-Fidelity SpeechSynthesis(快速高保真语音合成)中描述的并行前馈神经网络,其可在https://arxiv.org/pdf/1711.10433.pdf获得,并且通过引用并入本文。可替选地,声码器网络155能够是自回归神经网络。合成器155可以包括波形合成器,诸如Griffm-Lim合成器或可训练的频谱图到波形逆变器。合成器155的选择对所得到的合成语音152的韵律/风格没有影响,并且实际上,仅影响合成语音152的音频保真度。
由于输入文本话语320无法传达上下文、语义和语用来指导合成语音152的期望韵律/风格,TTS模型300可以应用变分嵌入220作为指定预期韵律/风格的潜在变量,以便预测传达由变分嵌入220指定的预期韵律/风格的文本话语320的梅尔频谱图302。在一些示例中,计算系统120实现TTS模型300。这里,用户可以通过用户计算设备10访问TTS模型300,并且为TTS模型300提供输入文本话语320以合成为具有由变分嵌入220指定的预期韵律/风格的表达性语音152。变分嵌入220可以由用户选择并且对应于从残差编码器180采样的先前变分嵌入220。变分嵌入220可以是用户可以通过提供识别以预期韵律/风格说话的说话者的说话者标识符(ID)(即,通过在用户计算设备10上执行的界面)来选择的每说话者变分嵌入220。这里,每个说话者ID可以映射到由残差编码器180先前学习的相应的每说话者变分嵌入220。附加地或可替选地,用户可以提供指定与相应的韵律/风格相关联的特定垂直类型的输入。这里,不同的垂直类型(例如,新闻广播员、体育广播员等)可以各自映射到由残差编码器180先前学习的相应的变分嵌入220,该残差编码器180传达与垂直类型相关联的相应的韵律/风格。在这些示例中,合成器155可以驻留在计算系统120或用户计算设备10上。当合成器155驻留在计算系统120上时,计算系统120可以将表示合成语音152的时域音频波形传输到用户计算设备10以用于可听回放。在其他示例中,用户计算设备10实现TTS模型300。计算系统可以包括分布式系统(例如,云计算环境)。
在一些实施方式中,深度神经网络200在一大组参考音频信号201上进行训练。每个参考音频信号201可以包括由麦克风记录的并且具有韵律/风格表示的人类语音的口头话语。在训练期间,深度神经网络200可以接收相同口头话语但是具有不同的韵律/风格(即,能够以多种不同的方式说出相同的话语)的多个参考音频信号201。这里,参考音频信号201具有可变长度,使得即使内容相同,口头话语的持续时间也不同。深度神经网络200还可以接收多组参考音频信号201,其中每组包括用于由同一相应说话者说出的具有相似韵律/风格但传达不同语言内容的话语的参考音频信号201。利用基于VAE的残差编码器180增强的深度神经网络200被配置为将与每个参考音频信号201相关联的韵律/风格表示编码/压缩为对应的变分嵌入220。变分嵌入220可以包括固定长度变分嵌入220。深度神经网络200可以将每个变分嵌入220与表示发出与变分嵌入220相关联的参考音频信号201的参考说话者的说话者身份205(图2)的对应说话者嵌入ys一起存储在存储185中(例如,在计算系统120的存储器硬件124上)。变分嵌入220可以是每说话者变分嵌入,其包括由残差编码器180根据由同一说话者说出的参考音频信号201编码的多个变分嵌入220的聚合(例如,平均值)。
在推断期间,计算系统120或用户计算设备10可以使用经过训练的TTS模型300来预测文本话语320的梅尔频谱图序列302。TTS模型300可以从存储185中选择表示文本话语320的预期韵律/风格的变分嵌入220。这里,变分嵌入220可以对应于从基于VAE的残差编码器180采样的先前的变分嵌入220。TTS模型300可以使用选定的变分嵌入220来预测文本话语320的梅尔频谱图序列302。在所示的示例中,合成器155使用预测梅尔频谱图序列302来产生具有由变分嵌入220指定的预期韵律/风格的合成语音152。
在非限制性示例中,个人可以训练深度神经网络200来学习传达与特定说话者相关联的韵律/风格表示的每说话者变分嵌入。例如,Techmeme乘车回家(Ride Home)播客的主持人Brian McCullough可以在参考音频信号201上训练深度神经网络200,该参考音频信号201包括播客的先前剧集以及与参考音频信号201的转录相对应的输入文本序列206。在训练期间,基于VAE的残差编码器180可以学习表示Brian叙述Ride Home播客的韵律/风格的每说话者变分嵌入220。然后,Brian可以应用该每说话者变分嵌入220以供经过训练的TTS模型300使用(在计算系统120或用户计算设备10上施行),来预测与Ride Home播客的新剧集的转录相对应的文本话语320的梅尔频谱图序列302。预测梅尔频谱图序列302可以作为输入被提供给合成器155以用于产生合成语音152,该合成语音152具有由他的每说话者变分嵌入220指定的Brian的独特韵律/风格。即,所得到的合成语音152听起来可能与Brian的声音完全相同,并且具有Brian的用于叙述Ride Home播客剧集的韵律/风格。因此,为了播出新剧集,Brian只需提供该剧集的转录并且使用经过训练的TTS模型300来产生合成语音152,该合成语音152可以被流式传输给Ride Home播客的忠实听众(也称为MutantPodcast Army)。
图2示出了用于训练非自回归TTS模型300的非自回归神经网络(例如,图1的深度神经网络)200。深度神经网络200包括基于VAE的残差编码器180、文本编码器210、持续时间模型网络230和频谱图解码器260。深度神经网络200可以在包括多个参考音频信号201和对应的输入文本序列206的训练数据上进行训练。每个参考音频信号201包括人类语音的口头话语,并且对应的输入文本序列206对应于参考音频信号201的转录。在所示的示例中,基于VAE的残差编码器180被配置为将参考音频信号201编码成变分嵌入(z)220。具体地,残差编码器180接收从参考音频信号201采样的参考梅尔频谱图序列202,并且将参考梅尔频谱图序列202编码成变分嵌入220,由此,变分嵌入220从与人类语音的口头话语相对应的参考音频信号201中解开风格/韵律信息。这样,变分嵌入220对应于参考说话者的潜在状态,诸如情感和意图,其有助于参考说话者的韵律、情感和/或说话风格。如本文中所使用的,变分嵌入220包括风格信息和韵律信息这两者。在一些示例中,变分嵌入220包括具有由变分嵌入220中的比特数表示的容量的数字向量。从参考音频信号201采样的参考梅尔频谱图序列202可以具有长度LR和维度DR。如本文中所使用的,参考梅尔频谱图序列202包括从参考音频信号201采样/提取的多个固定长度参考梅尔频谱图帧。每个参考梅尔频谱图帧可以包括五毫秒的持续时间。
基于VAE的残差编码器180对应于能够对说话风格的潜在表示(即,变分嵌入(z))进行无监督学习的后验网络。与基于启发式的系统相比,通过使用VAE网络学习变分嵌入提供了有利的解开、缩放和组合特性,从而简化样式控制。这里,残差编码器180包括音素级细粒度VAE网络,其包括具有修正线性单元(ReLU)410的投影层和具有多头注意力的轻量级卷积(LConv)块420的堆栈。音素级细粒度VAE网络180被配置为将来自与输入文本序列206中的每个音素相关联的参考梅尔频谱图序列202的谱图帧编码成相应的音素级变分嵌入220。更具体地,音素级细粒度VAE网络可以将参考梅尔频谱图序列202与从输入文本序列206提取的音素序列中的每个音素对准,并且对音素级变分嵌入序列220进行编码。因此,由音素级细粒度VAE网络180编码的音素级变分嵌入220序列中的每个音素级变分嵌入220对来自参考梅尔频谱图序列202的一个或多个频谱图帧的相应的子集进行编码,该参考梅尔频谱图序列202包括从输入文本序列206提取的音素序列中的相应的音素。音素级细粒度VAE网络180最初可以将参考梅尔频谱图序列202与说话者嵌入ys以及正弦位置嵌入214级联,说话者嵌入ys代表说出与参考梅尔频谱图序列202相关联的话语的说话者,正弦位置嵌入214指示从输入文本序列206提取的音素序列中的每个音素的音素位置信息。在一些示例中,残差编码器180包括代替正弦位置嵌入214的位置嵌入(未示出)。每个正弦位置嵌入214可以包括固定长度向量,该固定长度向量包含关于从输入文本序列206提取的音素序列中的相应的音素的特定位置的信息。随后,将级联应用于五(5)个8头17x1 LConv块420的堆栈,以利用从文本编码器210输出的层归一化编码文本序列219来计算注意力。
图5示出了示例LConv块(例如,LConv块420的堆栈)的示意图500,其具有门控线性单元(GLU)层502、被配置为接收GLU层502的输出的LConv层504、以及前馈(FF)层506。示例LConv块500还包括被配置为将LConv层504的输出与GLU层502的输入级联的第一残差连接508(例如,第一级联器508)。FF层506被配置为接收第一残差连接508作为输入,该第一残差连接508将LConv层504的输出与GLU层502的输入级联。示例LConv块500还包括被配置为将FF层506的输出与第一残差连接508级联的第二残差连接510(例如,第二级联器510)。示例LConv块500可以使用结构ReLU(W1X+b1)W2+b2在FF层506中执行FF混合,其中W1将维度增加了4倍。
在其他实施方式中,基于VAE的残差编码器180包括非自回归深度神经网络200可以采用的全局VAE网络来代替图2中描绘的音素级细粒度VAE网络。全局VAE网络将参考梅尔频谱图序列202编码成话语级别的全局变分嵌入220。这里,全局VAE网络包括两个轻量级卷积(LConv)块堆栈,每个块都具有多头注意力。全局VAE网络180的第一和第二堆栈中的每个LConv块可以包括八(8)个头。在一些示例中,LConv块的第一堆栈包括三(3)个17x1 LConv块,并且第一堆栈之后的LConv块的第二堆栈包括与3x1卷积交织的五个17x1LConv块。两个LConv块的堆栈的这种配置许可全局VAE网络180在应用全局平均池化以获得最终全局变分嵌入220之前连续地对潜在表示进行下采样。投影层可以投影从LConv块的第二堆栈输出的全局变分嵌入220的维度。例如,从LConv块的第二堆栈输出的全局变分嵌入220可以具有八(8)的维度,并且投影层可以将该维度投影到三十二(32)。
继续参考图2,文本编码器210将输入文本序列206编码成文本编码序列219。文本编码序列219包括从输入文本序列206提取的语音单元(例如,音素)序列的编码表示。输入文本序列206可以包括各自具有一个或多个音素的单词、在所有单词边界处的静音以及标点符号。因此,输入文本序列206包括音素序列,并且文本编码器210可以从词元嵌入查找表207接收音素序列中的每个音素的相应的词元嵌入。这里,相应的词元嵌入包括音素嵌入。然而,在其他示例中,词元嵌入查找表207可以获得与输入文本序列206相关联的其他类型的语音输入的词元嵌入而不是音素,诸如但不限于子音素(例如,子音素(senomes))、字素、单词片段或话语中的单词。在接收到音素序列中每个音素的相应词元嵌入后,文本编码器210使用编码器预网神经网络208来处理每个相应的词元嵌入以生成每个音素的相应的变换后的嵌入209。此后,一组卷积(Conv)块212可以处理相应的变换后的嵌入209以生成卷积输出213。在一些示例中,一组Conv块212包括三个(3)相同的5x1 Conv块。图4示出了具有Conv层402、批量归一化层404和暂退(dropout)层406的示例Conv块的示意图400。在训练期间,批量归一化层404可以应用批量归一化以减少内部协变量偏移。暂退层406可以减少过度拟合。最后,自注意力块218的堆栈处理卷积输出213以生成编码文本序列219。在所示的示例中,自注意力块218的堆栈包括六(6)个变换器块。在其他示例中,自注意力块218可以包括代替变换器块的LConv块。
值得注意的是,由于每个卷积输出213同时流过自注意力块218的堆栈,所以自注意力块218的堆栈不知道输入文本话语206中的每个音素的位置/顺序。因此,在一些示例中,正弦位置嵌入214与卷积输出213组合以注入指示输入文本序列206中每个音素的顺序的必要位置信息。在其他示例中,使用编码位置嵌入来代替正弦位置嵌入214。相比之下,包含循环神经网络(RNN)的自回归编码器固有地考虑每个音素的顺序,因为每个音素都是按顺序从输入文本序列中解析出来的。然而,集成采用多头自注意力的自注意力块218的堆栈的文本编码器210避免了自回归编码器的循环,从而导致训练时间大大减少,并且理论上捕获输入文本序列206中的较长依赖性。
继续参考图2,级联器222级联来自残差编码器180的变分嵌入220、从文本编码器210输出的编码文本序列219、以及表示将参考音频信号发出到级联224中的参考说话者的说话者身份205的参考说话者嵌入ys。持续时间模型网络230接收级联224并且被配置为生成指定来自级联224的编码文本序列219的帧的数量的上采样输出258。在一些实施方式中,持续时间模型网络230包括自注意力块232的堆栈,后面是两个独立的小卷积块234、238以及具有softplus激活236的投影。在所示的示例中,自注意力块的堆栈包括四(4)个3x1LConv块232。如上面参考图5所描述的,自注意力块232的堆栈中的每个LConv块可以包括GLU单元502、LConv层504和具有残差连接的FF层506。自注意力块232的堆栈基于编码文本序列219、变分嵌入220和参考说话者嵌入ys的级联224来生成序列表示V。这里,序列表示V表示Mx1列向量的序列(例如,V={v1,...,vk})。
在一些实施方式中,第一卷积块234根据序列表示V生成输出235并且第二卷积块238根据序列表示V生成输出239。卷积块234、238可以各自包括具有内核宽度为3和输出维度为3的3x1Conv块。具有softplus激活236的投影可以预测由编码文本序列219表示的每个音素的音素持续时间240(例如,{d1,...dk})。这里,softplus激活236接收序列表示V作为输入以预测音素持续时间240。持续时间模型网络230计算预测音素持续时间240和目标平均持续时间245之间的全局音素持续时间损失241(例如,L1损失项241),其表示为:
其中,Ldur表示全局音素持续时间损失241(例如L1损失项241),K表示输入文本序列206的音素(例如,词元)的总数,dk表示音素总数K中特定音素k的音素持续时间240,并且T表示来自参考梅尔频谱图序列202的总目标帧持续时间。
在一些示例中,训练TTS模型300是基于等式1中的全局音素持续时间损失241。每个音素的单独目标持续时间是未知的,因此,持续时间模型网络230基于来自整个参考梅尔频谱图序列202的T个总帧持续时间和输入文本序列206中的K个音素(例如,词元)总数的比例来确定目标平均持续时间245。也就是说,目标平均持续时间245是使用参考梅尔频谱图序列202和输入文本序列206的所有音素的平均持续时间。然后在预测音素持续时间240和使用参考梅尔频谱图序列202和输入文本序列206确定的目标平均持续时间245之间来确定L1损失项241。这样,持续时间模型网络230学习以无监督方式预测音素持续时间240,而不使用从外部对准器提供的监督音素持续时间标签。虽然外部对准器能够提供音素和梅尔谱帧之间的合理对准,但是长度调节器需要音素持续时间舍入以根据导致可能持续的舍入误差的其持续时间对输入文本序列206中的音素进行上采样。在一些情况下,在训练期间使用来自外部对准器的监督持续时间标签以及在推断期间使用预测持续时间在训练TTS模型300(图2)和TTS模型300(图3)的推断之间创建音素持续时间偏差。此外,这种舍入操作是不可微分的,并且因此误差梯度不能通过持续时间模型网络230传播。
持续时间模型网络230包括矩阵生成器242以根据预测音素持续时间240来定义词元边界矩阵生成器242根据如下所示的预测音素持续时间240确定词元边界(例如,音素边界):
ek=sk+dk (3)
在等式2中,sk表示特定音素k的词元边界的开始(本文中也称为开始边界sk)。在等式3中,ek表示特定音素k的词元边界的结束(本文也称为结束边界ek)。矩阵生成器242使用来自等式2和3的开始和结束边界sk、ek,如下式将词元边界映射成两个词元边界网格矩阵S和E。
Stk=t-sk (4)
Etk=ek-t (5)
等式4将每个开始边界sk映射到Stk网格矩阵,其给出在时间t到词元k的开始边界sk的距离。等式5将每个结束边界ek映射到Etk网格矩阵,其给出在时间t到词元k的结束边界ek的距离。矩阵生成器242生成开始和结束边界sk、ek(也统称为词元边界sk、ek)并且将词元边界sk、ek分别映射到开始词元边界网格矩阵S和结束词元边界网格矩阵E(统称为网格矩阵243)。这里,网格矩阵243的大小为TxK,其中K表示输入文本序列206中的音素的数量并且T表示参考梅尔频谱图序列202中的帧的数量以及总帧持续时间。矩阵生成器242可以基于由编码文本序列219表示的音素的数量和参考梅尔频谱图序列202中的参考帧的数量,将针对音素序列中的每个音素生成的相应的开始和结束边界sk、ek映射到相应的网格矩阵243(例如,开始词元边界网格矩阵S和结束词元边界网格矩阵E)。
持续时间模型网络230包括第一函数244以学习区间表示矩阵W。在一些实施方式中,第一功能244包括具有偏置和Swish激活的两(2)个投影层。在所示的示例中,第一函数244的两个投影都以维度16进行投影和输出(即,P=16)。第一函数244从级联器222接收级联237作为输入。级联器222级联来自卷积块234的输出235和网格矩阵243以生成级联237。第一函数244使用级联237来投射输出247。随后,第一函数244利用输出247的softplus激活246从投影生成区间表示矩阵W(例如,TxK注意力矩阵)。区间表示矩阵W可以如下式所示基于从开始和结束边界sk、ek映射的相应的网格矩阵243来学习:
W=Softmax(MLP(S,E,Conv1D(V))) (6)
等式6使用网格矩阵243(例如,开始词元边界网格矩阵S和结束词元边界网格矩阵E)的Softmax函数和多层基于感知(MLP)的可学习函数以及序列表示V来计算区间表示W(例如,TxK注意力矩阵)。MLP可学习函数包括输出维度为1的第三投影层,该投影层被馈送到Softmax激活函数,并且Conv1D(V)包括内核宽度为3、输出维度为8、批量归一化和Swish激活。这里,网格矩阵243的第(k,t)个元素给出第k个词元(例如,音素)和第t个帧之间的注意力概率,并且W()是映射网格矩阵243的可学习函数以及具有小1D卷积层的序列表示V。
持续时间模型网络230可以使用以序列表示V为条件的第二函数248来学习辅助注意力上下文张量C(例如,C=[C1,…,Cp])。这里,CP包括来自辅助注意力上下文张量C的TxK矩阵。辅助注意力上下文张量C可以包括用于谱图解码器260的辅助多头注意力类信息。级联器222级联网格矩阵243和输出239以生成级联249。第二函数248可以包括具有偏置和Swish激活的两(2)个投影层。在所示的示例中,第二函数248的投影投影维度为2(即,P=2)的输出。第二函数248接收级联249作为输入,以如下式所示基于从开始和结束边界sk、ek映射的相应的网格矩阵243和序列表示V来生成辅助注意力上下文张量C:
C=MLP(S,E,Conv1D(V)) (7)
等式7使用网格矩阵243(例如,开始词元边界网格矩阵S和结束词元边界网格矩阵E)的多层基于感知(MLP)的可学习函数和序列表示V来计算辅助注意力上下文张量C。辅助注意力上下文张量C可以帮助平滑优化并且收敛随机梯度下降(SGD)。持续时间模型网络230可以将序列表示V上采样到具有帧的数量的上采样输出258(例如,O={o1,…,oT})。这里,上采样输出258的帧的数量对应于由对应的输入文本序列206的预测音素持续时间240确定的预测梅尔频谱图302的预测长度。将序列表示V上采样为上采样输出258包括使用乘法器253来确定区间表示矩阵W和序列表示V的乘积254。
持续时间模型网络230使用爱因斯坦求和(einsum)算子255来确定区间表示矩阵W和辅助注意力上下文张量C的einsum 256。投影250将einsum 256投影为投影输出252,该投影输出252在加法器257处与乘积254相加以生成上采样输出258。这里,上采样输出258可以表示如下:
O=WV+[(W⊙C1)1k…(W⊙CP)1k]A (8)
其中,O表示上采样输出258,⊙表示逐元素乘法,1k表示包括都等于1的元素的Kx1列向量,并且A是PxM投影矩阵。
继续参考图2,频谱图解码器260被配置为接收持续时间模型网络230的上采样输出258作为输入,并且生成输入文本序列206的一个或多个预测梅尔频谱图序列302作为输出。频谱图解码器260可以包括具有多头注意力的多个自注意力块262、262a-n的堆栈。在一些示例中,频谱图解码器260包括具有0.1暂退的六(6)个八头17x1 LConv块。频谱图解码器260可以包括多于或少于六个LConv块。如上面参考图5所描述的,自注意力块232的堆栈中的每个LConv块可以包括GLU单元502、LConv层504和具有残差连接的FF层506。在其他示例中,堆栈中的每个自注意力块262包括相同的变换器块。
在一些实施方式中,频谱图解码器260生成相应的预测梅尔频谱图序列302、302a-n作为来自自注意力块262、262a-n的堆栈中的每个自注意力块262的输出。网络200可以被训练成使得每个相应的预测梅尔频谱图序列302中的帧的数量等于输入到残差编码器180的参考梅尔频谱图序列202中的帧的数量。在所示的示例中,每个自注意力块262a-n与对应的投影层264a-n配对,该投影层264a-n投影来自自注意力块262的输出263以生成具有与参考梅尔频谱图序列202的维度匹配的维度的相应的预测梅尔频谱图序列302a-n。在一些示例中,投影层264投影128-bin预测梅尔频谱图序列302。通过预测多个梅尔频谱图序列302a-n,可以使用软动态时间规整(软DTW)损失来训练非自回归神经网络200。也就是说,因为预测梅尔频谱图序列302可能具有与参考梅尔频谱图序列202不同的长度(例如,帧的数量),所以频谱图解码器260无法确定常规拉普拉斯损失。相反,频谱图解码器260确定参考梅尔频谱图序列202和可以包括不同长度的预测梅尔频谱图序列302之间的软DTW损失。具体地,对于每个相应的预测梅尔频谱图序列302a-n,频谱图解码器260基于对应的预测梅尔频谱图序列302和参考梅尔频谱图序列202来确定相应的频谱图损失270、270a-n。相应的频谱图损失270可以包括由如下式递归确定的软DTW损失项:
在等式9中,ri,j表示从1到i的参考梅尔频谱图序列帧与从1到j的预测梅尔频谱图序列帧之间具有最佳对准的距离。这里,minγ包括具有平滑参数γ的广义最小运算,warp包括扭曲惩罚,并且xi和分别是时间i和j上的参考梅尔频谱图帧和预测梅尔频谱图序列帧。
软DTW损失项递归是计算密集型的并且可以包括O(T2)的复杂度、固定为60的对向带宽、128的扭曲惩罚以及0.05的平滑参数γ。例如,可以基于第一预测梅尔频谱图序列302a和参考梅尔频谱图序列202来确定第一频谱图损失270a。这里,第一预测梅尔频谱图序列302a和参考梅尔频谱图序列202可以具有相同或不同的长度。可以基于第一预测梅尔频谱图序列302a和参考梅尔频谱图序列202来确定第二频谱图损失270b,依此类推,直到所有相应的频谱图损失270a-n被迭代地确定为预测梅尔频率频谱图序列302a-n为止。包括软DTW损失项的频谱图损失270可以被聚合以生成最终软DTW损失280。最终软DTW损失280可以对应于迭代软DTW损失项280。最终软DTW损失280可以根据相同和/或不同长度的预测梅尔频谱图序列302和参考梅尔频谱图序列202的任意组合来确定,如下所示:
在等式10中,包括最终软DTW损失280,/>包括频谱图解码器中的第1次迭代的软DTW LI频谱图重建损失,/>包括平均持续时间L1损失,并且DKL包括来自残差编码器的先验和后验之间的KL散度。训练深度神经网络200的目的是最小化最终软DTW损失280,以减少预测梅尔频谱图序列302和参考梅尔频谱图序列202的音素持续时间之间的差异。通过最小化最终软DTW损失280,经过训练的TTS模型300可以基于参考梅尔频谱图序列202来生成包括预期韵律/风格的预测梅尔频谱图序列302。聚合频谱图损失270a-n可以包括对频谱图损失270a-n求和以获得最终软DTW损失280。可选地,聚合频谱图损失270可以包括对频谱图损失270进行平均。
深度神经网络200可以被训练为使得每个相应的预测梅尔频谱图序列302中的帧的数量等于被输入到残差编码器180的参考梅尔频谱图序列202中的帧的数量。此外,深度神经网络200被训练为使得与参考梅尔频谱图序列202和预测梅尔频谱图序列302相关联的数据基本上彼此匹配。预测梅尔频谱图序列302可以隐式地提供参考音频信号201的韵律/风格表示。
图3示出了由图2的非自回归深度神经网络200训练的非自回归TTS模型300的示例。具体地,图3描绘了使用选定的变分嵌入220来预测输入文本话语320的梅尔频谱图序列302的TTS模型300,由此选定的变分嵌入220表示文本话语320的预期韵律/风格。在推断期间,经过训练的TTS模型300在计算系统120或用户计算设备10上施行,并且可以使用选定的变分嵌入220来预测输入文本话语320的对应梅尔谱图序列302。这里,TTS模型300从存储185中选择表示文本话语320的预期韵律/风格的变分嵌入220。在一些示例中,用户提供用户输入指示,其指示用户希望所得到的合成语音152为文本话语320传达的预期韵律/风格的选择,并且TTS模型300从数据存储185选择代表预期的韵律/风格的适当的变分嵌入220。在这些示例中,用户可以通过指示与以预期韵律/风格说话的特定说话者相关联的说话者身份205和/或指定对应于预期韵律/风格的特定韵律垂直类型(例如,新闻广播员、体育广播员等)来选择预期韵律/风格。选定的变分嵌入220可以对应于从基于VAE的残差编码器180采样的先前变分嵌入220。经过训练的TTS模型300使用合成器155来生成具有针对相应的输入文本话语320的预期韵律/风格(例如,选定的变分嵌入220)的合成语音152。也就是说,选定的变分嵌入220可以包括存储在残差编码器180上的预期韵律/风格(例如,新闻广播员、体育广播员等)。选定的变分嵌入220经由输入文本话语320的合成语音152传达预期韵律/风格。
在附加的实施方式中,经过训练的TTS模型300在推断期间采用残差编码器180来动态提取/预测变分嵌入220以用于针对梅尔频谱图序列302预测输入文本话语320。例如,残差编码器180可以接收由人类用户发出的传达预期韵律/风格(例如,“像这样说”)的参考音频信号201(图2),并且提取/预测表示预期韵律/风格的对应的变分嵌入220。此后,经过训练的TTS模型300可以使用变分嵌入220来有效地将由参考音频信号201传达的预期韵律/风格转移到针对输入文本话语320预测的梅尔频谱图序列302。因此,要被合成为表达性语音152的输入文本话语320和传达要被转移到表达性语音152的预期韵律/风格的参考音频信号201可以包括不同的语言内容。
具体地,文本编码器210将从文本话语320提取的音素序列编码成编码文本序列219。文本编码器210可以从词元嵌入查找表207接收从文本话语320提取的音素序列中的每个音素的相应的词元嵌入。在接收到从文本话语320提取的音素序列中的每个音素的相应的词元嵌入之后,文本编码器210使用编码器预网神经网络208来处理每个相应的词元嵌入,以生成每个音素的相应的变换后的嵌入209。此后,一组Conv块212(例如,三(3)个相同的5x1Conv块)处理相应的变换后的嵌入209以生成卷积输出213。最后,自注意力块218的堆栈处理卷积输出213以生成编码文本序列219。在所示的示例中,自注意力块218的堆栈包括六(6)个变换器块。在其他示例中,自注意力块218可以包括代替变换器块的LConv块。值得注意的是,由于每个卷积输出213同时流过自注意力块218的堆栈,所以自注意力块218的堆栈不知道输入文本话语中每个音素的位置/顺序。因此,在一些示例中,正弦位置嵌入214与卷积输出213组合以注入指示输入文本序列206中每个音素的顺序的必要位置信息。在其他示例中,使用编码位置嵌入来代替正弦位置嵌入214。
继续参考图3,级联器222级联选定的变分嵌入220、编码文本序列219、以及可选的参考说话者嵌入ys以生成级联224。这里,参考说话者嵌入ys可以表示发出与选定的变分嵌入220相关联的一个或多个参考音频信号201的参考说话者的说话者身份205或者具有要在所得到的合成语音152中传达的话音特征的某一其他参考说话者的说话者身份205。持续时间模型网络230被配置为对编码文本序列219、选定的变分嵌入220和参考说话人嵌入ys的级联224进行解码,以生成持续时间模型网络230的上采样输出258,以用于针对输入文本话语320中的音素序列中的每个音素预测音素持续时间240。
持续时间模型网络230被配置为生成上采样输出258,该上采样输出258指定来自级联224的编码文本序列219的帧的数量。在一些实施方式中,持续时间模型网络230包括自注意力块232的堆栈,之后是两个独立的小卷积块234、238和具有softplus激活236的投影。在所示的示例中,自注意力块的堆栈包括四(4)个3x1 LConv块232。如上面参考图5所描述的,自注意力块232的堆栈中的每个LConv块可以包括GLU单元502、LConv层504和具有残差连接的FF层506。自注意力块232的堆栈基于编码文本序列219、变分嵌入220和参考说话者嵌入ys的级联224来生成序列表示V。
在一些实施方式中,第一卷积块234根据序列表示V生成输出235并且第二卷积块238根据序列表示V生成输出239。卷积块234、238可以包括具有内核宽度为3以及输出维度为3的3x1Conv块。持续时间模型网络230包括具有softplus激活236的投影,以针对由编码文本序列219表示的每个音素预测音素持续时间240(例如,{d1,...,dK})。这里,softplus激活236接收序列表示V作为输入以预测音素持续时间240。
持续时间模型网络230包括矩阵生成器242以从预测音素持续时间240定义词元边界如上面参考图2所描述的。持续时间模型网络230包括第一函数244以学习区间表示矩阵W。在一些实施方式中,第一函数244包括具有偏置和Swish激活的两(2)个投影层。在所示的示例中,第一函数244的两个投影都以维度16(即,P=16)来投影和输出。第一函数244从级联器222接收级联237作为输入。级联器222级联来自卷积块234的输出235和网格矩阵243以生成级联237。随后,第一函数244使用等式6从具有输出247的softplus激活246的投影来生成区间表示矩阵W(例如,TxK注意力矩阵)。
持续时间模型网络230可以使用以序列表示V为条件的第二函数248来学习辅助注意力上下文张量C(例如,C=[C1,…,CP])。这里,Cp是来自辅助注意力上下文张量C的TxK矩阵。辅助注意力上下文张量C可以包括用于频谱图解码器260的辅助多头注意力类的信息。级联器222级联网格矩阵243和输出239以生成级联249。第二函数248可以包括具有偏置和Swish激活的两(2)个投影层。第二函数248接收级联249作为输入,以使用等式7基于从开始和结束边界sk、ek映射的相应的网格矩阵243和序列表示V来生成辅助注意力上下文张量C。
持续时间模型网络230可以将序列表示V上采样为具有帧的数量的上采样输出258(例如,O={o1,…,oT})。这里,上采样输出的帧的数量对应于由对应的输入文本序列206的预测音素持续时间240确定的预测梅尔频谱图302的预测长度。将序列表示V上采样为上采样输出258是基于使用乘法器253来确定区间表示W和序列表示V的乘积254,以及使用einsum算子255来确定区间表示矩阵W和辅助注意力上下文张量C的einsum 256。投影250将einsum 356投影到投影输出252中,加法器257将该投影输出252与乘积254相加以生成由等式8表示的上采样输出258。
频谱图解码器260被配置为基于持续时间模型网络230的上采样输出258和预测音素持续时间240来生成文本话语320的预测梅尔频谱图序列302。这里,预测梅尔频谱图序列302具有由选定的变分嵌入220指定的预期韵律/风格。针对文本话语320的预测梅尔频谱图序列302是基于辅助注意力上下文张量C、序列表示V、区间表示w、以及持续时间模型网络230到帧的数量的上采样输出258。
频谱图解码器260生成相应的预测梅尔频谱图序列302作为来自自注意力块262a_n的堆栈中的最后一个自注意力块262的输出。这里,频谱图解码器260的自注意力块262的堆栈中的每个自注意力块262包括相同的LConv块或相同的变换器块中的一个。在一些示例中,频谱图解码器260包括具有0.1暂退的六(6)个八头17x1 LConv块。每个自注意力块262的最后前馈(FF)层506(图5)的输出被提供作为后续自注意力块262的输入。也就是说,自注意力块262a-n的堆栈中的第一自注意力块262a的GLU单元502(图5)和LConv层504(图5)处理来自持续时间模型网络230的输出238和预测音素持续时间240,并且来自第一自注意力块262a的最后一个FF层506的输出被提供作为到自注意力块262的堆栈中的后续第二自注意力块262b的输入。每个自注意力块262的最后一个FF层的输出被提供作为到后续自注意力块262的输入,直到到达自注意力块262的堆栈中的最后一个自注意力块262n为止。自注意力块262的堆栈中的最后一个自注意力块262n(例如,第六个自注意力块262)与对应的投影层264配对,该对应的投影层264投影来自最后一个自注意力块262的输出263以生成相应的预测梅尔频谱图序列302。
由谱图解码器260生成的预测梅尔频谱图序列302对应于输入文本话语320并且传达由选定的变分嵌入220指示的预期韵律/风格。经过训练的TTS模型300将输入文本话语320的预测梅尔频谱图序列302提供给合成器155,以用于转换成指示合成语音152的时域音频波形。合成语音152可以被可听地输出为输入文本话语320的口头表示,其包括由选定的变分嵌入220指示的预期韵律/风格。
图6是用于训练非自回归文本到语音(TTS)模型的计算机实现的方法600的示例性操作布置的流程图。在操作602处,方法600包括获得与变分嵌入220级联的编码文本序列219的序列表示V。在操作604处,方法600包括,使用持续时间模型网络,基于序列表示V来预测由编码文本序列219表示的每个音素的音素持续时间240。在操作606处,方法600包括,基于预测音素持续时间240,使用以序列表示V为条件的第一函数244来学习区间表示矩阵W。在操作608处,方法600包括使用以序列表示V为条件的第二函数248来学习辅助注意力上下文表示C。
在操作610处,方法600包括使用区间表示矩阵W和辅助注意力上下文表示C将序列表示V上采样为指定帧的数量的上采样输出258。在操作612处,方法600包括基于上采样输出258生成针对编码文本序列219的一个或多个预测梅尔频谱图序列302,作为来自包括一个或多个自注意力块262、262a-n的堆栈的频谱图解码器260的输出。在操作614处,方法600包括基于一个或多个预测梅尔频谱图序列302和参考梅尔频谱图序列202来确定最终频谱图损失280。在操作616处,方法600包括基于最终频谱图损失280来训练TTS模型300。
图7是可以被用于实现本文档中描述的系统和方法的示例计算设备700的示意图。计算设备700旨在表示各种形式的数字计算机,诸如膝上型计算机、台式计算机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他适当的计算机。这里示出的组件、它们的连接和关系以及它们的功能仅是示例性的,并且并不意味着限制本文档中描述和/或要求保护的本发明的实施方式。
计算设备700包括处理器710、存储器720、存储设备730、连接到存储器720和高速扩展端口750的高速接口/控制器740、以及连接到低速总线770和存储设备730的低速接口/控制器760。组件710、720、730、740、750和760中的每一个使用各种总线互连,并且可以被安装在公共主板上或酌情以其他方式安装。处理器710能够处理用于在计算设备700内施行的指令,其包括存储在存储器720中或存储设备730上的指令,以在外部输入/输出设备(诸如耦合到高速接口740显示器780)上显示用于图形用户界面(GUI)的图形信息。在其他实施方式中,可以酌情使用多个处理器和/或多个总线以及多个存储器和存储器类型。此外,可以连接多个计算设备700,其中每个设备提供必要操作的部分(例如,作为服务器组、一组刀片服务器或多处理器系统)。
存储器720将信息非暂时性地存储在计算设备700内。存储器720可以是计算机可读介质、(多个)易失性存储单元、或(多个)非易失性存储单元。非暂时性存储器720可以是用于临时或永久存储程序(例如,指令序列)或数据(例如,程序状态信息)以供计算设备700使用的物理设备。非易失性存储器的示例包括但不限于:闪存和只读存储器(ROM)/可编程只读存储器(PROM)/可擦除可编程只读存储器(EPROM)/电可擦除可编程只读存储器(EEPROM)(例如,通常用于固件,诸如启动程序)。易失性存储器的示例包括但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、相变存储器(PCM)以及磁盘或磁带。
存储设备730能够为计算设备700提供大容量存储。在一些实施方式中,存储设备730是计算机可读介质。在各种不同的实施方式中,存储设备730可以是软盘设备、硬盘设备、光盘设备、或磁带设备、闪存或其他类似的固态存储设备、或设备阵列,包括在存储区域网络或其他配置中的设备。在另外的实施方式中,计算机程序产品有形地体现在信息载体中。计算机程序产品包含指令,当该指令被施行时,执行一种或多种方法,诸如上面描述的那些方法。信息载体是计算机或机器可读介质,诸如存储器720、存储设备730或处理器710上的存储器。
高速控制器740管理计算设备700的带宽密集型操作,而低速控制器760管理较低带宽密集型操作。这种职责分配仅是示例性的。在一些实施方式中,高速控制器740耦合到存储器720、显示器780(例如,通过图形处理器或加速器),并且耦合到高速扩展端口750,高速扩展端口750可以接受各种扩展卡(未示出)。在一些实施方式中,低速控制器760耦合到存储设备730和低速扩展端口790。低速扩展端口790,其可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网),可以例如通过网络适配器耦合到一个或多个输入/输出设备,诸如键盘、定点设备、扫描仪或诸如交换机或路由器的网络设备。
计算设备700可以以多种不同的形式来实现,如图所示。例如,它可以被实现为标准服务器700a或者在一组这样的服务器700a中多次实现、实现为膝上型计算机700b、或者实现为机架服务器系统700c的一部分。
本文中描述的系统和技术的各种实现能够以数字电子和/或光学电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合来实现。这些各种实施方式能够包括在包括至少一个可编程处理器的可编程系统上可执行和/或可解释的一个或多个计算机程序中的实施方式,该可编程处理器可以是专用的或通用的、被耦合以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令以及向其传输数据和指令。
软件应用程序(即,软件资源)可以指使计算设备执行任务的计算机软件。在一些示例中,软件应用程序可以被称为“应用程序”、“app”或“程序”。示例应用程序包括但不限于系统诊断应用程序、系统管理应用程序、系统维护应用程序、文字处理应用程序、电子表格应用程序、消息传送应用程序、媒体流应用程序、社交网络应用程序和游戏应用程序。
这些计算机程序(也称为程序、软件、软件应用程序或代码)包括用于可编程处理器的机器指令,并且能够用高级过程和/或面向对象的编程语言和/或汇编/机器语言来实现。如本文中所使用的,术语“机器可读介质”和“计算机可读介质”指的是任何计算机程序产品、非暂时性计算机可读介质、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑设备(PLD)),其用于向可编程处理器提供机器指令和/或数据,包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”指的是用于向可编程处理器提供机器指令和/或数据的任何信号。
本说明书中描述的过程和逻辑流程能够由一个或多个可编程处理器(也称为数据处理硬件)执行,其施行一个或多个计算机程序以通过对输入数据进行操作并生成输出来执行功能。处理和逻辑流程还能够由专用逻辑电路来执行,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。举例来说,适合于施行计算机程序的处理器包括通用和专用微处理器,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或这两者接收指令和数据。计算机的基本元件是用于执行指令的处理器以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括或可操作地耦合以从一个或多个用于存储数据的大容量存储设备例如磁盘、磁光盘或光盘)接收数据或向其传输数据,或这两者。然而,计算机不必须有这样的设备。适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储设备,包括例如半导体存储设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内置硬盘或可移动磁盘;磁光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器能够由专用逻辑电路补充或并入专用逻辑电路中。
为了提供与用户的交互,本公开的一个或多个方面能够在具有显示设备以及可选地键盘和定点设备的计算机上实现,显示设备用于向用户显示信息,例如是CRT(阴极射线管)、LCD(液晶显示器)监视器或触摸屏,定点设备例如是鼠标或轨迹球,用户能够通过它们向计算机提供输入。其他类型的设备也能够被用于提供与用户的交互;例如,提供给用户的反馈能够是任何形式的感觉反馈,诸如视觉反馈、听觉反馈或触觉反馈;来自用户的输入能够以任何形式接收,包括声音、语音或触觉输入。另外,计算机能够通过向由用户使用的设备发送文档以及从由用户使用的设备接收文档来与用户交互,例如,通过响应于从网络浏览器接收到的请求而将网页发送到用户客户端设备上的网络浏览器。
已经描述了多种实施方式。然而,将理解,在不脱离本公开的精神和范围的情况下可以做出各种修改。因此,其他实施方式也在所附权利要求的范围内。
Claims (28)
1.一种计算机实现的方法(600),当所述方法在数据处理硬件(122)上施行时,使所述数据处理硬件(122)执行用于训练非自回归文本到语音TTS模型(300)的操作,所述操作包括:
获得与变分嵌入(220)级联的编码文本序列(219)的序列表示(224);
使用持续时间模型网络(230):
基于所述序列表示(224),预测由所述编码文本序列(219)表示的每个音素的音素持续时间(240);
基于预测音素持续时间(240):
使用以所述序列表示(224)为条件的第一函数(244)来学习区间表示矩阵;以及
使用以所述序列表示(224)为条件的第二函数(248)来学习辅助注意力上下文表示;
使用所述区间表示和所述辅助注意力上下文表示将所述序列表示(224)上采样为指定帧的数量的上采样输出(258);以及
基于所述上采样输出(258),针对所述编码文本序列(219)生成一个或多个预测梅尔频谱图序列(302),作为来自包括一个或多个自注意力块的堆栈的频谱图解码器(260)的输出;
基于所述一个或多个预测梅尔频谱图序列(302)和参考梅尔频谱图序列(202)来确定最终频谱图损失(280);以及
基于所述最终频谱图损失(280)来训练所述TTS模型(300)。
2.根据权利要求1所述的计算机实现的方法(600),其中,所述第一函数(244)和所述第二函数(248)各自包括相应的多层基于感知的可学习函数。
3.根据权利要求1或2所述的计算机实现的方法(600),其中,所述操作进一步包括:
基于所述预测音素持续时间(240)和平均音素持续时间(240)来确定全局音素持续时间损失(241),
其中,训练所述TTS模型(300)是进一步基于所述全局音素持续时间损失(241)。
4.根据权利要求3所述的计算机实现的方法(600),其中,基于所述最终频谱图损失(280)和所述全局音素持续时间损失(241)来训练所述TTS模型(300)包括训练所述持续时间模型网络(230)以针对每个音素预测所述音素持续时间(240),而不使用从外部对准器提取的受监督音素持续时间标签。
5.根据权利要求1-4中任一项所述的计算机实现的方法(600),其中,所述操作进一步包括,使用所述持续时间模型网络(230):
基于所述预测音素持续时间(240),针对由所述编码文本序列(219)表示的每个音素来生成相应的开始边界和结束边界;
基于由所述编码文本序列(219)表示的音素的数量和所述参考梅尔频谱图序列(202)中的参考帧的数量,将针对每个音素生成的所述相应的开始边界和结束边界映射到相应的网格矩阵(243),
其中,学习所述区间表示是基于从所述开始边界和所述结束边界映射的所述相应的网格矩阵(243);以及
其中,学习所述辅助注意力上下文表示是基于从所述开始边界和所述结束边界映射的所述相应的网格矩阵(243)。
6.根据权利要求1-5中任一项所述的计算机实现的方法(600),其中,将所述序列表示(224)上采样为所述上采样输出(258)包括:
确定所述区间表示矩阵和所述序列表示(224)的乘积(254);
确定所述区间表示矩阵和所述辅助注意力上下文表示的爱因斯坦求和einsum(256);以及
对所述区间表示矩阵和所述序列表示(224)的所述乘积(254)以及所述einsum(256)的投影(252)求和以生成所述上采样输出(258)。
7.根据权利要求1-6中任一项所述的计算机实现的方法(600),其中,所述操作进一步包括:
接收包括参考音频信号(201)和对应的输入文本序列(206)的训练数据,所述参考音频信号(201)包括口头话语并且所述输入文本序列(206)对应于所述参考音频信号(201)的转录;
使用残差编码器(180)将所述参考音频信号(201)编码成变分嵌入(220),所述变分嵌入(220)从所述参考音频信号(201)中解开风格/韵律信息;以及
使用文本编码器(210)将所述输入文本序列(206)编码为所述编码文本序列(219)。
8.根据权利要求7所述的计算机实现的方法(600),其中:
所述残差编码器(180)包括全局变分自动编码器VAE;以及
将所述参考音频信号(201)编码为所述变分嵌入(220)包括:
从所述参考音频信号(201)中采样所述参考梅尔频谱图序列(202);以及
使用所述全局VAE将所述参考梅尔频谱图序列(202)编码为所述变分嵌入(220)。
9.根据权利要求7所述的计算机实现的方法(600),其中:
所述残差编码器(180)包括音素级细粒度变分自动编码器VAE;以及
将所述参考音频信号(201)编码为所述变分嵌入(220)包括:
从所述参考音频信号(201)中采样所述参考梅尔频谱图序列(202);
将所述参考梅尔频谱图序列(202)与从所述输入文本序列(206)提取的音素序列中的每个音素对准;以及
基于将所述参考梅尔频谱图序列(202)与所述音素序列中的每个音素对准,使用所述音素级细粒度VAE来编码音素级变分嵌入(220)序列。
10.根据权利要求7-9中任一项所述的计算机实现的方法(600),其中,所述残差编码器(180)包括轻量级卷积LConv块(420)的堆栈,所述LConv块(420)的堆栈中的每个LConv块(420)包括:
门控线性单元(GLU)层(502);
LConv层(504),所述LConv层被配置为接收所述GLU层(502)的输出;
残差连接,所述残差连接被配置为级联所述LConv层(504)的输出与所述GLU层(502)的输入;以及
最终前馈层,所述最终前馈层被配置为接收级联所述LConv层(504)的所述输出与所述GLU层(502)的所述输入的所述残差连接作为输入。
11.根据权利要求7-10中任一项所述的计算机实现的方法(600),其中,所述操作进一步包括:
级联所述编码文本序列(219)、所述变分嵌入(220)和表示发出所述参考音频信号(201)的参考说话者的身份的参考说话者嵌入;以及
基于所述持续时间模型网络(230)接收所述编码文本序列(219)、所述变分嵌入(220)和所述参考说话者嵌入的所述级联作为输入来生成所述序列表示(224)。
12.根据权利要求7-11中任一项所述的计算机实现的方法(600),其中:
所述输入文本序列(206)包括音素序列;以及
将所述输入文本序列(206)编码为所述编码文本序列(219)包括:
从音素查找表接收所述音素序列中每个音素的相应的嵌入(207);
针对所述音素序列中的每个音素,使用所述文本编码器(210)的编码器预网神经网络来处理相应的嵌入(207)以生成所述音素的相应的变换后的嵌入(209);
使用一组卷积块来处理所述相应的变换后的嵌入(209)以生成卷积输出(213);以及
使用自注意力块的堆栈来处理所述卷积输出(213)以生成所述编码文本序列(219)。
13.根据权利要求1-12中任一项所述的计算机实现的方法(600),其中,所述自注意力块的堆栈中的每个自注意力块包括相同的轻量级卷积(LConv)块。
14.根据权利要求1-13中任一项所述的计算机实现的方法(600),其中,所述自注意力块的堆栈中的每个自注意力块包括相同的变换器块。
15.一种用于训练非自回归文本到语音TTS模型(300)的系统(100),所述系统(100)包括:
数据处理硬件(122);以及
存储器硬件(124),所述存储器硬件(124)与所述数据处理硬件(122)通信,所述存储器硬件(124)存储指令,所述指令当由所述数据处理硬件(122)施行时使所述数据处理硬件(122)执行包括以下的操作:
获得与变分嵌入(220)级联的编码文本序列(219)的序列表示(224);
使用持续时间模型网络(230):
基于所述序列表示(224),预测由所述编码文本序列(219)表示的每个音素的音素持续时间(240);
基于预测音素持续时间(240):
使用以所述序列表示(224)为条件的第一函数(244)来学习区间表示矩阵;以及
使用以所述序列表示(224)为条件的第二函数(248)来学习辅助注意力上下文表示;
使用所述区间表示和所述辅助注意力上下文表示将所述序列表示(224)上采样为指定帧的数量的上采样输出;以及
基于所述上采样输出,针对所述编码文本序列(219)生成一个或多个预测梅尔频谱图序列,作为来自包括一个或多个自注意力块的堆栈的频谱图解码器(260)的输出;
基于所述一个或多个预测梅尔频谱图序列和参考梅尔频谱图序列来确定最终频谱图损失(280);以及
基于所述最终频谱图损失(280)来训练所述TTS模型(300)。
16.根据权利要求15所述的系统(100),其中,所述第一函数(244)和所述第二函数(248)各自包括相应的多层基于感知的可学习函数。
17.根据权利要求15或16所述的系统(100),其中,所述操作进一步包括:
基于所述预测音素持续时间(240)和平均音素持续时间(240)来确定全局音素持续时间损失(241),
其中,训练所述TTS模型(300)是进一步基于所述全局音素持续时间损失(241)。
18.根据权利要求17所述的系统(100),其中,基于所述最终频谱图损失(280)和所述全局音素持续时间损失(241)来训练所述TTS模型(300)包括训练所述持续时间模型网络(230)以针对每个音素预测所述音素持续时间(240),而不使用从外部对准器提取的受监督音素持续时间标签。
19.根据权利要求15-18中任一项所述的系统(100),其中,所述操作进一步包括,使用所述持续时间模型网络(230):
基于所述预测音素持续时间(240),针对由所述编码文本序列(219)表示的每个音素来生成相应的开始边界和结束边界;
基于由所述编码文本序列(219)表示的音素的数量和所述参考梅尔频谱图序列中的参考帧的数量,将针对每个音素生成的所述相应的开始边界和结束边界映射到相应的网格矩阵(243),
其中,学习所述区间表示是基于从所述开始边界和所述结束边界映射的所述相应的网格矩阵(243);以及
其中,学习所述辅助注意力上下文表示是基于从所述开始边界和所述结束边界映射的所述相应的网格矩阵(243)。
20.根据权利要求15-19中任一项所述的系统(100),其中,将所述序列表示(224)上采样为所述上采样输出包括:
确定所述区间表示矩阵和所述序列表示(224)的乘积;
确定所述区间表示矩阵和所述辅助注意力上下文表示的爱因斯坦求和einsum;以及
对所述区间表示矩阵和所述序列表示(224)的所述乘积以及所述einsum的投影求和以生成所述上采样输出。
21.根据权利要求15-20中任一项所述的系统(100),其中,所述操作进一步包括:
接收包括参考音频信号(201)和对应的输入文本序列(206)的训练数据,所述参考音频信号(201)包括口头话语并且所述输入文本序列(206)对应于所述参考音频信号(201)的转录;
使用残差编码器(180)将所述参考音频信号(201)编码成变分嵌入(220),所述变分嵌入(220)从所述参考音频信号(201)中解开风格/韵律信息;以及
使用文本编码器(210)将所述输入文本序列(206)编码为所述编码文本序列(219)。
22.根据权利要求21所述的系统(100),其中:
所述残差编码器(180)包括全局变分自动编码器VAE;以及
将所述参考音频信号(201)编码为所述变分嵌入(220)包括:
从所述参考音频信号(201)采样所述参考梅尔频谱图序列;以及
使用所述全局VAE将所述参考梅尔频谱图序列编码为所述变分嵌入(220)。
23.根据权利要求21所述的系统(100),其中:
所述残差编码器(180)包括音素级细粒度变分自动编码器VAE;以及
将所述参考音频信号(201)编码为所述变分嵌入(220)包括:
从所述参考音频信号(201)采样所述参考梅尔频谱图序列;
将所述参考梅尔频谱图序列与从所述输入文本序列(206)提取的音素序列中的每个音素对准;以及
基于将所述参考梅尔频谱图序列与所述音素序列中的每个音素对准,使用所述音素级细粒度VAE来编码音素级变分嵌入(220)序列。
24.根据权利要求21-23中任一项所述的系统(100),其中,所述残差编码器(180)包括轻量级卷积LConv块的堆栈,所述LConv块(420)的堆栈中的每个LConv块包括:
门控线性单元(GLU)层;
LConv层(504),所述LConv层被配置为接收所述GLU层(502)的输出;
残差连接,所述残差连接被配置为级联所述LConv层(504)的输出与所述GLU层(502)的输入;以及
最终前馈层,所述最终前馈层被配置为接收级联所述LConv层(504)的所述输出与所述GLU层(502)的所述输入的所述残差连接作为输入。
25.根据权利要求21-24中任一项所述的系统(100),其中,所述操作进一步包括:
级联所述编码文本序列(219)、所述变分嵌入(220)和表示发出所述参考音频信号(201)的参考说话者的身份的参考说话者嵌入;以及
基于所述持续时间模型网络接收所述编码文本序列(219)、所述变分嵌入(220)和所述参考说话者嵌入的所述级联作为输入来生成序列表示(224)。
26.根据权利要求21-25中任一项所述的系统(100),其中:
所述输入文本序列(206)包括音素序列;以及
将所述输入文本序列(206)编码为所述编码文本序列(219)包括:
从音素查找表接收所述音素序列中的每个音素的相应的嵌入;
针对所述音素序列中的每个音素,使用所述文本编码器(210)的编码器预网神经网络来处理相应的嵌入以生成所述音素的相应的变换后的嵌入(209);
使用一组卷积块来处理所述相应的变换后的嵌入(209)以生成卷积输出(213);以及
使用自注意力块的堆栈来处理所述卷积输出(213)以生成所述编码文本序列(219)。
27.根据权利要求21-26中任一项所述的系统(100),其中,所述自注意力块的堆栈中的每个自注意力块包括相同的轻量级卷积(LConv)块。
28.根据权利要求21-27中任一项所述的系统(100),其中,所述自注意力块的堆栈中的每个自注意力块包括相同的变换器块。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163164503P | 2021-03-22 | 2021-03-22 | |
US63/164,503 | 2021-03-22 | ||
PCT/US2021/033310 WO2022203699A1 (en) | 2021-03-22 | 2021-05-20 | Unsupervised parallel tacotron non-autoregressive and controllable text-to-speech |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117043855A true CN117043855A (zh) | 2023-11-10 |
Family
ID=76444631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180096036.2A Pending CN117043855A (zh) | 2021-03-22 | 2021-05-20 | 无监督并行Tacotron非自回归和可控的文本到语音 |
Country Status (6)
Country | Link |
---|---|
US (2) | US11823656B2 (zh) |
EP (1) | EP4295353A1 (zh) |
JP (1) | JP2024510679A (zh) |
KR (1) | KR20230156121A (zh) |
CN (1) | CN117043855A (zh) |
WO (1) | WO2022203699A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2575423B (en) * | 2018-05-11 | 2022-05-04 | Speech Engineering Ltd | Computer implemented method and apparatus for recognition of speech patterns and feedback |
US11830476B1 (en) * | 2021-06-08 | 2023-11-28 | Amazon Technologies, Inc. | Learned condition text-to-speech synthesis |
US20230099732A1 (en) * | 2021-09-30 | 2023-03-30 | Microsoft Technology Licensing, Llc | Computing system for domain expressive text to speech |
US11769481B2 (en) | 2021-10-07 | 2023-09-26 | Nvidia Corporation | Unsupervised alignment for text to speech synthesis using neural networks |
CN115547362B (zh) * | 2022-10-24 | 2024-05-10 | 中国航空综合技术研究所 | 基于梅尔谱图分解和神经网络融合进行疲劳度检测的方法 |
CN116072098B (zh) * | 2023-02-07 | 2023-11-14 | 北京百度网讯科技有限公司 | 音频信号生成方法、模型训练方法、装置、设备和介质 |
CN116825130B (zh) * | 2023-08-24 | 2023-11-21 | 硕橙(厦门)科技有限公司 | 一种深度学习模型蒸馏方法、装置、设备及介质 |
CN117351324B (zh) * | 2023-12-04 | 2024-03-01 | 支付宝(杭州)信息技术有限公司 | 通过神经网络模型进行文档图像处理的方法及装置 |
CN117649839B (zh) * | 2024-01-29 | 2024-04-19 | 合肥工业大学 | 一种基于低秩适应的个性化语音合成方法 |
CN117809621B (zh) * | 2024-02-29 | 2024-06-11 | 暗物智能科技(广州)有限公司 | 一种语音合成方法、装置、电子设备及存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10872598B2 (en) * | 2017-02-24 | 2020-12-22 | Baidu Usa Llc | Systems and methods for real-time neural text-to-speech |
EP3625791A4 (en) * | 2017-05-18 | 2021-03-03 | Telepathy Labs, Inc. | TEXT-SPEECH SYSTEM AND PROCESS BASED ON ARTIFICIAL INTELLIGENCE |
US10896669B2 (en) * | 2017-05-19 | 2021-01-19 | Baidu Usa Llc | Systems and methods for multi-speaker neural text-to-speech |
US11017761B2 (en) * | 2017-10-19 | 2021-05-25 | Baidu Usa Llc | Parallel neural text-to-speech |
US11264010B2 (en) * | 2018-05-11 | 2022-03-01 | Google Llc | Clockwork hierarchical variational encoder |
CN111739508B (zh) * | 2020-08-07 | 2020-12-01 | 浙江大学 | 一种基于dnn-hmm双模态对齐网络的端到端语音合成方法及系统 |
JP2022081790A (ja) * | 2020-11-20 | 2022-06-01 | 株式会社日立製作所 | 音声合成装置、音声合成方法、および音声合成プログラム |
-
2021
- 2021-05-20 KR KR1020237034860A patent/KR20230156121A/ko active Search and Examination
- 2021-05-20 CN CN202180096036.2A patent/CN117043855A/zh active Pending
- 2021-05-20 WO PCT/US2021/033310 patent/WO2022203699A1/en active Application Filing
- 2021-05-20 EP EP21732715.4A patent/EP4295353A1/en active Pending
- 2021-05-20 JP JP2023558226A patent/JP2024510679A/ja active Pending
- 2021-05-21 US US17/326,542 patent/US11823656B2/en active Active
-
2023
- 2023-10-31 US US18/499,031 patent/US20240062743A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20240062743A1 (en) | 2024-02-22 |
JP2024510679A (ja) | 2024-03-08 |
US20220301543A1 (en) | 2022-09-22 |
KR20230156121A (ko) | 2023-11-13 |
US11823656B2 (en) | 2023-11-21 |
EP4295353A1 (en) | 2023-12-27 |
WO2022203699A1 (en) | 2022-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7108147B2 (ja) | 表現用エンドツーエンド音声合成における変分埋め込み容量 | |
CN117043855A (zh) | 无监督并行Tacotron非自回归和可控的文本到语音 | |
US11580952B2 (en) | Multilingual speech synthesis and cross-language voice cloning | |
US11605368B2 (en) | Speech recognition using unspoken text and speech synthesis | |
US11514888B2 (en) | Two-level speech prosody transfer | |
US11908448B2 (en) | Parallel tacotron non-autoregressive and controllable TTS | |
US11842728B2 (en) | Training neural networks to predict acoustic sequences using observed prosody info | |
CN114787913A (zh) | 训练语音合成以生成不同的语音声音 | |
US20240087558A1 (en) | Methods and systems for modifying speech generated by a text-to-speech synthesiser | |
JP2024505076A (ja) | 多様で自然なテキスト読み上げサンプルを生成する | |
US11960852B2 (en) | Robust direct speech-to-speech translation | |
CN114882868A (zh) | 语音合成、情绪迁移、交互方法、存储介质、程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |