CN114746935A - 基于注意力的时钟层次变分编码器 - Google Patents

基于注意力的时钟层次变分编码器 Download PDF

Info

Publication number
CN114746935A
CN114746935A CN201980102691.7A CN201980102691A CN114746935A CN 114746935 A CN114746935 A CN 114746935A CN 201980102691 A CN201980102691 A CN 201980102691A CN 114746935 A CN114746935 A CN 114746935A
Authority
CN
China
Prior art keywords
syllable
utterance
embedding
level
fixed length
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
Application number
CN201980102691.7A
Other languages
English (en)
Inventor
罗伯特·克拉克
詹竣安
文森特·万
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN114746935A publication Critical patent/CN114746935A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • G10L13/10Prosody rules derived from text; Stress or intonation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/04Details of speech synthesis systems, e.g. synthesiser structure or memory management
    • G10L13/047Architecture of speech synthesisers
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • G10L13/10Prosody rules derived from text; Stress or intonation
    • G10L2013/105Duration

Abstract

一种用于在合成语音中表示预期韵律的方法(400)包括接收具有至少一个词(240)的文本话语(310),和为文本话语选择话语嵌入(204)。文本话语中的每个词具有至少一个音节(230),并且每个音节具有至少一个音素(220)。话语嵌入表示预期韵律。对于每个音节,使用所选择的话语嵌入,该方法还包括:通过基于注意力机制(340)对该音节的每个音素的语言特征(222)的注意力来解码该音节的韵律音节嵌入(232、234)来预测该音节的持续时间(238),并基于所预测的该音节的持续时间来生成多个固定长度预测帧(260)。

Description

基于注意力的时钟层次变分编码器
技术领域
本公开涉及一种基于注意力的时钟层次变分编码器。
背景技术
语音合成系统使用文本到语音(TTS)模型从文本输入生成语音。生成/合成的语音应该准确地传达消息(可理解度),同时听起来像具有预期韵律(表现力)的人类语音(自然度)。虽然传统的拼接和参数合成模型能够提供可理解的语音,并且语音的神经建模的最新进展已经显著提高了合成语音的自然度,但是大多数现有的TTS模型在建模韵律方面是无效的,从而导致重要应用使用的合成语音缺乏表现力。例如,对于诸如会话助手和长格式阅读器之类的应用来说,希望通过诸如语调、重音、节奏和风格的输入文本输入中没有传达的韵律特征,来产生真实的语音。例如,简单的陈述可以用许多不同的方式说出,这取决于该陈述是问题、问题的答案、该陈述中存在不确定性,还是传达输入文本未指明的关于环境或场境的任何其他含义。
发明内容
本公开的一个方面提供了一种用于基于注意力的时钟层次变分编码器的方法。该方法包括在数据处理硬件处接收具有至少一个词的文本话语,每个词具有至少一个音节,每个音节具有至少一个音素。该方法还包括由数据处理硬件为文本话语选择话语嵌入。该话语嵌入表示预期韵律。对于每个音节,使用所选择的话语嵌入,该方法包括由数据处理硬件通过基于注意力机制对音节的每个音素的语言特征的注意力解码音节的韵律音节嵌入来预测音节的持续时间。对于每个音节,使用所选择的话语嵌入,该方法还包括由数据处理硬件基于该音节的预测持续时间生成多个固定长度的预测帧。
本公开的实现方式可以包括一个或多个以下可选特征。在一些实施方式中,该方法包括由数据处理硬件基于音节的预测持续时间来预测音节的音高轮廓。在该实现方式中,当多个固定长度预测帧包括固定长度预测音高帧时,每个固定长度预测音高帧表示音节的预测音高轮廓的一部分。
在一些示例中,对于每个音节,使用所选择的话语嵌入,该方法包括由数据处理硬件基于音节的预测持续时间来预测每个音节的能量轮廓。在这个示例中,该方法还包括由数据处理硬件基于对应音节的预测持续时间生成多个固定长度预测能量帧,每个固定长度能量帧表示对应音节的预测能量轮廓。多个固定长度预测帧可以包括音节的固定长度预测频谱帧。
在一些配置中,表示文本话语的层次语言结构的网络包括包含文本话语的每个词的第一级别、包含文本话语的每个音节的第二级别和包含文本话语的每个音节的每个固定长度预测帧的第三级别。这里,表示层次语言结构的网络的第一级别可以包括表示文本话语的每个词的长短期记忆(LSTM)处理块。表示层次语言结构的网络的第二级别可以包括表示文本话语的每个音节的LSTM处理块,第二级别的LSTM处理块相对于第一级别的LSTM处理块并且比第一级别的LSTM处理块更快计时。表示层次语言结构的网络的第三级别可以包括表示每个固定长度预测帧的LSTM处理块,第三级别的LSTM处理块相对于第二级别的LSTM处理块并且比第二级别的LSTM处理块更快计时。
在一些配置中,预测音节的持续时间包括,对于与音节相关联的每个音素,编码对应音素的一个或多个语言特征,将编码的一个或多个语言特征输入到注意力机制中,以及将注意力机制的注意力应用于韵律音节嵌入。韵律音节嵌入可以包括基于对应于话语嵌入的帧的第一音节嵌入和基于与话语嵌入的一个或多个音素相关联的音素语言特征的第二音节嵌入。
在一些示例中,该方法包括由数据处理硬件接收包括多个参考音频信号的训练数据,并且由数据处理硬件通过将每个参考音频信号编码成表示参考音频信号的相应韵律的对应固定长度话语嵌入来训练韵律模型的深度神经网络。在这个示例中,每个参考音频信号包括人类语音的口语话语,并且具有对应的韵律。这里,该方法可以包括由数据处理硬件通过利用基于帧的音节嵌入和基于单音特征的音节嵌入对多个语言单元的语言特征进行编码来生成所选择的话语嵌入。话语嵌入可以包括固定长度的数值向量。
在一些实现方式中,注意力机制的注意力包括基于位置的注意力。基于位置的注意力可以包括单调移位的位置敏感注意力,该单调移位的位置敏感注意力由相应音节的音素信息窗口定义。注意力机制可以包括转换器。
本公开的另一方面提供了用于基于注意力的时钟层次变分编码器的系统。该系统包括数据处理硬件和与数据处理硬件通信的存储器硬件。存储器硬件存储指令,当在数据处理硬件上执行时,这些指令使得数据处理硬件执行操作。这些操作包括接收具有至少一个词的文本话语,每个词具有至少一个音节,每个音节具有至少一个音素。该操作还包括为文本话语选择话语嵌入,该话语嵌入表示预期韵律。对于每个音节,使用所选择的话语嵌入,操作还包括通过基于注意力机制对音节的每个音素的语言特征的注意力来解码音节的韵律音节嵌入,预测音节的持续时间。对于每个音节,使用所选择的话语嵌入,操作还包括基于该音节的预测持续时间生成多个固定长度的预测帧。
这个方面可以包括一个或多个以下可选特征。在一些配置中,操作包括基于音节的预测持续时间来预测音节的音高轮廓,并且当多个固定长度预测帧包括固定长度预测音高帧时,每个固定长度预测音高帧表示音节的预测音高轮廓的一部分。对于每个音节,操作可以包括使用所选择的话语嵌入,基于该音节的预测持续时间预测每个音节的能量轮廓,并且基于对应音节的预测持续时间生成多个固定长度预测能量帧,每个固定长度能量帧表示对应音节的预测能量轮廓。多个固定长度预测帧可以包括音节的固定长度预测频谱帧。
在一些示例中,表示文本话语的层次语言结构的网络包括包含文本话语的每个词的第一级别、包含文本话语的每个音节的第二级别以及包含文本话语的每个音节的每个固定长度预测帧的第三级别。这里,表示层次语言结构的网络的第一级别可以包括表示文本话语的每个词的长短期记忆(LSTM)处理块。表示层次语言结构的网络的第二级别可以包括表示文本话语的每个音节的LSTM处理块,第二级别的LSTM处理块相对于第一级别的LSTM处理块并且比第一级别的处理块更快计时。表示层次语言结构的网络的第三级别可以包括表示每个固定长度预测帧的LSTM处理块,第三级别的LSTM处理块相对于第二级别的LSTM处理块并且比第二级别的处理块更快计时。
在一些实现方式中,预测音节的持续时间包括,对于与音节相关联的每个音素,编码对应音素的一个或多个语言特征,将编码的一个或多个语言特征输入到注意力机制中,并且将注意力机制的注意力应用于韵律音节嵌入。韵律音节嵌入可以包括基于对应于话语嵌入的帧的第一音节嵌入和基于与话语嵌入的一个或多个音素相关联的音素语言特征的第二音节嵌入。
在一些配置中,操作包括接收包括多个参考音频信号的训练数据,每个参考音频信号包括人类语音的口头话语并具有对应的韵律。在这种配置中,操作还包括通过将每个参考音频信号编码成表示参考音频信号的对应韵律的对应固定长度话语嵌入来训练韵律模型的深度神经网络。这里,操作可以包括通过利用基于帧的音节嵌入和基于单音特征的音节嵌入对多个语言单元的语言特征进行编码来生成所选择的话语嵌入。话语嵌入可以包括固定长度的数值向量。
在一些示例中,注意力机制的注意力包括基于位置的注意力。这里,基于位置的注意力可以包括单调移位的位置敏感注意力,该单调移位的位置敏感注意力由相应音节的音素信息窗口定义。注意力机制可以包括转换器。
在附图和以下描述中阐述了本公开的一个或多个实现方式的细节。根据说明书和附图以及权利要求书,其他方面、特征和优点将变得显而易见。
附图说明
图1是用于训练深度神经网络以提供用于预测文本话语的韵律表示的可控韵律模型的示例系统的示意图。
图2A是用于将参考音频信号的韵律编码成固定长度话语嵌入的层次语言结构的示意图。
图2B和图2C是使用话语嵌入来预测文本话语的韵律表示的层次语言结构的示意图。
图3A至图3C是用于预测文本话语的音节特征的示例自编码器的示意图。
图3D是示例注意力机制的示意图,该注意力机制被配置成给予形成编码音素状态的单音级别特征注意力。
图4是用于预测接收到的文本话语的表示的方法的示例操作布置的流程图。
图5是可用于实现本文描述的系统和方法的示例计算设备的示意图。
不同附图中相同的附图标记指示相同的元件。
具体实施方式
通常由语音合成系统使用的文本到语音(TTS)模型通常在运行时仅被给定文本输入,而没有任何参考声学表示,并且为了产生听起来真实的合成语音,必须引入文本输入没有提供的许多语言因素。这些语言因素的子集统称为韵律,并且可以包括语调(音高变化)、重音(重读音节与非重读音节)、声音持续时间、响度、音调、节奏和语音风格。韵律可以指示语音的情绪状态、语音的形式(例如,陈述、问题、命令等)、语音的讽刺或挖苦的存在、语音知识的不确定性、或不能被输入文本的语法或词汇选择编码的其他语言元素。因此,与高韵律变化度相关联的给定文本输入可以产生合成语音,该合成语音具有音高和说话持续时间的局部变化以传达不同的语义含义,并且还具有整个音高轨迹的全局变化以传达不同的情绪和情感。
神经网络模型通过预测文本输入没有提供的对应于韵律的语言因素,为鲁棒地合成语音提供了潜力。因此,诸如有声读物旁白、新闻阅读器、语音设计软件和会话助手的许多应用可以产生听起来不单调的听起来真实的合成语音。本文的实现方式针对一种神经网络模型,该神经网络模型包括变分自编码器(VAE),该变分自编码器具有编码器部分和解码器部分,编码器部分用于将对应于口头话语的参考音频信号编码成表示口头话语的韵律的话语嵌入,解码器部分解码话语嵌入以预测音节的持续时间和每个音节的音高和能量轮廓。
编码器部分可以通过以表示话语的语言特征为条件对大量参考音频信号进行编码来训练表示韵律的话语嵌入。语言特征可以包括但不限于每个音素的单个声音、每个音节是重读还是非重读、每个词的类型(例如,名词/形容词/动词)和/或词在话语中的位置,以及话语是问题还是短语。每个话语嵌入由固定长度的数值向量表示。在一些实现方式中,固定长度的数值向量包括等于256的值。然而,其他实现方式可以使用值大于或小于256(例如,128)的固定长度数值向量。解码器部分可以通过第一解码器将固定长度话语嵌入解码为音节持续时间序列,并使用音节持续时间解码为音高和能量的固定长度帧(例如,5毫秒)序列中。在训练期间,由解码器部分预测的音节持续时间和音高和能量的固定长度帧紧密匹配从与固定长度话语嵌入相关联的参考音频信号中采样的音节持续时间和音高和能量的固定长度帧。
本公开的VAE包括时钟层次变分自编码器(CHiVE),其并入长短期记忆(LSTM)块的层次堆叠层,LSTM块的每个层并入话语的结构。这里,每个LSTM块可以分成一个或多个LSTM单体(cell)。由于话语可以被分成诸如音素、音节、词、短语或句子等语言单元的任何一个或组合,所以LSTM块可以包括表示这些单元的一个或多个层。例如,LSTM块包括LSTM单体,所述LSTM单体包括表示音素、音节词、短语或句子的一个或多个层。此外,LSTM单体的堆叠层的层次可变地被计时到层次输入数据的长度。例如,如果输入数据包含一个三音节的词,后面跟着一个四音节的词,那么对于第一个输入词,CHiVE的音节层将相对于词层的单个时钟计时三次,然后对于第二个词,音节层将相对于词层的后续单个时钟再计时四次。因此,不是使用其中与给定LSTM单体相关联的存储器仅在大约半秒内有效(即,以五(5)毫秒的帧速率100次步进)的基于帧的技术,并且因此,只为语音的两个或三个音节提供LSTM单元存储器,CHiVE时钟的音素、词和音节层分别具有音素、词和音节,给予堆叠层的LSTM单体对最后100个词、音节或音素的存储器。附加地或替代地,CHiVE可以适于使用其他形式的神经网络(NN)或循环神经网络(RNN),而不是使用层次层的LSTM结构来表示话语结构。
在推断期间,CHiVE被配置成接收文本话语并为该文本话语选择话语嵌入。所接收的文本话语具有至少一个词,每个词具有至少一个音节,并且每个音节具有至少一个音素。由于文本话语缺少场境、语义信息和语用信息来指导适当的韵律以从话语中产生合成语音,因此CHiVE使用所选择的话语嵌入作为潜在变量来表示预期韵律。此后,CHiVE使用所选择的话语嵌入,通过用针对该音节的对应韵律音节嵌入对包含在该音节中的每个音素的语言特征进行编码来预测每个音节的持续时间,并且基于该音节的预测持续时间来预测每个音节的音高。最后,CHiVE被配置为基于每个音节的预测持续时间生成多个固定长度的音高帧,使得每个固定长度的音高帧表示音节的预测音高。CHiVE可以类似地基于每个音节的预测持续时间来预测该音节的能量(例如,响度),并且生成多个固定长度的能量帧,每个能量帧表示该音节的预测能量。固定长度的音高和/或能量帧可被提供给TTS系统的单元选择模型或波网模型,以产生具有由输入固定长度话语嵌入提供的预期韵律的合成语音。
一般来说,一些语音合成系统可以分为两个阶段。第一阶段生成识别影响包含在话语中的语音声音的因素的语言规范,第二阶段使用语言规范生成合成语音的波形。在一些示例中,代替预测语音合成系统的另一方面用来生成语音的语言特征,CHiVE可替换地或附加地被配置成预测频谱帧(例如,多个固定长度的频谱帧,诸如mel帧)。通过预测频谱帧,CHiVE可以最小化语音合成系统从语言规范生成波形的进一步处理。这里,CHiVE使用所选择的话语嵌入,通过用音节的相应韵律音节嵌入对包含在音节中的每个音素的语言特征进行编码,来预测每个音节的持续时间。利用每个音节的预测持续时间,CHiVE可以生成多个固定长度的频谱帧。例如,第一解码器为每个音节生成预测的持续时间,该持续时间指示第二解码器应该为每个音节生成的频谱帧的数量。第二解码器然后对由每个音节的预测持续时间指示的数量的频谱帧进行序列解码。然后,语音合成系统可以使用频谱帧来生成合成语音。例如,频谱帧被提供给神经声码器。
遗憾的是,依靠某些语言单元来预测诸如音高、能量或频谱帧的语言因素可能会有其缺点。特别地,语音样本(例如,训练语音合成系统的记录样本)具有不准确音素序列的一些可能性。由于这些不准确性,使用音节对齐(例如,音节边界)可能比发音边界更可靠。利用音素,从语音样本中清楚地定义每个预期的音素可能不容易或不直接。一个人可能试图发音三个音素,但是根据场境或该人的口音,该人可能不能清楚或准确地发音每个音素。对于收集的样本,在提供样本的人之间或来自同一个人的样本之间可能存在发音(音素级别)口音的差异。有时,同一个人可能根据句子或个人的交流速度而不同地发音。当快速说话时,一个人可能混合音素或完全丢弃音素。
作为另一个示例,当地口音对于在该地区更常用的词通常缺乏清晰的发音。举例来说,这可能发生在城市名称上。例如,Edinburgh市至少有三个音节——“Ed-in-burgh”,但当以快速语音或使用当地口音陈述时,它可能会被发音“Em-bra”,基本上被截短为两个音节。对于这两个音节,很难匹配人们期望在Edinburgh的发音中出现的所有音素(例如,三音节形式)。这些发音差异可能出现在短的基本词或有多个音节的较大词中。例如,像具有发音“th-ahh-t”的“that”这样的简单词可以减少为“thuht”。当语音的发音是次优的(例如,变得松懈或急促),样本中存在的音素序列不一定是准确的。如果模型试图将音素分配给这些类型的不准确音素样本,该模型就有出错的风险。
为了克服这些可能导致不可信数据的音素问题,CHiVE可以使用不依赖于音素对齐的方法。例如,CHiVE试图独立于音素的数量来预测音节的帧的数量。这里,CHiVE可能不再知道关于每个音素的单个帧数的任何事物。在一些示例中,关于音节的发音内容的信息基于音素的语言特征(例如,关于音节的任何语言信息)。在这些示例中,CHiVE使用被编码并提供给注意力机制的音素的语言特征来预测音节信息(例如,每个音节的帧数)。
图1示出了示例系统100,用于训练深度神经网络200以提供可控韵律模型300,并使用韵律模型300预测文本话语310的韵律表示302。系统100包括计算系统110,其具有数据处理硬件112和存储器硬件114,存储器硬件114与数据处理硬件112通信并存储使数据处理硬件112执行操作的指令。在一些实现方式中,计算系统110(例如,数据处理硬件112)向文本到语音(TTS)系统120提供基于经过训练的深度神经网络200的韵律模型300,用于控制来自输入文本话语310的合成语音122的韵律。由于输入文本话语310无法传达场境、语义和语用来引导合成语音122的适当韵律,韵律模型300可以通过使模型300以根据从文本话语310提取的语言特征为条件,并使用固定长度话语嵌入204作为表示文本话语310的预期韵律的潜在变量,来预测输入文本话语310的韵律表示302。在一些示例中,计算系统110实现TTS系统120。在其他示例中,计算系统110和TTS系统120是不同的,并且在物理上彼此分离。计算系统120可以包括分布式系统(例如,云计算环境)。
在一些实现方式中,深度神经网络200在参考音频信号202的大的集合上训练。每个参考音频信号202可以包括由麦克风记录的并且具有韵律表示的人类语音的口头话语。在训练期间,深度神经网络200可以接收针对同一口头话语的多个参考音频信号202,但是具有变化的韵律(即,同一话语可以以多种不同方式说出)。这里,参考音频信号202是可变长度的,使得即使内容相同,口头话语的持续时间也会变化。深度神经网络200被配置成将与每个参考音频信号202相关联的韵律表示编码/压缩成对应的固定长度话语嵌入204。深度神经网络200可以将每个固定长度话语嵌入204连同与话语嵌入204相关联的参考音频信号202的相应转录206一起存储在话语嵌入存储130中(例如,在计算系统110的存储器硬件114上)。可以通过反向传播以从转录206提取的语言特征为条件的固定长度话语嵌入204来进一步训练深度神经网络200,以生成每个音节的音高、能量和持续时间的固定长度帧。
在推断期间,计算系统110可以使用韵律模型300来预测文本话语310的韵律表示302。韵律模型300可以为文本话语310选择话语嵌入204。话语嵌入204表示文本话语310的预期韵律。下面参考图2A至图2C和图3A至图3D更详细地描述,韵律模型300可以使用所选择的话语嵌入204来预测文本话语310的韵律表示302。韵律表示302可以包括文本话语310的预测音高、预测计时和预测响度(例如,能量)。在所示的示例中,TTS系统120使用韵律表示302从文本话语310中产生具有预期韵律的合成语音122。
图2A至图2C示出了提供韵律的可控模型的时钟层次变分自编码器(CHiVE)300(“自编码器300”)的层次语言结构(例如,图1的深度神经网络)200。韵律的可控模型可以为给定输入文本的每个音节联合预测音节的持续时间以及音节的音高(F0)和能量(C0)轮廓,而不依赖于来自给定输入文本或其他语言规范的任何独特映射来产生具有预期/所选择的韵律的合成语音122。自编码器300包括编码器部分320(图2A)以及解码器部分330(图2B和图2C),所述编码器部分320将从参考音频信号202采样的多个固定长度参考帧210编码成固定长度话语嵌入204,所述解码器部分330学习如何解码固定长度话语嵌入204。解码器部分330可以将固定长度话语嵌入204解码成多个固定长度预测帧260(例如,以预测话语嵌入204的音高(F0)、能量(C0)或频谱特征)。显而易见,自编码器300被训练成使得从解码器部分330输出的预测帧260的数量等于输入到编码器部分320的参考帧210的数量。此外,自编码器300被训练成使得与参考帧210和预测帧260相关联的数据基本上彼此匹配。
参考图2A,编码器部分320从输入参考音频信号202接收固定长度参考帧210的序列。输入参考音频信号202可以包括由麦克风记录的人类语音的口头话语,其包括目标韵律。编码器部分320可以接收同一口头话语的多个参考音频信号202,但是具有不同的韵律(即,同一话语可以以多种不同的方式说出)。例如,当口头参考是对问题的回答时,与当口头话语是问题时相比,相同的口头话语的韵律可能不同。参考帧210可每一个包含5毫秒(ms)的持续时间,且表示参考音频信号202的音高(F0)轮廓或能量(C0)轮廓中的一者。并行地,编码器部分320还可以接收参考帧210的第二序列,每个参考帧包括5ms的持续时间,并且表示参考音频信号202的音高(F0)轮廓或能量(C0)轮廓中的另一个。因此,从参考音频信号202采样的序列参考帧210提供持续时间、音高轮廓和/或能量轮廓来表示参考音频信号202的韵律。参考音频信号202的长度或持续时间与参考帧210的总数之和相关。
编码器部分320包括相对于彼此计时的参考音频信号202的参考帧210、音素220、220a、音节230、230a、词240、240a和句子250、250a的层级。例如,与参考帧210的序列相关联的级别比与音素220的序列相关联的下一级别计时更快。类似地,与音节230的序列相关联的级别比与音素330的序列相关联的级别慢,并且比与词240的序列相关联的级别快。因此,较慢时钟层接收来自较快时钟层的输出作为输入,从而较快层的最终时钟(即状态)之后的输出被作为对应较慢层的输入,以基本上提供序列到序列编码器。在所示的示例中,层级包括长短期记忆(LSTM)级别。
图2A示出了参考音频信号202的层级的示例。在这个示例中,参考音频信号202包括具有三个词240、240A-C的一个句子240、240A。第一词240、240A包括两个音节230、230Aa-Ab。第二词240、240B包括一个音节230、230Ba。第三词240、240a包括两个音节230、230Ca-Cb。第一词240、240A的第一音节230、230Aa包括两个音素220、220Aa1-Aa2。第一词240、240A的第二音节230、230Ab包括一个音素220、220Ab1。第二词240、240B的第一音节230、230Ba包括三个音素220、220Ba1-Ba3。第三词240、240C的第一音节230、230Ca包括一个音素220、220Ca1。第三词240、240C的第二音节230、230Cb包括两个音素220、220Cb1-Cb2。
在一些示例中,编码器部分320首先将参考帧210的序列编码成基于帧的音节嵌入232、232Aa-Cb。在一些实现方式中,参考帧210定义了音素220Aa1-220Cb2的序列。这里,编码器部分320不是将参考帧210的子集编码成一个或多个音素220,而是通过将单音(phone)级别语言特征222、222Aa1-Cb2编码成基于单音特征的音节嵌入234、234Aa-Cb来考虑音素220。每个相应的音节嵌入232、234可以指代指示与对应音节230相关联的持续时间、音高(F0)和/或能量(C0)的数值向量。此外,每个音节嵌入232、234指示音节230级别的对应状态。
参考图2A,包括对角线阴影图案的层次层中的块对应于层次的特定级别的语言特征。利用基于帧的音节嵌入232和基于单音特征的音节嵌入234,编码器部分320利用其他语言特征对这些音节嵌入232、234进行编码。例如,编码器部分320用音节级别语言特征236、236Aa-Cb、词级别语言特征242、242A-C和/或句子级别语言特征252、252A对音节嵌入232、234进行编码。通过用语言特征236、242、252对音节嵌入232、234进行编码,编码器部分320为参考音频信号202生成话语嵌入204。话语嵌入204可以与参考音频信号204的相应转录206(例如,文本表示)一起存储在数据存储130(图1)中。从转录206中,可以提取和存储语言特征222、236、242、252,用于加条件于层次语言结构200的训练。语言特征(例如,语言特征222、236、242、252)可以包括但不限于每个音素的单独声音、每个音节是重读还是非重读、每个词的类型(例如,名词/形容词/动词)和/或词在话语中的位置,以及话语是提问还是短语。
在图2A的示例中,编码块322、322Aa-Cb被示为描述语言特征236、242、252与音节嵌入232、234的组合。这里,以音节速率对块322进行序列编码,以生成话语嵌入204。作为解释,第一块322Aa作为输入被馈送到第二块322Ab。第二块322Ab作为输入被馈送到第三块322Ba中。第三块322Ca作为输入被馈送到第四块322Ca中。第四块322Ca被馈送到第五块322Cb中。在一些配置中,话语嵌入204包括每个参考音频信号202的均值μ和标准偏差σ,其中均值μ和标准偏差σ是相对于多个参考音频信号202的训练数据的。
在一些实现方式中,每个音节230接收参考帧210的子集的对应编码作为输入,并且包括等于编码子集中的参考帧210的数量的持续时间。在所示的示例中,前七个固定长度参考帧210被编码成音节230Aa;接下来的四个固定长度参考帧210被编码成音节230Ab;接下来的十一个固定长度参考帧210被编码成音节230Ba;接下来的三个固定长度参考帧210被编码成音节230Ca;并且最后六个固定长度参考帧210被编码成音节230Cb。因此,音节230的序列中的每个音节230可以包括基于编码成音节230的参考帧210的数量和对应的音高和/或能量轮廓的相应持续时间。例如,音节230Aa包括等于35毫秒的持续时间(即,六个参考帧210,每个具有五毫秒的固定长度),音节230Ab包括等于20毫秒的持续时间(即,四个参考帧210,每个具有五毫秒的固定长度)。因此,对于音节230级别的音节230Aa和下一个音节230Ab之间的单个计时,参考帧210级别总共计时十次。音节230的持续时间可以指示音节230的定时以及相邻音节230之间的停顿。
在一些实现方式中,由编码器部分320生成的话语嵌入204是固定长度的话语嵌入204,其包括表示参考音频信号202的韵律的数值向量。在一些示例中,固定长度话语嵌入204包括具有等于“128”或“256”的值的数值向量。编码器部分320可以编码多个参考音频信号202,每个参考音频信号对应于相同的口头话语/短语,但是具有变化的韵律,即,每个参考音频信号202传达相同的话语但是以不同的方式说出。
参考图2B和图2C,变分自编码器300的解码器部分330被配置成通过初始解码表示话语韵律的话语嵌入204来产生多个音节嵌入232、234(例如,固定长度音节嵌入)。在训练期间,话语嵌入204可以包括通过对从参考音频信号202采样的多个固定长度参考帧210进行编码而从图2A的编码器部分320输出的话语嵌入204。因此,解码器部分330被配置成在训练期间反向传播话语嵌入204,以生成与多个固定长度参考帧210紧密匹配的多个固定长度预测帧260。例如,可以并行生成音高(F0)和能量(C0)的固定长度预测帧260,以表示与作为训练数据输入到编码器部分320的参考音频信号202的参考韵律基本匹配的目标韵律(例如,预测韵律)。附加地或替代地,固定长度预测帧260可以是可被提供给TTS系统120(图1)的频谱帧(例如,mel帧)。在一些示例中,TTS系统120(图1)使用固定长度预测帧260来基于固定长度话语嵌入204产生具有所选择的韵律的合成语音122。例如,TTS系统120的单元选择模块、波网模块或神经声码器可以使用帧260来产生具有预期韵律的合成语音132。
在所示的示例中,解码器部分330将从编码器部分320(图2A)接收的话语嵌入204(例如,数值“256”或“128”)解码成层级。例如,层级包括对应于句子250、250b、词240、240b、音节230、230b、音素220、220b和固定长度预测帧260的级别。具体地,固定长度话语嵌入204对应于解码器部分330的层次输入数据的变分层,并且每个堆叠的层级包括可变地计时到层次输入数据长度的长短期记忆(LSTM)处理块。例如,音节级别230计时比词级别240快,比音素级别220慢。每一层中的矩形块对应于相应句子、词、音节、音素或帧的一个或多个LSTM处理单体。有利地,自编码器300给予词级别240的LSTM处理单体最后100个词的存储器,给予音节级别230的LSTM单体最后100个音节的存储器,给予音素级别220的LSTM单体最后100个音素的存储器,并且给予固定长度音高和/或能量帧260的LSTM单体最后100个固定长度帧260的存储器。当固定长度帧260包括每个5毫秒的持续时间(例如,帧速率)时,对应的LSTM处理单体提供最后500毫秒(例如,半秒)的存储器。
参考图2B和图2C,在一些示例中,层次语言结构200的解码器部分330反向传播由编码器部分320编码的固定长度话语嵌入204。例如,图2B描述了层次语言结构200的解码器部分330将固定长度话语嵌入204反向传播到一个句子250、250A、三个词240A-240C的序列、五个音节230Aa-230Cb的序列和九个音素230Aa 1-230Cb2的序列中,以生成预测固定长度帧260的序列。在诸如图2C的一些实现方式中,解码器部分330不是从音节级别230反向传播到音素级别220,而是从音节级别230反向传播到帧级别210。这里,在音素对齐对于模型200可能有问题的情况下,这种方法可以提高预测帧260的准确性。解码器部分330以输入文本的语言特征(例如,语言特征222、236、242、252)为条件。与在其中来自较快时钟层的输出可以作为输入被较慢时钟层接收的编码器部分320(例如,如图2A所示)相反,解码器部分330包括从较慢时钟层馈送到较快时钟层的输出,使得较慢时钟层的输出在定时信号附加到其的每个时钟周期被分配到较快时钟层的输入。
参考图3A至图3C,在一些实现方式中,自编码器300使用层次语言结构200在推断期间预测给定文本话语310的韵律表示。例如,自编码器300通过联合预测给定文本话语310的音节230的持续时间和每个音节230的音高F0和/或能量C0轮廓来预测给定文本话语310的韵律表示。由于文本话语310不提供任何场境、语义信息或语用信息来指示文本话语310的适当韵律,自编码器300选择话语嵌入204作为潜在变量来表示文本话语310的预期韵律。
话语嵌入204可以从话语嵌入数据存储130(图1)中选择。在训练期间,存储130中的每个话语嵌入204可以由编码器部分320(图2A)根据对应的可变长度参考音频信号202(图2A)进行编码。具体地,编码器部分310在训练期间将可变长度参考音频信号202的韵律压缩成固定长度话语嵌入204,并将每个话语嵌入204与对应参考音频信号202的转录206一起存储在话语嵌入数据存储130中,以供解码器部分330在推断时使用。在所示的示例中,自编码器300可以首先定位具有与文本话语310紧密匹配的转录206的话语嵌入204,然后选择话语嵌入204之一来预测给定文本话语310的韵律表示302(图1)。在一些示例中,通过在嵌入204的潜在空间中挑选可能表示目标韵律的特定语义和语用的特定点来选择固定长度话语嵌入204。在其他示例中,对潜在空间进行采样,以选择随机话语嵌入204来表示文本话语310的预期韵律。在又一示例中,自编码器300通过选择具有紧密匹配转录206的话语嵌入204的均值用于表示文本话语310的语言特征的最可能韵律,来将潜在空间建模为多维单位高斯。例如,当选择话语嵌入204来生成文本话语310的韵律表示302时,自编码器300使用与每个话语嵌入204相关联的均值μ和/或标准偏差σ。如果训练数据的韵律变化是合理中性的,选择话语嵌入204的均值的最后一个示例是合理的选择。
图3A至图3C示出了具有在层次语言结构200的词级别240中表示的三个词240A、240B、240C的文本话语310。第一词240A包含音节230Aa、230Ab。第二词240B包含一个音节230Ba。第三词240C包含音节230Ca、230Cb。因此,层次语言结构200的音节级别230包括文本话语310的五个音节230Aa-230Cb的序列。在LSTM处理单体的音节级别230,自编码器300被配置成产生/输出第一音节嵌入(例如,基于帧的音节嵌入232)和第二音节嵌入(例如,基于单音特征的音节嵌入234)。为了输出第一音节嵌入232Aa、232Ab、232Ba、232Ca和232Cb,自编码器300使用以下输入:固定长度话语嵌入204;与文本话语310相关联的话语级别语言特征(例如,句子级别语言特征252);与包含音节230的词240相关联的词级别语言特征242;和音节230的音节级别语言特征236。为了输出第二音节嵌入234Aa、234Ab、234Ba、234Ca和234Cb,自编码器300使用与音节230相关联的单音级别语言特征222。话语级别语言特征252可以包括但不限于文本话语320是否是问题、问题的答案、短语、句子等。在一些示例中,可以包括DVectors或其他复杂的说话者身份表示作为话语级别语言特征252。词级别语言特征242可以包括但不限于词类型(例如,名词、代词、动词、形容词、副词等)和该词在文本话语310中的位置。音节级别语言特征236可以包括但不限于音节230是重读还是非重读。在一些实现方式中,在话语级别以下的级别(例如,词级别240或音节级别230)可以将DVectors或其他复杂的说话者身份表示作为语言特征包括。
在所示的示例中,音节级别230中的每个音节230Aa、230Ab、230Ba、230Ca、230Cb可以与对应的LSTM处理单体相关联,该对应的LSTM处理单体输出对应的音节嵌入232Aa-Cb、234Aa-Cb,用于解码单个固定长度预测音高(F0)帧260、260F0(图3A),用于解码单个固定长度预测能量(C0)帧260、260C0(图3B),和/或用于解码单个固定长度频谱(M0)帧260、260M0。在一些实现方式中,自编码器300并行解码两种或更多种类型的帧F0、C0、M0。图3A示出了音节级别230中的每个音节230,包括多个固定长度的预测音高(F0)帧260F0,其指示音节230的持续时间(定时和停顿)和音高轮廓。这里,持续时间和音高轮廓对应于音节230的韵律表示。图3B示出了音节级别240中的每个音节230,包括多个固定长度的预测能量(C0)帧260C0,其指示音节230的持续时间和能量轮廓。
音节级别230中的第一音节230Aa(即LSTM处理单体Aa)接收固定长度话语嵌入204、与文本话语310相关联的话语级别语言特征252、与第一词230A相关联的词级别语言特征242A以及音节230Aa的音节级别语言特征236Aa作为输入,用于产生对应的音节嵌入232Aa。音节级别230中的第二音节230Ab接收固定长度话语嵌入204、与文本话语310相关联的话语级别语言特征252、与第一词240A相关联的词级别语言特征242A以及音节230Ab的对应音节级别语言特征236作为输入,用于产生对应的音节嵌入232Ab。这里,当自编码器300将文本话语310解码成音节嵌入232、234时,这些嵌入232、234形成每个音节230的状态332(例如,显示为状态332、332Aa-Cb)。当自编码器300形成后续状态332时,自编码器300也接收前面音节230的状态。换句话说,音节级别230的每个LSTM处理单体接收音节级别230的紧前面LSTM处理单体的状态232。在一些配置中,音节级别230的每个LSTM处理单体接收当前音节级别230的前面LSTM处理单体的每个状态232。例如,与第二音节230Ab相关联的LSTM处理单体接收前面的第一音节230Aa的状态332、332Aa。如图3A至图3C所示,自编码器300以类似的方式为音节级别230中音节230Ba、230Ca、230Cb的剩余序列产生对应的音节嵌入232Ba-Cb、234Ba-CB。附加地或替代地,自编码器300可以利用一个或多个音节嵌入232、234拼接解码更高级别的语言特征(例如,句子特征252、词特征242等)。
参考图3D,层次语言结构200的音素级别220包括九个音素220Aa1-220Cb2的序列。在一些实现方式中,自编码器300将与每个音素220Aa1-220Cb2相关联的音素级别语言特征222编码成音素编码状态224、224Aa1-Ca2。音素级别语言特征222可以包括但不限于对应音素220的声音的身份。如图3D所示,注意力机制340被配置成给予形成编码音素状态224的单音级别特征222、22Aa1-Cb2注意力。利用这种方法,自编码器300不需要依赖也不需要预测音素持续时间,而是使用注意力机制340并利用对单音级别语言特征222的注意力来预测每个音节230的音节持续时间238。
一般而言,注意力机制340是将输入与输出相关(例如,通过评分)的对齐模型。利用编码的隐藏状态,注意力机制340可以形成权重的集合,该权重的集合定义了对于每个输出(例如,预测帧260),每个隐藏状态(例如,编码的音素状态224)应该被考虑多少注意力。可能存在使用不同对齐评分函数的不同类型的注意力机制340。这些注意力机制340的一些示例包括基于内容的注意力、附加注意力、基于位置的注意力、一般注意力、点积注意力和缩放的点积注意力。更广泛类别的注意力机制340包括自注意力、全局/软注意力和/或局部/硬注意力。在一些示例中,注意力机制340的对齐评分由具有单个隐藏层(例如,编码的音素状态224的音素层220)的前馈网络来参数化。在这些示例中,前馈网络可以与自编码器300的其他部分联合训练。
自编码器300的注意力机制340可以基于任何这些类型的注意力模型。换句话说,自编码器300可以被设计成根据不同的注意力方法,基于音素级别的语言特征222对隐藏状态224进行评分。在一些示例中,注意力机制340采取单调移位、位置敏感注意力的形式(即,基于位置的注意力)。这里,注意力机制300的位置敏感注意力可以受窗口约束。在一些配置中,该窗口对应于由自编码器300处理的当前音节230的音素信息。在其他配置中,窗口可以被扩展以包括与自编码器300正在处理的当前音节230相邻的音节230(例如,前面或后续)。在一些实现方式中,注意力机制340是基于自注意力机制的转换器。当使用变换器作为注意力机制340时,注意力机制340可以使用单音级别语言特征222作为输入,而不是编码音素状态224下的编码单音级别语言特征222。
继续参考图3A至图3C,在一些示例中,自编码器300使用两个解码器(例如,用圆圈表示)。自编码器300的这些解码器中的每一个可以接收音节嵌入232、234作为输入。第一解码器(例如,在第一音节状态332)使用音节嵌入232、234以及注意力机制340的注意力来预测特定音节230的帧的数量。对于该特定音节230,自编码器300然后使用第二解码器(例如,在第二音节状态334)对由第一解码器(例如,在第一音节状态332)预测的该数量的帧进行顺序解码。基于预测帧260的数量,自编码器300生成预测帧260。换句话说,使用每个音节230的注意力机制340,预测音节持续时间可以确定多个固定长度预测音高(F0)帧260F0(例如,如图3A所示),多个固定长度预测能量(C0)帧260C0(例如,如图3B所示),和/或多个固定长度预测频谱(M0)帧260M0(例如,如图3C所示)。尽管图3A至图3C描绘了单个注意力机制340,但这仅仅是为了简化说明。对于文本话语310的每个音节230,自编码器300在状态332和334使用注意力机制340来生成对应于音节230的预测帧260。例如,图3A至图3C描绘了与虚线框交互的注意力机制340,以示出自编码器300对于每个音节230在每个状态332、334使用注意力机制340。
基于注意力机制340和音节嵌入232Aa、234Aa,自编码器300预测对应于七个预测帧260的第一音节230Aa的音节持续时间238、238Aa。在第一音节230Aa的状态334、334Aa,自编码器300解码七个预测帧260。对于第二音节230Ab,基于注意力机制340和音节嵌入232Aa-Ab、234Aa-Ab,自编码器300预测四个预测帧260的音节持续时间238、238Ab。在第二音节230Ab的状态334、334Ab,自编码器300解码四个预测帧260。对于第三音节230Ba,基于注意力机制340和音节嵌入232Aa-Ba、234Aa-Ba,自编码器300预测11个预测帧260的音节持续时间238、238Ba。在第三音节230Ba的状态334、334Ba,自编码器300解码11个预测帧260。对于第四音节230Ca,基于注意力机制340和音节嵌入232Aa-Ca、234Aa-Ca,自编码器300预测三个预测帧260的音节持续时间238、238Ca。在第四音节230Ca的状态334、334Ca,自编码器300解码三个预测帧260。对于第五音节230Cb,基于注意力机制340和音节嵌入232Aa-Cb、234Aa-Cb,自编码器300预测六个预测帧260的音节持续时间238、238Cb。在第五音节230Cb的状态334、334Cb,自编码器300解码六个预测帧260。
这里,该系统100使用自编码器300来集中于音节230,以便预测帧260(例如,无需音素级别直接影响层次语言结构200)。然而,本文的方法可以适于集中于层次语言结构200的其他层(例如,句子250、词240等)。例如,自编码器300集中于词240或句子250来预测帧260。在这些其他方法中,可以从层次语言结构200中去除一个或多个不同的级别(例如,类似于音素级别),作为集中于特定级别的折衷。在这些方法中,注意力机制340也可以相应地适于集中于一个或多个特定的语言层。
图4是预测文本话语310的韵律表示302的方法400的示例操作安排的流程图。方法400可以参考图1至图3C来描述。驻留在图1的计算机系统110上的存储器硬件124可以存储指令,当由数据处理硬件112执行时,这些指令使得数据处理硬件112执行方法400的操作。在操作402,方法400包括接收文本话语310。文本话语310具有至少一个词240,每个词240具有至少一个音节230,每个音节230具有至少一个音素220。在操作404,方法400包括为文本话语310选择话语嵌入204。话语嵌入204表示预期韵律。如此处所使用的,所选择的话语嵌入204用于预测文本话语310的韵律表示302,以供TTS系统120从文本话语310中产生具有预期韵律的合成语音122。话语嵌入204可以由固定长度的数值向量来表示。数值向量可以包括等于“256”的值。为了选择文本话语310的话语嵌入204,数据处理硬件112可以首先查询数据存储130来定位具有与文本话语310紧密匹配的转录206的话语嵌入204,然后选择话语嵌入204来预测给定文本话语310的韵律表示302。在一些示例中,通过在嵌入204的潜在空间中挑选可能表示目标韵律的特定语义和语用的特定点来选择固定长度话语嵌入204。在其他示例中,对潜在空间进行采样,以选择随机话语嵌入204来表示文本话语310的预期韵律。在又一个示例中,数据处理硬件112通过选择具有紧密匹配转录206的话语嵌入204的均值用于表示文本话语310的语言特征的最可能韵律来将潜在空间建模为多维单位高斯。
在操作406,对于每个音节230,使用所选择的话语嵌入204,方法400包括通过基于注意力机制340对音节230的每个音素220的语言特征222的注意力来解码音节230的韵律音节嵌入232、234来预测音节230的持续时间238。在操作408,对于每个音节230,使用所选择的话语嵌入204,方法400包括基于所预测的音节230的持续时间238生成多个固定长度预测帧260。
图5是可用于实现本文件中描述的系统(例如,层次结构200、自编码器300和/或注意力机制340)和方法(例如,方法400)的示例计算设备500的示意图。计算设备500旨在表示各种形式的数字计算机,诸如笔记本计算机、台式计算机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他适当的计算机。这里所示的组件、它们的连接和关系以及它们的功能仅仅是示例性的,并不意味着限制本文件中描述和/或要求保护的发明的实现方式。
计算设备500包括处理器510(例如,数据处理硬件)、存储器520(例如,存储器硬件)、存储设备530、连接到存储器520和高速扩展端口550的高速接口/控制器540、以及连接到低速总线570和存储设备530的低速接口/控制器560。组件510、520、530、540、550和560中的每一个使用各种总线互连,并且可以安装在公共主板上或者以其他适当的方式安装。处理器510可以处理用于在计算设备500内执行的指令,包括存储在存储器520中或存储设备530上的指令,以在外部输入/输出设备(诸如耦合到高速接口540的显示器580)上显示图形用户界面(GUI)的图形信息。在其他实现方式中,可以适当地使用多个处理器和/或多个总线,以及多个存储器和多种类型的存储器。此外,可以连接多个计算设备500,每个设备提供必要操作的部分(例如,作为服务器组、一组刀片服务器或多处理器系统)。
存储器520在计算设备500内非临时性地存储信息。存储器520可以是计算机可读介质、易失性存储器单元或非易失性存储器单元。非暂时性存储器520可以是用于临时或永久存储程序(例如,指令序列)或数据(例如,程序状态信息)以供计算设备500使用的物理设备。非易失性存储器的示例包括但不限于闪存和只读存储器(ROM)/可编程只读存储器(PROM)/可擦除可编程只读存储器(EPROM)/电可擦除可编程只读存储器(EEPROM)(例如,通常用于固件,如引导程序)。易失性存储器的示例包括但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、相变存储器(PCM)以及磁盘或磁带。
存储设备530能够为计算设备500提供大容量存储。在一些实现方式中,存储设备530是计算机可读介质。在各种不同的实现方式中,存储设备530可以是软盘设备、硬盘设备、光盘设备或磁带设备、闪存或其他类似的固态存储设备,或者设备阵列,包括存储区域网络或其他配置中的设备。在另外的实现方式中,计算机程序产品有形地包含在信息载体中。计算机程序产品包含指令,当被执行时,这些指令执行一种或多种方法,诸如上述的那些方法。信息载体是计算机或机器可读介质,例如存储器520、存储设备530或处理器510上的存储器。
高速控制器540管理计算设备500的带宽密集型操作,而低速控制器560管理较低带宽密集型操作。这种职责分配仅是示范性的。在一些实现方式中,高速控制器540耦合到存储器520、显示器580(例如,通过图形处理器或加速器),并且耦合到高速扩展端口550,高速扩展端口550可以接受各种扩展卡(未示出)。在一些实现方式中,低速控制器560耦合到存储设备530和低速扩展端口590。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口590可以通过例如网络适配器耦合到诸如键盘、定点设备、扫描仪的一个或多个输入/输出设备或诸如交换机或路由器的联网设备。
如图所示,计算设备500可以以多种不同的形式实现。例如,它可以被实现为标准服务器500a或在一组这样的服务器500a中多次实现为笔记本计算机500b或机架式服务器系统500c的一部分。
这里描述的系统和技术的各种实现方式可以在数字电子和/或光学电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中实现。这些不同的实现方式可以包括在可编程系统上可执行和/或可解释的一个或多个计算机程序中的实现方式,该可编程系统包括可以是专用或通用的至少一个可编程处理器,所述至少一个可编程处理器被耦合以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令,以及向存储系统、至少一个输入设备和至少一个输出设备传输数据和指令。
这些计算机程序(也称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且可以用高级过程和/或面向对象的编程语言和/或汇编/机器语言来实现。如此处所使用的,术语“机器可读介质”和“计算机可读介质”指的是用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、非暂时性计算机可读介质、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑设备(PLD)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。
本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器来执行,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路来执行,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。举例来说,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括或可操作地耦合以从一个或多个用于存储数据的大容量存储设备接收数据或向其传送数据,或两者兼有,大容量存储设备例如磁盘、磁光盘或光盘。然而,计算机不需要有这样的设备。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD ROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路来补充或并入其中。
为了提供与用户的交互,本公开的一个或多个方面可以在计算机上实现,该计算机具有用于向用户显示信息的显示设备,例如CRT(阴极射线管)、LCD(液晶显示器)监视器或触摸屏,以及可选的键盘和定向设备,例如鼠标或轨迹球,用户可以通过该定向设备向计算机提供输入。也可以使用其他类型的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声音、语音或触觉输入。此外,计算机可以通过向用户使用的设备发送文档和从用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收的请求,向用户的客户端设备上的web浏览器发送网页。
已经描述了许多实现方式。然而,应当理解,在不脱离本公开的精神和范围的情况下,可以进行各种修改。因此,其他实现方式也在所附权利要求的范围内。

Claims (28)

1.一种方法(400),包括:
在数据处理硬件(112)处接收具有至少一个词(240)的文本话语(310),每个词(240)具有至少一个音节(230),每个音节(230)具有至少一个音素(220);
由所述数据处理硬件(112)为所述文本话语(310)选择话语嵌入(204),所述话语嵌入(204)表示预期韵律;以及
对于每个音节(230),使用所选择的话语嵌入(204):
由所述数据处理硬件(112)通过基于注意力机制(340)针对所述音节(230)的每个音素(220)的语言特征(222)的注意力将所述音节(230)的韵律音节嵌入(232、234)解码,来预测所述音节(230)的持续时间(238);以及
由所述数据处理硬件(112)基于所预测的所述音节(230)的持续时间(238)来生成多个固定长度预测帧(260)。
2.根据权利要求1所述的方法(400),还包括:
由所述数据处理硬件(112)基于所预测的所述音节(230)的持续时间(238)来预测所述音节(230)的音高轮廓(F0),以及
其中,所述多个固定长度预测帧(260)包括固定长度预测音高帧(260、260F0),每个固定长度预测音高帧(260F0)表示所述音节(230)的预测音高轮廓(F0)的一部分。
3.根据权利要求1或权利要求2中任一项所述的方法(400),还包括,对于每个音节(230),使用所选择的话语嵌入(204):
由所述数据处理硬件(112)基于所预测的所述音节(230)的持续时间(238)来预测每个音节(230)的能量轮廓(C0);以及
由所述数据处理硬件(112)基于所预测的对应音节(230)的持续时间(238)来生成多个固定长度预测能量帧(260、260C0),每个固定长度能量帧(260C0)表示所预测的所述对应音节(230)的能量轮廓(C0)。
4.根据权利要求1至3中任一项所述的方法(400),其中,所述多个固定长度预测帧(260)包括所述音节(230)的固定长度预测频谱帧(260、260M0)。
5.根据权利要求1至4中任一项所述的方法(400),其中,表示所述文本话语(310)的层次语言结构(200)的网络包括:
包括所述文本话语(310)的每个词(240)的第一级别;
包括所述文本话语(310)的每个音节(230)的第二级别;以及
包括所述文本话语(310)的每个音节(230)的每个固定长度预测帧(260)的第三级别。
6.根据权利要求5所述的方法(400),其中:
表示所述层次语言结构(200)的所述网络的所述第一级别包括表示所述文本话语(310)的每个词(240)的长短期记忆LSTM处理块;
表示所述层次语言结构(200)的所述网络的所述第二级别包括表示所述文本话语(310)的每个音节(230)的LSTM处理块,所述第二级别的LSTM处理块相对于所述第一级别的LSTM处理块计时并且比所述第一级别的LSTM处理块更快计时;以及
表示所述层次语言结构(200)的所述网络的所述第三级别包括表示每个固定长度预测帧(260)的LSTM处理块,所述第三级别的LSTM处理块相对于所述第二级别的LSTM处理块计时并且比所述第二级别的LSTM处理块更快计时。
7.根据权利要求1至6中任一项所述的方法(400),其中,预测所述音节(230)的持续时间(238)包括:
对于与所述音节(230)相关联的每个音素(220):
编码对应音素(220)的一个或多个语言特征(222);
将所编码的一个或多个语言特征(222)输入到所述注意力机制(340);以及
将所述注意力机制(340)的所述注意力应用于所述韵律音节嵌入(232、234)。
8.根据权利要求1至7中任一项所述的方法(400),其中,所述韵律音节嵌入(232、234)包括基于与所述话语嵌入(204)相对应的帧(210)的第一音节嵌入(232)和基于与所述话语嵌入(204)的一个或多个音素(220)相关联的音素语言特征(222)的第二音节嵌入(234)。
9.根据权利要求1至8中任一项所述的方法(400),还包括:
由所述数据处理硬件(112)接收包括多个参考音频信号(202)的训练数据,每个参考音频信号(202)包括人类语音的口头话语并具有对应韵律;和
由所述数据处理硬件(112)通过将每个参考音频信号(202)编码成表示所述参考音频信号(202)的所述对应韵律的对应固定长度话语嵌入(204)来训练用于韵律模型(300)的深度神经网络(200)。
10.根据权利要求9所述的方法(400),还包括:由所述数据处理硬件(112)通过利用基于帧的音节嵌入(232)和基于单音特征的音节嵌入(234)将多个语言单元(220、230、240、250)的语言特征(222、236、242、252)编码来生成所选择的话语嵌入(204)。
11.根据权利要求1至10中任一项所述的方法(400),其中,所述话语嵌入(204)包括固定长度的数值向量。
12.根据权利要求1至11中任一项所述的方法(400),其中,所述注意力机制(340)的注意力包括基于位置的注意力。
13.根据权利要求12所述的方法(400),其中,所述基于位置的注意力包括单调移位的位置敏感注意力,所述单调移位的位置敏感注意力由相应音节(230)的音素信息的窗口定义。
14.根据权利要求1至11中任一项所述的方法(400),其中,所述注意力机制(340)包括转换器。
15.一种系统(100),包括:
数据处理硬件(112);和
与所述数据处理硬件(112)通信的存储器硬件(114),所述存储器硬件(114)存储指令,所述指令在所述数据处理硬件(112)上执行时使得所述数据处理硬件(112)执行操作,所述操作包括:
接收具有至少一个词(240)的文本话语(310),每个词(240)具有至少一个音节(230),每个音节(230)具有至少一个音素(220);
为所述文本话语(310)选择话语嵌入(204),所述话语嵌入(204)表示预期韵律;以及
对于每个音节(230),使用所选择的话语嵌入(204):
通过基于注意力机制(340)针对所述音节(230)的每个音素(220)的语言特征(222)的注意力将所述音节(230)的韵律音节嵌入(232、234)解码,来预测所述音节(230)的持续时间(238);以及
基于所预测的所述音节(230)的持续时间(238)来生成多个固定长度预测帧(260)。
16.根据权利要求15所述的系统(100),其中,所述操作还包括:
基于所预测的所述音节(230)的持续时间(238)来预测所述音节(230)的音高轮廓(F0),以及
其中,所述多个固定长度预测帧(260)包括固定长度预测音高帧(260、260F0),每个固定长度预测音高帧(260F0)表示所述音节(230)的预测音高轮廓(F0)的一部分。
17.根据权利要求15或权利要求16中任一项所述的系统(100),其中,所述操作还包括,对于每个音节(230),使用所选择的话语嵌入(204):
基于所预测的所述音节(230)的持续时间(238)来预测每个音节(230)的能量轮廓(C0);以及
基于所预测的对应音节(230)的持续时间(238)来生成多个固定长度预测能量帧(260、260C0),每个固定长度能量帧(260C0)表示所预测的所述对应音节(230)的能量轮廓(C0)。
18.根据权利要求15至17中任一项所述的系统(100),其中,所述多个固定长度预测帧(260)包括所述音节(230)的固定长度预测频谱帧(260、260M0)。
19.根据权利要求15至18中任一项所述的系统(100),其中,表示所述文本话语(310)的层次语言结构(200)的网络包括:
包括所述文本话语(310)的每个词(240)的第一级别;
包括所述文本话语(310)的每个音节(230)的第二级别;以及
包括所述文本话语(310)的每个音节(230)的每个固定长度预测帧(260)的第三级别。
20.根据权利要求19所述的系统(100),其中:
表示所述层次语言结构(200)的所述网络的所述第一级别包括表示所述文本话语(310)的每个词(240)的长短期记忆LSTM处理块;
表示所述层次语言结构(200)的所述网络的所述第二级别包括表示所述文本话语(310)的每个音节(230)的LSTM处理块,所述第二级别的LSTM处理块相对于所述第一级别的LSTM处理块计时并且比所述第一级别的LSTM处理块更快计时;以及
表示所述层次语言结构(200)的所述网络的所述第三级别包括表示每个固定长度预测帧(260)的LSTM处理块,所述第三级别的LSTM处理块相对于所述第二级别的LSTM处理块计时并且比所述第二级别的LSTM处理块更快计时。
21.根据权利要求15至20中任一项所述的系统(100),其中,预测所述音节(230)的持续时间(238)包括:
对于与所述音节(230)相关联的每个音素(220):
编码对应音素(220)的一个或多个语言特征(222);
将所编码的一个或多个语言特征(222)输入到所述注意力机制(340);以及
将所述注意力机制(340)的所述注意力应用于所述韵律音节嵌入(232、234)。
22.根据权利要求15至21中任一项所述的系统(100),其中,所述韵律音节嵌入(232、234)包括基于与所述话语嵌入(204)相对应的帧(210)的第一音节嵌入(232)和基于与所述话语嵌入(204)的一个或多个音素(220)相关联的音素语言特征(222)的第二音节嵌入(234)。
23.根据权利要求15至22中任一项所述的系统(100),其中,所述操作还包括:
接收包括多个参考音频信号(202)的训练数据,每个参考音频信号(202)包括人类语音的口头话语并具有对应韵律;和
通过将每个参考音频信号(202)编码成表示所述参考音频信号(202)的所述对应韵律的对应固定长度话语嵌入(204)来训练用于韵律模型(300)的深度神经网络(200)。
24.根据权利要求23所述的系统(100),其中所述操作还包括:通过利用基于帧的音节嵌入(232)和基于单音特征的音节嵌入(234)将多个语言单元(220、230、240、250)的语言特征(222、236、242、252)编码来生成所选择的话语嵌入(204)。
25.根据权利要求15至24中任一项所述的系统(100),其中,所述话语嵌入(204)包括固定长度的数值向量。
26.根据权利要求15至25中任一项所述的系统(100),其中,所述注意力机制(340)的注意力包括基于位置的注意力。
27.根据权利要求26所述的系统(100),其中,所述基于位置的注意力包括单调移位的位置敏感注意力,所述单调移位的位置敏感注意力由相应音节(230)的音素信息的窗口定义。
28.根据权利要求15至25中任一项所述的系统(100),其中,所述注意力机制(340)包括转换器。
CN201980102691.7A 2019-12-10 2019-12-10 基于注意力的时钟层次变分编码器 Pending CN114746935A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2019/065566 WO2021118543A1 (en) 2019-12-10 2019-12-10 Attention-based clockwork hierarchical variational encoder

Publications (1)

Publication Number Publication Date
CN114746935A true CN114746935A (zh) 2022-07-12

Family

ID=69160292

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980102691.7A Pending CN114746935A (zh) 2019-12-10 2019-12-10 基于注意力的时钟层次变分编码器

Country Status (6)

Country Link
US (2) US20220415306A1 (zh)
EP (1) EP4073786A1 (zh)
JP (2) JP7362929B2 (zh)
KR (1) KR102646229B1 (zh)
CN (1) CN114746935A (zh)
WO (1) WO2021118543A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11417041B2 (en) * 2020-02-12 2022-08-16 Adobe Inc. Style-aware audio-driven talking head animation from a single image
CN111427932B (zh) * 2020-04-02 2022-10-04 南方科技大学 出行预测方法、装置、设备和存储介质
US11830476B1 (en) * 2021-06-08 2023-11-28 Amazon Technologies, Inc. Learned condition text-to-speech synthesis
CN113488022A (zh) * 2021-07-07 2021-10-08 北京搜狗科技发展有限公司 一种语音合成方法和装置
CN113808571B (zh) * 2021-08-17 2022-05-27 北京百度网讯科技有限公司 语音合成方法、装置、电子设备以及存储介质
US20230335110A1 (en) * 2022-04-19 2023-10-19 Google Llc Key Frame Networks
US11880645B2 (en) 2022-06-15 2024-01-23 T-Mobile Usa, Inc. Generating encoded text based on spoken utterances using machine learning systems and methods

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190087734A1 (en) 2016-03-28 2019-03-21 Sony Corporation Information processing apparatus and information processing method
CN112005298B (zh) 2018-05-11 2023-11-07 谷歌有限责任公司 时钟式层次变分编码器

Also Published As

Publication number Publication date
JP2023505670A (ja) 2023-02-10
US20220415306A1 (en) 2022-12-29
US20240038214A1 (en) 2024-02-01
EP4073786A1 (en) 2022-10-19
KR102646229B1 (ko) 2024-03-11
KR20220108169A (ko) 2022-08-02
JP7362929B2 (ja) 2023-10-17
JP2023171934A (ja) 2023-12-05
WO2021118543A1 (en) 2021-06-17

Similar Documents

Publication Publication Date Title
CN112005298B (zh) 时钟式层次变分编码器
US11410684B1 (en) Text-to-speech (TTS) processing with transfer of vocal characteristics
CN114746935A (zh) 基于注意力的时钟层次变分编码器
CN116034424A (zh) 两级语音韵律迁移
CN115485766A (zh) 使用bert模型的语音合成韵律
US11232780B1 (en) Predicting parametric vocoder parameters from prosodic features
US11475874B2 (en) Generating diverse and natural text-to-speech samples
Hlaing et al. Phoneme based Myanmar text to speech system
Hendessi et al. A speech synthesizer for Persian text using a neural network with a smooth ergodic HMM
Alastalo Finnish end-to-end speech synthesis with Tacotron 2 and WaveNet
CN117678013A (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