CN115240633A - 用于文本到语音转换的方法、装置、设备和存储介质 - Google Patents
用于文本到语音转换的方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN115240633A CN115240633A CN202210864161.XA CN202210864161A CN115240633A CN 115240633 A CN115240633 A CN 115240633A CN 202210864161 A CN202210864161 A CN 202210864161A CN 115240633 A CN115240633 A CN 115240633A
- Authority
- CN
- China
- Prior art keywords
- speech
- representation
- speaker
- text
- target
- 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 title claims abstract description 55
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 32
- 238000012549 training Methods 0.000 claims description 43
- 238000012545 processing Methods 0.000 claims description 24
- 238000000605 extraction Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 27
- 230000006870 function Effects 0.000 description 14
- 230000008569 process Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 10
- 238000001228 spectrum Methods 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 4
- 238000012512 characterization method Methods 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
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/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/027—Concept to speech synthesisers; Generation of natural phrases from machine-based concepts
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Machine Translation (AREA)
Abstract
根据本公开的实施例,提供了用于文本到语音转换的方法、装置、设备和存储介质。该方法包括基于待转换的目标文本和第一说话人的第一音色,生成第一说话人读出目标文本的预测语音表示。预测语音表示指示随时间变化的语音特征。该方法还包括基于预测语音表示和第二说话人的第二音色,生成第二说话人读出目标文本的预测时频表示。预测时频表示指示在不同频率上随时间变化的语音信号强度。该方法进一步包括将预测时频表示转换成第二说话人读出目标文本的音频。由此,可以降低预测难度,提高所生成音频的音质。
Description
技术领域
本公开的示例实施例总体涉及计算机领域,特别地涉及用于文本到语音转换的方法、装置、设备和计算机可读存储介质。
背景技术
文本到语音转换(TTS)是一种将文本转换成自然语音输出的语音合成技术。TTS具有广泛的应用。例如,利用TTS可以帮助有视觉障碍的人阅读文字信息,或者增加文本文档的可读性。在一些TTS场景中,需要以真实说话人的声音来说出一段文字,以增加真实性。
发明内容
在本公开的第一方面,提供了一种文本到语音转换的方法。该方法包括:基于待转换的目标文本和第一说话人的第一音色,生成第一说话人读出目标文本的预测语音表示。预测语音表示指示随时间变化的语音特征。该方法还包括:基于预测语音表示和第二说话人的第二音色,生成第二说话人读出目标文本的预测时频表示。预测时频表示指示在不同频率上随时间变化的语音信号强度。该方法进一步包括:将预测时频表示转换成第二说话人读出目标文本的音频。
在本公开的第二方面,提供了一种用于文本到语音转换的方法。该方法包括:基于第一说话人读出第一参考文本的第一音频,生成第一说话人读出第一参考文本的第一目标语音表示。第一目标语音表示指示随时间变化的语音特征。该方法还包括:将第一音频转换成第一说话人读出第一参考文本的第一目标时频表示。第一目标时频表示指示不同频率上随时间变化的语音信号强度。该方法进一步包括:基于第一目标语音表示、第一目标时频表示和第一说话人的第一音色,训练第一解码器。第一解码器用于在文本到语音转换中将语音表示转换成时频表示。
在本公开的第三方面,提供了一种用于文本到语音转换的装置。该装置包括:语音表示生成模块,被配置为基于待转换的目标文本和第一说话人的第一音色,生成第一说话人读出目标文本的预测语音表示,预测语音表示指示随时间变化的语音特征。该装置还包括:时频表示生成模块,被配置为基于预测语音表示和第二说话人的第二音色,生成第二说话人读出目标文本的预测时频表示,预测时频表示指示在不同频率上随时间变化的语音信号强度。该装置进一步包括:转换模块,被配置为将预测时频表示转换成第二说话人读出目标文本的音频。
在本公开的第四方面,提供了一种用于文本到语音转换的装置。该装置包括:目标特征提取模块,被配置为基于第一说话人读出第一参考文本的第一音频,生成第一说话人读出第一参考文本的第一目标语音表示,第一目标语音表示指示随时间变化的语音特征。该装置还包括:音频转换模块,被配置为将第一音频转换成第一说话人读出第一参考文本的第一目标时频表示,第一目标时频表示指示不同频率上随时间变化的语音信号强度。该装置进一步包括:解码器训练模块,被配置为基于第一目标语音表示、第一目标时频表示和第一说话人的第一音色,训练第一解码器,第一解码器用于在文本到语音转换中将语音表示转换成时频表示。
在本公开的第五方面,提供了一种电子设备。该设备包括至少一个处理单元;以及至少一个存储器,至少一个存储器被耦合到至少一个处理单元并且存储用于由至少一个处理单元执行的指令。指令在由至少一个处理单元执行时使设备执行第一方面的方法。
在本公开的第六方面,提供了一种电子设备。该设备包括至少一个处理单元;以及至少一个存储器,至少一个存储器被耦合到至少一个处理单元并且存储用于由至少一个处理单元执行的指令。指令在由至少一个处理单元执行时使设备执行第二方面的方法。
在本公开的第七方面,提供了一种计算机可读存储介质。该计算机可读存储介质上存储有计算机程序,计算机程序可由处理器执行以实现第一方面的方法。
在本公开的第八方面,提供了一种计算机可读存储介质。该计算机可读存储介质上存储有计算机程序,计算机程序可由处理器执行以实现第二方面的方法。
应当理解,该内容部分中所描述的内容并非旨在限定本公开的实施例的关键特征或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的描述而变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1示出了本公开的实施例能够在其中实现的示例环境的示意图;
图2A示出了根据本公开的一些实施例的声学模型的一个示例的示意图;
图2B示出了根据本公开的一些实施例的声学模型的另一示例的示意图;
图3示出了根据本公开的一些实施例的声学模型的训练的示意图;
图4示出了根据本公开的一些实施例的生成与目标文本对应的音频的示意图;
图5示出了根据本公开的一些实施例的文本到语音转换的过程的流程图;
图6示出了根据本公开的一些实施例的训练声学模型的过程的流程图;
图7示出了根据本公开的一些实施例的用于文本到语音转换的装置的框图;
图8示出了根据本公开的一些实施例的用于训练声学模型的装置的框图;以及
图9示出了能够实施本公开的多个实施例的设备的框图。
具体实施方式
可以理解的是,在使用本公开各实施例公开的技术方案之前,均应当依据相关法律法规通过恰当的方式对本公开所涉及个人信息的类型、使用范围、使用场景等告知用户并获得用户的授权。
例如,在响应于接收到用户的主动请求时,向用户发送提示信息,以明确地提示用户,其请求执行的操作将需要获取和使用到用户的个人信息。从而,使得用户可以根据提示信息来自主地选择是否向执行本公开技术方案的操作的电子设备、应用程序、服务器或存储介质等软件或硬件提供个人信息。
作为一种可选的但非限定性的实现方式,响应于接收到用户的主动请求,向用户发送提示信息的方式例如可以是弹窗的方式,弹窗中可以以文字的方式呈现提示信息。此外,弹窗中还可以承载供用户选择“同意”或者“不同意”向电子设备提供个人信息的选择控件。
可以理解的是,上述通知和获取用户授权过程仅是示意性的,不对本公开的实现方式构成限定,其它满足相关法律法规的方式也可应用于本公开的实现方式中。
可以理解的是,本技术方案所涉及的数据(包括但不限于数据本身、数据的获取或使用)应当遵循相应法律法规及相关规定的要求。
下面将参照附图更详细地描述本公开的实施例。虽然附图中示出了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反,提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“一些实施例”应当理解为“至少一些实施例”。下文还可能包括其他明确的和隐含的定义。
如本文中所使用的,术语“模型”可以从训练数据中学习到相应的输入与输出之间的关联,从而在训练完成后可以针对给定的输入,生成对应的输出。模型的生成可以基于机器学习技术。深度学习是一种机器学习算法,通过使用多层处理单元来处理输入和提供相应输出。在本文中,“模型”也可以被称为“机器学习模型”、“机器学习网络”或“网络”,这些术语在本文中可互换地使用。一个模型又可以包括不同类型的处理单元或网络。如本文所使用的,属于“确定模型的参数”或类似表达是指确定模型的参数的值(又称为参数值),包括具体值、取值集合或取值范围等。
示例环境
图1示出了本公开的实施例能够在其中实现的示例环境100的示意图。在环境100中,计算设备110中部署有用于TTS的声学模型120和声码器130。声学模型120和声码器130一起被配置为生成与目标文本101相对应的音频102。音频102模拟说话人150(也称为“第二说话人”)说出目标文本101。
声学模型120被配置为生成说话人150读出目标文本101的预测时频表示103,其指示在不同频率下随时间变化的语音信号强度。换言之,预测时频表示103指示在说话人150读出目标文本101期间随时间变化的预测语音强度。
在本公开的实施例中,预测时频表示103可以包括任何合适的谱特征,例如梅尔频谱、梅尔频谱倒系数(MFCC)等。声学模型120用于向输入的目标文本101注入语音中蕴含的音色、韵律、情感等。
声码器130被配置为将预测时频表示103转换称为说话人150读出目标文本101的音频102。换言之,声码器130用于将时频表示103转换成声学波形。在本公开的实施例中,声码器130可以具有任何合适的网络,例如WaveNet、WaveRNN等。
在环境100中,计算设备110可以是的任意类型的具有计算能力的设备,包括终端设备或服务端设备。终端设备可以是任意类型的移动终端、固定终端或便携式终端,包括移动手机、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、媒体计算机、多媒体平板、个人通信系统(PCS)设备、个人导航设备、个人数字助理(PDA)、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或者前述各项的任意组合,包括这些设备的配件和外设或者其任意组合。服务端设备例如可以包括计算系统/服务器,诸如大型机、边缘计算节点、云环境中的计算设备,等等。
应当理解,仅出于示例性的目的描述环境100的结构和功能,而不暗示对于本公开的范围的任何限制。
如前文所述简要提及的,TTS已具有广泛应用。通常期望所生成的音频自然度高、音质好,所生成的音频的自然度和音质又很大程度上受到声学模型的影响。目前已经提出了基于深度学习的端到端声学模型。这样的端到端声学模型需要大量的数据来训练才能表现出高的自然度。在非自回归的框架下,生成的音频的音质不够好,容易包含背景音、电流音等噪音。
此外,这样的端到端声学模型难以实现音色与其他特征(例如,语言、韵律等)解耦。这限制了TTS的应用范围。例如,这种声学模型在跨语言的TTS任务中通常效果不佳。
另一方面,自监督语音表征学习能够从无标注数据中学习到有意义的语音表示。在音色转换任务中,自监督语音表征具有很好的特征解耦能力。
本公开的实施例提出了一种用于TTS的方案。根据本公开的各种实施例,用于TTS的声学模型包括特征提取器和解码器,其中特征提取器用于生成第一说话人读出目标文本的预测语音表示,解码器用于基于预测语音表示和第二说话人的音色生成第二说话人读出目标文本的预测时频表示。在声学模型的训练中,使用由自监督模型生成的目标语音表示来分别训练体重提取器和解码器,而无需对声学模型进行端到端训练。
使用自监督的语音特征来训练声学模型,为模型带来了额外的声学信息。以此方式,可以降低模型的预测难度,提高所生成音频的音质。另一方面,由于自监督的语音特征可以提供与说话人的音色无关的语音信息,因此将自监督的语音特征作为中间特征可以实现音色解耦。这使得声学模型可用于跨说话人和跨语言的TTS任务。
声学模型的整体架构
图2A示出了根据本公开的一些实施例的声学模型120的一个示例。总体上,声学模型120包括特征提取器201和第一解码器210。特征提取器201被配置为基于文本和说话人的音色,生成说话人读出文本的预测语音表示。该预测语音表示是一种隐式特征表示,并且指示随时间变化的语音特征。该预测语音表示指示在说话人读出文本期间随时间变化的语音特征。通过以下参考图3对模型训练的描述,将理解的是,该语音表示可以包括韵律特征等,而不包括音色特征或者包括尽可能少的音色特征。
音色用于标识说话人,并且仅取决于说话人。因此,音色可以一个说话人与其他说话人区分开。音色例如可以被表示为说话人的音色标识符(ID),或者说话人的音色向量。
在一些实施例中,如图2A所示,特征提取器201可以包括文本编码器240、时长预测器230和第二解码器220。在被输入到文本编码器240之前,或者在文本编码器240中,所处理的文本被划分成语音单元序列。在语音单元序列中,各个语音单元按照其在文本中的先后位置排列。在本公开的实施例中,语音单元可以具有任何合适的粒度,例如字、音素等等。相应地,语音单元序列可以是字序列、音素序列等等。作为示例,以字作为语音单元,文本“天气不错”可以被划分成由“天”、“气”、“不”、“错”组成的语音单元序列。
文本编码器240被配置为生成文本的语义表示序列。该语义表示序列中的语义表示与文本的语音单元一一对应,并且每个语义表示在语义表示序列中的位置取决于所对应的语音单元在文本中的位置。也即,该语义表示序列是按照语音单元的顺序对语音单元进行的向量化嵌入。例如,文本“天气不错”的语义表示序列包括按顺序排列的“天”的语义表示W天、“气”的语义表示W气、“不”的语义表示W不和“错”的语义表示W错。
时长预测器230接收语义表示序列和说话人的音色。时长预测器230被配置为预测每个语音单元的持续时间,并根据预测持续时间来更新接收到的语义表示序列。在时长预测器230输出的更新后的语义表示序列中,与每个语音单元相对应的语义表示的数目与相应语音单元的预测持续时间相匹配。举例而言,以帧作为时间单元,如果时长预测器230预测“天”、“气”、“不”、“错”分别持续2帧、1帧、1帧、3帧,则更新后的语义表示序列包括按顺序排列的2个W天、1个W气、1个W不和3个W错。
第二解码器220接收更新后的语义表示序列和说话人的音色,并且被配置为基于更新后的语义表示序列和说话人的音色,生成说话人读出文本的预测语音表示。例如,该预测语音表示包括按帧序列排列的语音特征,以表示在说话人读出文本时语音特征随时间的变化。
图2A仅示出了特征提取器201的一个示例。也可以用其他的网络或模块来实现特征提取器201。在一些实施例中,特征提取器201可以仅包括一个网络或子模型来生成说话人读出文本的预测语音表示。
在一些实施例中,由时长预测器230和文本编码器240实现的功能可以由一个网络或子模型实现。图2B示出了声学模型120的另一示例。在图2B的示例中,特征提取器201包括第二解码器220和编码器250。编码器250被配置为基于文本和说话人的音色,生成说话人读出文本的语义表示序列。即,编码器250实现了参考图2A所描述的时长预测器230和文本编码器240的功能。
第一解码器210接收由特征提取器201生成的预测语音表示,并且被配置为基于预测语音表示和说话人的音色,生成预测时频表示。例如,第一解码器210可以生成预测的梅尔频谱。由第一解码器210使用的音色和由特征提取器201使用的音色可以相同或不同,如下文将参考图4描述的。
声学模型的训练
图3示出了根据本公开的一些实施例的声学模型120的训练的示意图。总体上,第一编码器210和特征提取器201可以同时训练或分开训练。
由说话人310读出参考文本316的音频312是训练数据集中的任一音频。利用特征提取模型301从音频312生成说话人310读出参考文本316的目标语音表示314。特征提取模型301可以是任何合适的无监督或自监督的语音表征学习模型,例如HuBert、Wav2vec等。
目标语音表示314指示随时间变化的语音特征。也即,目标语音表示314指示在说话人310读出参考文本316期间随时间变化的语音特征。例如,目标语音表示314可以包括按帧序列排列的语音特征。
基于音频312生成说话人310读出参考文本316的目标时频表示313。目标时频表示313指示在不同频率下随时间变化的语音信号强度。也即,目标时频表示313指示在说话人310读出参考文本316期间随时间变化的语音信号强度。例如,目标时频表示313可以是说话人310读出参考文本316的梅尔频谱。可以以任何合适的方式来将音频312转换成对应的目标时频表示313,本公开的范围在此方面不受限制。
目标语音表示314、目标时频表示313和说话人310的音色311用于训练第一解码器210。在训练中,可以使用L1损失作为损失函数。
作为示例,目标语音表示314可以被馈送到第一解码器210。第一解码器210基于目标语音表示314生成说话人310读出参考文本316的预测时频表示323。预测时频表示323指示由第一解码器210预测的在说话人310读出参考文本316期间随时间变化的语音信号强度。基于预测时频表示323与目标时频表示313之间的差异,可以确定第一解码器210的参数。例如,可以基于预测时频表示323与目标时频表示313之间的差异确定L1损失,以更新第一解码器210的参数。
除了目标时频表示313、目标语音表示314之外,还可以从音频312中提取参考文本316和目标持续时间315。目标持续时间315是参考文本316中的每个语音单元在音频312中的持续时间。使用目标语音表示314、目标持续时间315、参考文本316和说话人310的音色311来训练特征提取器201。在训练中,可以使用L1损失作为损失函数。
以图2A中所示的特征提取器201的示例实现为例,来描述特征提取器201的训练。参考文本316或预处理(例如,划分语音单元)的参考文本316被输入到文本编码器240。文本编码器240生成参考文本316的语义表示序列。该语义表示序列中的语义表示与参考文本316的语音单元一一对应,并且每个语义表示在语义表示序列中的位置取决于所对应的语音单元在参考文本316中的位置。
由文本编码器240生成的语义表示序列在和音色311组合(例如,相加)之后被输入到时长预测器230。时长预测器230生成参考文本316中的每个语音单元的预测持续时间。预测持续时间与目标持续时间315之间的差异可以用于确定训练的损失函数,例如L1损失。
根据预测持续时间,时长预测器230进一步更新参考文本316的语义表示序列。在更新后的语义表示序列中,与每个语音单元相对应的语义表示的数目与相应语音单元的预测持续时间相匹配。
第二解码器220接收更新后的语义表示序列和说话人310的音色311,并且生成说话人310读出参考文本316的预测语音表示324。预测语音表示324指示在说话人310读出参考文本316期间随时间变化的预测语音特征。预测语音表示324与目标语音表示314之间的差异可以用于确定训练的损失函数,例如L1损失。
特征提取器201作为一个整体是端到端训练的。特征提取器201与第一解码器210可以使用同一训练数据集但分开训练。
有鉴于无监督或自监督表征学习的特点,由特征提取模型301生成的目标语音表示314刻画了与说话人的音色无关的语言信息。因此,在训练中,特征提取器201学习了如何提取与说话人的音色无关的语音特征。如此,通过将无监督或自监督的特征作为中间特征,可以实现音色解耦能力。以此方式获得的声学模型120可以实现跨说话人和跨语言的文本到语音转换。
另一方面,使用无监督或自监督的特征作为中间特征,对声学模型增加了额外的信息。这可以降低模型的预测难度,提高所生成的音频的音质。
此外,在声学模型120的训练中可以使用任何语言的音频102。在一些实施例中,训练数据集可以包括不同语言的音频102。
声学模型在TTS中的应用
下面参考图4来描述在TTS任务中如何使用声学模型120。如图4所示,特征提取器201基于待转换的目标文本101和第一说话人410的第一音色411,生成第一说话人410说出目标文本101的预测语音表示401。预测语音表示401指示在第一说话人410说出目标文本101期间随时间变化的预测的语音特征。例如,预测语音表示401可以包括按帧序列排列的语音特征。
下面以图2A所示的特征提取器201的结构为例来描述生成预测语音表示401的示例。在被输入到文本编码器240之前或者在文本编码器240中,目标文本101被划分成语音单元序列。在语音单元序列中,各个语音单元(例如,字、音素)按照在目标文本101中的顺序排列。文本编码器240生成目标文本101的语义表示序列402,其也称为第二语义表示序列。语义表示序列402中的语义表示与目标文本101的语音单元一一对应,并且每个语义表示在语义表示序列中的位置取决于所对应的语音单元在目标文本101中的位置。
第一说话人410的第一音色411(例如,音色ID或音色向量)与语义表示序列402组合,例如相加或拼接。组合后的语音表示序列402和第一音色411被馈送到时长预测器230。时长预测器230基于第一音色411和语义表示序列402确定目标文本101中的每个语音单元的预测持续时间。可以理解的是,该预测持续时间是按照第一说话人410的韵律特征产生的。
时长预测器230进一步基于预测持续时间来更新语义表示序列。在更新后的语义表示序列403中,与每个语音单元相对应的语义表示的数目与该语音单元的预测持续时间相匹配。举例而言,假设一个语义表示向量在时间上对应于一帧,并且某个语音单元的预测持续时间为3帧。在更新后的语义表示序列403中,与该语音单元相对应的语义表示的数目为3。
更新后的语义表示序列403和第一音色411被输入到第二解码器220。相应地,第二解码器220生成第一说话人410读出目标文本101的预测语音表示401,其指示随时间变化的语音特征。预测语音表示401指示在第一说话人410读出目标文本101期间随时间变化的预测语音特征。
如上文参考图3所描述的,使用无监督或自监督的语音特征来监督特征提取器201的训练。因此,在声学模型120的应用中,由特征提取器201生成的预测语音表示401包括第一说话人410的韵律特征等,而不包括或仅包括很少的音色特征。预测语音表示401中的语音特征是与音色解耦的。
第一解码器210基于预测语音表示401和第二说话人150的第二音色421,生成第二说话人150读出目标文本101的预测时频表示103。预测时频表示103指示在不同频率下随时间变化的语音信号强度。也即,预测时频表示103指示在第二说话人150读出目标文本101期间在不同频率下随时间变化的预测语音信号强度。例如,预测时间表示103可以包括预测的梅尔频谱。
通过第一解码器210,将第二说话人150的第二音色421融合到原本缺少音色特征的预测语音表示401中。这样,所生成的预测时频表示103可以体现第一说话人410的韵律特征等和第二说话人150的音色特征。
声码器130将预测时频表示103转换成第二说话人150读出目标文本101的音频102。音频102体现第一说话人410的韵律和第二说话人150的音色。
为了实现参考图4所描述的过程,声学模型120已经通过训练过程学习了第一说话人410和第二说话人150的音色。也即,用于声学模型120的训练数据集包括第一说话人以第一语言读出参考文本的音频和第二说话人以第二语言读出参考文本的音频。在本文中,说话人在训练数据集的音频中所使用的语音称为参考语言。声学模型120已经学习了第一说话人410说第一语言的特征和第二说话人说第二语言的特征。
在一些实施例中,第一说话人410与第二说话人150相同。在这种情况下,第一音色411与第二音色421相同。
在一些实施例中,声学模型120可以用于跨说话人的TTS。第一说话人410不同于第二说话人150,并且第一音色411不同于第二音色412。
在一些实施例中,声学模型120可以用于跨语言的TTS。目标文本101的语言为第一说话人410所使用的第一语言。第二说话人150所使用的第二语言不同于第一语言。第二说话人150可以不具有说第一语言的能力,或者声学模型120没有学习过第二说话人150如何说第一语言。举例而言,在声学模型120的训练中使用了第一说话人410说中文的音频和第二说话人150说日语的音频。目标文本101包括中文。在这种情况下,可以利用声学模型120生成原本不说中文的第二说话人150用自己的音色读出中文的目标文本101的音频。利用本公开的实施例实现了跨语言的TTS。
示例过程
图5示出了根据本公开的一些实施例的文本到语音转换的过程500的流程图。过程500可以被实现在计算设备110处。下面参考图1、图2A、图2B和图4来描述过程500。
在框510,计算设备110基于待转换的目标文本101和第一说话人410的第一音色411,生成第一说话人410读出目标文本101的预测语音表示401。预测语音表示401指示随时间变化的语音特征。可以由特征提取器201生成预测语音表示401。
在框520,计算设备110基于预测语音表示401和第二说话人150的第二音色412,生成第二说话人150读出目标文本101的预测时频表示103。预测时频表示103指示在不同频率上随时间变化的语音信号强度。可以由第一解码器210生成预测时频表示103。
在一些实施例中,可以基于目标文本101和第一音色411,生成目标文本101的第一语义表示序列。在第一语义表示序列中与目标文本中的语音单元相对应的语义表示的数目与语音单元的预测持续时间相匹配。第一语义表示序列例如是更新后的语义表示序列403。可以基于第一语义表示序列和第一音色411,生成预测语音表示401。例如,可以由图2B中的编码器250生成第一语义表示序列。
在一些实施例中,为了生成第一语义表示序列,可以基于目标文本101,生成目标文本101的第二语义表示序列,第二语义表示序列包括与语音单元一一对应的语义表示。第二语义表示序列例如是图4中的语义表示序列402。可以基于第二语义表示序列和第一音色411,确定语音单元的预测持续时间。基于预测持续时间,将第二语义表示更新为第一语义表示序列。
在框530,计算设备110将预测时频表示103转换成第二说话人150读出目标文本101的音频102。可以由声码器130将预测时频表示103转换成音频102。
在一些实施例中,目标文本101包括第一语言的文本,并且第一说话人410和第二说话人150的参考语言为第一语言。在一些实施例中,第一说话人410不同于第二说话人150。在一些实施例中,第一说话人410与第二说话人150相同。
在一些实施例中,目标文本101包括第一语言的文本,第一说话人410的参考语言为第一语言,并且第二说话人150的参考语言为不同于第一语言的第二语言。也即,在用于声学模型的训练数据集中,第一说话人410使用第一语言,而第二说话人150使用第二语言。
图6示出了根据本公开的一些实施例的训练声学模型的过程600的流程图。过程600可以被实现在计算设备处,该计算设备可以与计算设备110相同或不同。下面图3来描述过程600。
在框610,计算设备基于第一说话人读出第一参考文本的第一音频,生成第一说话人读出第一参考文本的第一目标语音表示。第一目标语音表示指示随时间变化的语音特征。例如,可以使用自监督或无监督的特征提取模型301来基于音频312生成目标语音表示314。第一说话人可以是训练数据集中所涉及的任一说话人。
在框620,计算设备将第一音频转换成第一说话人读出第一参考文本的第一目标时频表示。第一目标时频表示指示不同频率上随时间变化的语音信号强度。
在框630,计算设备基于第一目标语音表示、第一目标时频表示和第一说话人的第一音色,训练第一解码器210。第一解码器210用于在文本到语音转换中将语音表示转换成时频表示。
在一些实施例中,可以基于第一目标语音表示和第一音色,根据第一解码器410,生成第一说话人读出第一参考文本的预测时频表示。预测时频表示指示不同频率上随时间变化的语音信号强度。可以基于预测时频表示和第一目标时频表示的差异,确定第一编码器的参数。
在一些实施例中,还可以基于第二说话人读出第二参考文本的第二音频,生成第二说话人读出第二参考文本的第二目标语音表示,第二目标语音表示指示随时间变化的语音特征。第二说话人不同于第一说话人,并且第一参考文本与第二参考文本是不同语言的文本。可以将第二音频转换成第二说话人读出第二参考文本的第二目标时频表示,第二目标时频表示指示不同频率上随时间变化的语音信号强度。可以基于第二目标语音表示、第二目标时频表示和第二说话人的第二音色,训练第一解码器。声学模型120的训练可以是跨语言的。
在一些实施例中,还可以确定第一参考文本中的语音单元在第一音频中的目标持续时间。可以基于第一参考文本、第一音色、目标持续时间和目标语音表示,训练文本编码器240、时长预测器230和第二解码器220。文本编码器240、时长预测器230和第二解码器220一起被配置为生成说话人读出文本的语音表示。
示例装置和设备
图7示出了根据本公开的某些实施例的用于文本到语音转换的装置700的示意性结构框图。装置700可以被实现为或者被包括在计算设备110中。装置700中的各个模块/组件可以由硬件、软件、固件或者它们的任意组合来实现。
如图所示,装置700包括语音表示生成模块710,被配置为基于待转换的目标文本和第一说话人的第一音色,生成第一说话人读出目标文本的预测语音表示,预测语音表示指示随时间变化的语音特征。装置700还包括时频表示生成模块720,被配置为基于预测语音表示和第二说话人的第二音色,生成第二说话人读出目标文本的预测时频表示,预测时频表示指示在不同频率上随时间变化的语音信号强度。装置700进一步包括转换模块730,被配置为将预测时频表示转换成第二说话人读出目标文本的音频。
在一些实施例中,语音表示生成模块710包括:编码模块,被配置为基于目标文本和第一音色,生成目标文本的第一语义表示序列,在第一语义表示序列中与目标文本中的语音单元相对应的语义表示的数目与语音单元的预测持续时间相匹配;以及解码模块,被配置为基于第一语义表示序列和第一音色,生成预测语音表示。
在一些实施例中,编码模块包括:文本编码模块,被配置为基于目标文本,生成目标文本的第二语义表示序列,第二语义表示序列包括与语音单元一一对应的语义表示;时长预测模块,被配置为基于第二语义表示序列和第一音色,确定语音单元的预测持续时间;以及编码更新模块,被配置为基于预测持续时间,将第二语义表示更新为第一语义表示序列。
在一些实施例中,目标文本包括第一语言的文本,并且第一说话人和第二说话人的参考语言为第一语言。
在一些实施例中,第一说话人不同于第二说话人。
在一些实施例中,目标文本包括第一语言的文本,第一说话人的参考语言为第一语言,并且第二说话人的参考语言为不同于第一语言的第二语言。
图8示出了根据本公开的某些实施例的用于训练声学的装置800的示意性结构框图。装置800可以被实现为或者被包括在计算设备中。装置800中的各个模块/组件可以由硬件、软件、固件或者它们的任意组合来实现。
如图所示,装置800包括目标特征提取模块810,被配置为基于第一说话人读出第一参考文本的第一音频,生成第一说话人读出第一参考文本的第一目标语音表示,第一目标语音表示指示随时间变化的语音特征。装置800还包括音频转换模块820,被配置为将第一音频转换成第一说话人读出第一参考文本的第一目标时频表示,第一目标时频表示指示不同频率上随时间变化的语音信号强度。装置800进一步包括训练模块830,被配置为基于第一目标语音表示、第一目标时频表示和第一说话人的第一音色,训练第一解码器,第一解码器用于在文本到语音转换中将语音表示转换成时频表示。
在一些实施例中,训练模块830进一步被配置为:基于第一目标语音表示和第一音色,根据第一解码器,生成第一说话人读出第一参考文本的预测时频表示,预测时频表示指示不同频率上随时间变化的语音信号强度;以及基于预测时频表示和第一目标时频表示的差异,确定第一编码器的参数。
在一些实施例中,目标特征提取模块810还被配置为基于第二说话人读出第二参考文本的第二音频,生成第二说话人读出第二参考文本的第二目标语音表示,第二目标语音表示指示随时间变化的语音特征,其中第二说话人不同于第一说话人,并且第一参考文本与第二参考文本是不同语言的文本。音频转换模块820还被配置为将第二音频转换成第二说话人读出第二参考文本的第二目标时频表示,第二目标时频表示指示不同频率上随时间变化的语音信号强度。解码器训练模块830还被配置为基于第二目标语音表示、第二目标时频表示和第二说话人的第二音色,训练第一解码器。
在一些实施例中,装置800还包括:持续时间确定模块,被配置为确定第一参考文本中的语音单元在第一音频中的目标持续时间;提取器训练模块,被配置为基于第一参考文本、第一音色、目标持续时间和目标语音表示,训练文本编码器、时长预测器和第二解码器,文本编码器、时长预测器和第二解码器一起被配置为生成说话人读出文本的语音表示。
图9示出了示出了其中可以实施本公开的一个或多个实施例的计算设备900的框图。应当理解,图9所示出的计算设备900仅仅是示例性的,而不应当构成对本文所描述的实施例的功能和范围的任何限制。图9所示出的计算设备900可以用于实现图1的计算设备110。
如图9所示,计算设备900是通用计算设备的形式。计算设备900的组件可以包括但不限于一个或多个处理器或处理单元910、存储器920、存储设备930、一个或多个通信单元940、一个或多个输入设备950以及一个或多个输出设备960。处理单元910可以是实际或虚拟处理器并且能够根据存储器920中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高计算设备900的并行处理能力。
计算设备900通常包括多个计算机存储介质。这样的介质可以是计算设备900可访问的任何可以获取的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器920可以是易失性存储器(例如寄存器、高速缓存、随机访问存储器(RAM))、非易失性存储器(例如,只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存)或它们的某种组合。存储设备930可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,诸如闪存驱动、磁盘或者任何其他介质,其可以能够用于存储信息和/或数据(例如用于训练的训练数据)并且可以在计算设备900内被访问。
计算设备900可以进一步包括另外的可拆卸/不可拆卸、易失性/非易失性存储介质。尽管未在图9中示出,可以提供用于从可拆卸、非易失性磁盘(例如“软盘”)进行读取或写入的磁盘驱动和用于从可拆卸、非易失性光盘进行读取或写入的光盘驱动。在这些情况中,每个驱动可以由一个或多个数据介质接口被连接至总线(未示出)。存储器920可以包括计算机程序产品925,其具有一个或多个程序模块,这些程序模块被配置为执行本公开的各种实施例的各种方法或动作。
通信单元940实现通过通信介质与其他计算设备进行通信。附加地,计算设备900的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,计算设备900可以使用与一个或多个其他服务器、网络个人计算机(PC)或者另一个网络节点的逻辑连接来在联网环境中进行操作。
输入设备950可以是一个或多个输入设备,例如鼠标、键盘、追踪球等。输出设备960可以是一个或多个输出设备,例如显示器、扬声器、打印机等。计算设备900还可以根据需要通过通信单元940与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与计算设备900交互的设备进行通信,或者与使得计算设备900与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(I/O)接口(未示出)来执行。
根据本公开的示例性实现方式,提供了一种计算机可读存储介质,其上存储有计算机可执行指令,其中计算机可执行指令被处理器执行以实现上文描述的方法。根据本公开的示例性实现方式,还提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括计算机可执行指令,而计算机可执行指令被处理器执行以实现上文描述的方法。
这里参照根据本公开实现的方法、装置、设备和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实现的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实现,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实现。在不偏离所说明的各实现的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实现的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各个实现方式。
Claims (14)
1.一种文本到语音转换的方法,包括:
基于待转换的目标文本和第一说话人的第一音色,生成所述第一说话人读出所述目标文本的预测语音表示,所述预测语音表示指示随时间变化的语音特征;
基于所述预测语音表示和第二说话人的第二音色,生成所述第二说话人读出所述目标文本的预测时频表示,所述预测时频表示指示在不同频率上随时间变化的语音信号强度;以及
将所述预测时频表示转换成所述第二说话人读出所述目标文本的音频。
2.根据权利要求1所述的方法,其中生成所述预测语音表示包括:
基于所述目标文本和所述第一音色,生成所述目标文本的第一语义表示序列,在所述第一语义表示序列中与所述目标文本中的语音单元相对应的语义表示的数目与所述语音单元的预测持续时间相匹配;以及
基于所述第一语义表示序列和所述第一音色,生成所述预测语音表示。
3.根据权利要求2所述的方法,其中生成所述第一语义表示序列包括:
基于所述目标文本,生成所述目标文本的第二语义表示序列,所述第二语义表示序列包括与所述语音单元一一对应的语义表示;
基于所述第二语义表示序列和所述第一音色,确定所述语音单元的预测持续时间;以及
基于所述预测持续时间,将所述第二语义表示更新为所述第一语义表示序列。
4.根据权利要求1所述的方法,其中所述目标文本包括第一语言的文本,并且所述第一说话人和所述第二说话人的参考语言为所述第一语言。
5.根据权利要求4所述的方法,其中所述第一说话人不同于所述第二说话人。
6.根据权利要求1所述的方法,其中所述目标文本包括第一语言的文本,所述第一说话人的参考语言为所述第一语言,并且所述第二说话人的参考语言为不同于所述第一语言的第二语言。
7.一种用于文本语音转换的方法,包括:
基于第一说话人读出第一参考文本的第一音频,生成所述第一说话人读出所述第一参考文本的第一目标语音表示,所述第一目标语音表示指示随时间变化的语音特征;
将所述第一音频转换成所述第一说话人读出所述第一参考文本的第一目标时频表示,所述第一目标时频表示指示不同频率上随时间变化的语音信号强度;以及
基于所述第一目标语音表示、所述第一目标时频表示和所述第一说话人的第一音色,训练第一解码器,所述第一解码器用于在文本到语音转换中将语音表示转换成时频表示。
8.根据权利要求7所述的方法,其中训练所述第一解码器包括:
基于所述第一目标语音表示和所述第一音色,根据所述第一解码器,生成所述第一说话人读出所述第一参考文本的预测时频表示,所述预测时频表示指示不同频率上随时间变化的语音信号强度;以及
基于所述预测时频表示和所述第一目标时频表示的差异,确定所述第一编码器的参数。
9.根据权利要求7所述的方法,还包括:
基于第二说话人读出第二参考文本的第二音频,生成所述第二说话人读出所述第二参考文本的第二目标语音表示,所述第二目标语音表示指示随时间变化的语音特征,其中所述第二说话人不同于所述第一说话人,并且所述第一参考文本与所述第二参考文本是不同语言的文本;
将所述第二音频转换成所述第二说话人读出所述第二参考文本的第二目标时频表示,所述第二目标时频表示指示不同频率上随时间变化的语音信号强度;以及
基于所述第二目标语音表示、所述第二目标时频表示和所述第二说话人的第二音色,训练所述第一解码器。
10.根据权利要求6所述的方法,还包括:
确定所述第一参考文本中的语音单元在所述第一音频中的目标持续时间;以及
基于所述第一参考文本、所述第一音色、所述目标持续时间和所述目标语音表示,训练文本编码器、时长预测器和第二解码器,所述文本编码器、所述时长预测器和所述第二解码器一起被配置为生成说话人读出文本的语音表示。
11.一种用于文本到语音转换的装置,包括:
语音表示生成模块,被配置为基于待转换的目标文本和第一说话人的第一音色,生成所述第一说话人读出所述目标文本的预测语音表示,所述预测语音表示指示随时间变化的语音特征;
时频表示生成模块,被配置为基于所述预测语音表示和第二说话人的第二音色,生成所述第二说话人读出所述目标文本的预测时频表示,所述预测时频表示指示在不同频率上随时间变化的语音信号强度;以及
转换模块,被配置为将所述预测时频表示转换成所述第二说话人读出所述目标文本的音频。
12.一种用于文本语音转换的装置,包括:
目标特征提取模块,被配置为基于第一说话人读出第一参考文本的第一音频,生成所述第一说话人读出所述第一参考文本的第一目标语音表示,所述第一目标语音表示指示随时间变化的语音特征;
音频转换模块,被配置为将所述第一音频转换成所述第一说话人读出所述第一参考文本的第一目标时频表示,所述第一目标时频表示指示不同频率上随时间变化的语音信号强度;以及
解码器训练模块,被配置为基于所述第一目标语音表示、所述第一目标时频表示和所述第一说话人的第一音色,训练第一解码器,所述第一解码器用于在文本到语音转换中将语音表示转换成时频表示。
13.一种电子设备,包括:
至少一个处理单元;以及
至少一个存储器,所述至少一个存储器被耦合到所述至少一个处理单元并且存储用于由所述至少一个处理单元执行的指令,所述指令在由所述至少一个处理单元执行时使所述电子设备执行根据权利要求1至6中任一项所述的方法或根据权利要求7至10中任一项所述的方法。
14.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序可由处理器执行以实现根据权利要求1至6中任一项所述的方法或根据权利要求7至10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210864161.XA CN115240633A (zh) | 2022-07-20 | 2022-07-20 | 用于文本到语音转换的方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210864161.XA CN115240633A (zh) | 2022-07-20 | 2022-07-20 | 用于文本到语音转换的方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115240633A true CN115240633A (zh) | 2022-10-25 |
Family
ID=83675524
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210864161.XA Pending CN115240633A (zh) | 2022-07-20 | 2022-07-20 | 用于文本到语音转换的方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115240633A (zh) |
-
2022
- 2022-07-20 CN CN202210864161.XA patent/CN115240633A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10388284B2 (en) | Speech recognition apparatus and method | |
WO2022141678A1 (zh) | 语音合成方法、装置、设备及存储介质 | |
Sriram et al. | Robust speech recognition using generative adversarial networks | |
CN111048064B (zh) | 基于单说话人语音合成数据集的声音克隆方法及装置 | |
CN108615525B (zh) | 一种语音识别方法及装置 | |
CN112634856A (zh) | 语音合成模型训练方法和语音合成方法 | |
JP2012037619A (ja) | 話者適応化装置、話者適応化方法および話者適応化用プログラム | |
CN114223029A (zh) | 支持装置进行语音识别的服务器及服务器的操作方法 | |
JP2020042257A (ja) | 音声認識方法及び装置 | |
KR20240070689A (ko) | 콘포머에 대한 추론 성능의 최적화 | |
JP2023162265A (ja) | テキストエコー消去 | |
CN116129869A (zh) | 语音风格迁移合成方法及装置、电子设备、存储介质 | |
CN113205797B (zh) | 虚拟主播生成方法、装置、计算机设备及可读存储介质 | |
CN115240633A (zh) | 用于文本到语音转换的方法、装置、设备和存储介质 | |
CN114242035A (zh) | 语音合成方法、装置、介质以及电子设备 | |
CN115497451A (zh) | 语音处理方法、装置、电子设备和存储介质 | |
CN116888665A (zh) | 电子设备及其控制方法 | |
KR20220118009A (ko) | 전자 장치 및 이의 제어 방법 | |
US20240233706A1 (en) | Text-based speech generation | |
US20240119922A1 (en) | Text to speech synthesis without using parallel text-audio data | |
KR102663654B1 (ko) | 적응형 시각적 스피치 인식 | |
CN115602145A (zh) | 基于文本的语音生成 | |
CN118116386A (zh) | 语音识别方法、装置及电子设备 | |
KR20230141251A (ko) | 성도 및 여기 신호 정보를 이용한 자동 음성 인식 방법 및 장치 | |
CN117558263A (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 |