CN111696521B - 语音克隆模型的训练方法、可读存储介质和语音克隆方法 - Google Patents
语音克隆模型的训练方法、可读存储介质和语音克隆方法 Download PDFInfo
- Publication number
- CN111696521B CN111696521B CN202010476440.XA CN202010476440A CN111696521B CN 111696521 B CN111696521 B CN 111696521B CN 202010476440 A CN202010476440 A CN 202010476440A CN 111696521 B CN111696521 B CN 111696521B
- Authority
- CN
- China
- Prior art keywords
- data
- voice
- speaker
- cloning
- speech
- 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.)
- Active
Links
- 238000010367 cloning Methods 0.000 title claims abstract description 84
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000012549 training Methods 0.000 title claims abstract description 48
- 238000003860 storage Methods 0.000 title claims abstract description 10
- 238000003062 neural network model Methods 0.000 claims abstract description 30
- 238000012545 processing Methods 0.000 claims abstract description 15
- 230000006870 function Effects 0.000 claims abstract description 9
- 230000007246 mechanism Effects 0.000 claims abstract description 8
- 230000015654 memory Effects 0.000 claims description 22
- 238000003491 array Methods 0.000 claims description 19
- 238000007781 pre-processing Methods 0.000 claims description 10
- 238000001228 spectrum Methods 0.000 claims description 6
- 230000015572 biosynthetic process Effects 0.000 description 11
- 238000003786 synthesis reaction Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000002360 preparation method Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012411 cloning technique Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000001308 synthesis method Methods 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/06—Elementary speech units used in speech synthesisers; Concatenation rules
-
- 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
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
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)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Signal Processing (AREA)
- Machine Translation (AREA)
Abstract
本申请提供了一种语音克隆模型的训练方法、可读存储介质和语音克隆方法,训练方法包括:将经过预处理的语料数据输入应用于语音克隆的神经网络模型,语料数据用于训练神经网络模型,语料数据包括多个发音人的多种语言的语音数据和语音数据对应的文本数据;利用神经网络模型的发音人嵌入模块和编码器模块分别对每个发音人的语音数据和相应的文本数据进行处理,生成发音人的语音嵌入数据和相应的文本数据的文本嵌入数据;将文本嵌入数据与语音嵌入数据合并,作为注意力机制模块的输入参数,并且将语音数据作为参考标准,训练神经网络模型;在损失函数满足预定值的情况下,得到应用于语音克隆的神经网络模型。
Description
技术领域
本申请的一个或多个实施例通常涉及语音合成技术领域,具体涉及一种语音克隆模型的训练方法、可读存储介质和语音克隆方法。
背景技术
基于深度学习的语音合成技术指的是,给定一短文本,利用神经网络生成与之相对应的一段音频。
目前可用的语音合成方法分为两类:一种是拼接法,意思是把常用的单字(或词语)由录音人录下,在语音合成时根据文本拼接起来;另一种是参数法,意思是先构建一个语音生成模型,把文字输入后无需拼接,模型会自己生成一段音频(或频谱)。基于深度学习的语音合成技术属于参数法。
目前语音合成技术致力于的难点是自然度。拼接法难以达成自然度的要求。参数法尤其是基于深度学习的方法近期有着逼近真人发音的效果。然而对于多语言的情况--主要是中文英文混杂--目前大量的方法是用一个中文语音生成模型和一个英文语音生成模型分别生成一句话的中文和英文部分,再把他们拼接起来。这样的方法自然度上难以达到要求。
在普通的语音合成技术上更进一步的是多发音人的语音合成。通常的基于深度学习的语音合成技术会利用一个专人的模型来生成某一个人的语音。这样的方法在面对需要多人语音的情景下,需要创建大量的模型,这样会占用大量的存储和计算资源。
在多发音人语音合成上更进一步的语音克隆。多发音人语音合成技术一般只能生成在模型训练时期出现过的发音人的声音。对于在产品使用过程中出现的新发音人,普通的多发音人语音合成技术是无法生成相应的语音的。语音克隆技术,指的是使用与训练一个新模型相比更少量的时间和数据(否则可以对新发音人训练一个新模型),来完成对新发音人的声音的克隆。输入任意文本,模型能够生成逼近新发音人声音的相应的音频。于是,对于语音克隆技术,除了自然度以外,还需要保证克隆的语音与新发音人声音的相似度。
目前对于语音克隆技术最大的挑战在于,如何利用更少的新发音人声音数据,和更少的准备时间(例如再训练的时间),来获得与新发音人更相似的合成语音。
现有语音克隆技术目前使用广泛的是自适应再训练,即利用新发音人的数据对模型进行自适应再训练,微调原模型。但是,这个办法对于新发音人的样本数据量的要求一般是几十到上百句,很难短时间内获得,而且自适应方法需要额外的训练时间。另外自适应方法依然需要对每个新发音人创建一个单独的模型。
发明内容
为了解决上述问题。本申请的一个或多个实施例提供一种语音克隆模型的训练方法、可读存储介质和语音克隆方法。
根据本申请的一些方面,公开一种语音克隆模型的训练方法,一种语音克隆模型的训练方法,包括:
将经过预处理的语料数据输入应用于语音克隆的神经网络模型,其中,所述语料数据用于训练所述神经网络模型,所述语料数据包括多个发音人的多种语言的语音数据和所述语音数据对应的文本数据;
利用所述神经网络模型的发音人嵌入模块和编码器模块分别对每个所述发音人的所述语音数据和相应的所述文本数据进行处理,生成所述发音人的语音嵌入数据和相应的所述文本数据的文本嵌入数据;
将所述文本嵌入数据与所述语音嵌入数据合并,作为所述神经网络模型的注意力机制模块的输入参数,并且将所述语音数据作为参考标准,训练所述神经网络模型;
在所述神经网络模型的损失函数满足预定值的情况下,得到应用于所述语音克隆的所述神经网络模型。
在一些实施方式中,生成所述发音人的语音嵌入数据还包括:
通过所述发音人嵌入模块,对所述发音人的语音数据中的每一条语音数据计算所述发音人的声纹信息;
计算全部的所述声纹信息的均值,生成所述发音人的所述语音嵌入数据。
在一些实施方式中,对相应的所述文本数据进行处理还包括,根据所述文本数据中各个字符的语种,相应地扩展用于表达所述字符的数组。
在一些实施方式中,根据所述文本数据中各个字符的语种相应地扩展用于表达所述字符的数组还包括:
区分所述文本数据中各个字符的所述语种;
对于中文字符,在表达所述中文字符的数组后部合并与表达所述中文字符的数组的维数相同的零值数组,以及
对于英文字符,在表达所述英文字符的数组前部合并与表达所述英文字符的数组的维数相同的零值数组。
在一些实施方式中,将所述文本嵌入数据与所述语音嵌入数据合并还包括,将表达所述语音嵌入数据的数组与每一个时间戳的表达所述文本嵌入数据的数组进行合并。
在一些实施方式中,所述方法还包括对所述语料数据进行预处理,所述预处理包括:
将所述文本数据中的中文字符转换为拼音,其中拼音的四种音调通过数字表示;以及
将所述文本数据中的英文字符转换为统一码的非英文字母。
在一些实施方式中,所述方法还包括对所述语料数据进行预处理,所述预处理包括,在去除所述语音数据中的沉默音之后,将所述语音数据转换为梅尔频谱。
第二方面,本申请的实施方式提供了一种语音克隆方法,用于克隆目标发音人的声音,包括:
对所述目标发音人的语音数据和相应的文本数据进行处理,生成处理后的所述语音数据和文本数据;
将处理后的所述语音数据和文本数据输入已训练的语音克隆模型;以及
通过所述语音克隆模型,获取所述目标发音人的克隆语音;
其中,所述语音克隆模型采用上述第一方面所述的训练方法生成。
第三方面,本申请的实施方式提供了一种计算机可读介质,所述计算机可读存储介质上存储有指令,该指令在计算机上执行时使所述计算机执行上述第一方面所述的语音克隆模型的训练方法。
第四方面,本申请的实施方式提供了一种***,包括:
存储器,用于存储由***的一个或多个处理器执行的指令,以及
处理器,用于执行所述存储器中的所述指令,以执行上述第一方面所述的语音克隆模型的训练方法。
本申请根据本申请的一些方面,其效果包括,但不局限于:
只需要一个语音克隆模型即可支持多发音人的声音生成,并且一个该模型即可支持多语言的声音生成。该语音克隆模型无需额外的适应训练,拿到目标发音人的声音,获得发音人的语音嵌入数据后即可克隆其语音。经实际测试,本申请的语音克隆模型只需要目标发音人15到30句的声音即可得到可以接受的结果。相反,现有的需要自适应训练的模型会有几十分钟到数小时的准备时间。
附图说明
图1示出了根据本发明实施例的语音克隆模型的训练方法的计算设备的结构示意图。
图2示出了根据本申请实施例的语音克隆模型的模块示意图。
图3示出了根据本申请实施例的语音克隆模型中生成经合并的张量的示例的示意图。
图4示出了根据本申请实施例的语音克隆模型的训练方法的流程示意图。
图5示出了根据本申请实施例的语音克隆方法的流程示意图。
具体实施方式
为使本申请实施例的目的和技术方案更加清楚,下面将结合本申请实施例的附图,对本申请实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于所描述的本申请的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
根据本发明实施方式,提供了一种语音克隆模型的训练方法的实施方式,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请方式所提供的方法实施方式可以在计算设备中执行。图1是根据本发明实施方式的语音克隆模型的训练方法的计算设备的结构示意图。计算设备100包括,但不局限于,膝上型设备、台式机、手持PC、个人数字助理、工程工作站、服务器、网络设备、网络集线器、交换机、嵌入式处理器、数字信号处理器(Digital Signal Processor,简称DSP)、图形设备、视频游戏设备、机顶盒、微控制器、蜂窝电话、便携式媒体播放器、手持设备、可穿戴设备(例如,显示眼镜或护目镜,头戴式显示器(Head-Mounted Display,简称HMD),手表,头戴设备,臂带,珠宝等),虚拟现实(Virtual Reality,简称VR)和/或增强现实(AugmentReality,简称AR)设备,物联网(Internet of Things,IoT)设备,工业控制设备,车载信息娱乐设备,流媒体客户端设备,电子书阅读设备,POS机,电动车辆的控制***,以及各种其他电子设备。一般地,能够包含本文中所公开的处理器和/或其它执行逻辑的多个装置和电子设备一般都是合适的。
如图1所示,计算设备100可以包括一个或多个(图中仅示出一个)处理器101(处理器101可以包括但不限于中央处理器CPU、图像处理器GPU、数字信号处理器DSP、微处理器MCU或可编程逻辑器件FPGA等的处理装置)、总线102、用于存储数据的存储器103、以及用于通信功能的通信接口104。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器103可用于存储数据库、各种语料数据,包括用于模型训练的语料数据、用于模型调整的目标发音人的语料数据,还可以存储神经网络模型的软件程序以及模块,以及其他应用软件的的软件程序以及模块,例如本发明实施方式中的语音克隆模型的训练方法对应的程序指令/模块,处理器101通过运行存储在存储器103内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现语音克隆模型的训练方法和语音克隆方法。
存储器103可包括高速随机存储器,诸如,SRAM、DRAM,还可包括非易失性存储器,例如一个或者多个非易失性随机存取存储器(NVRAM)、诸如SPI闪存、NAND闪存的各种闪存、或者其他非易失性固态存储器。
根据本申请的一些实施方式,存储器103可进一步包括相对于处理器101远程设置的存储器,这些远程存储器可以通过网络经由通信接口104连接至计算设备100。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
通信接口104用于经由网络接收或者发送数据,网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。上述的网络具体实例可包括计算设备100的通信供应商提供的互联网。
图2示出了根据本申请一个或多个实施方式的语音克隆模型的模块示意图。如图2所示,语音克隆模型200包括编码器210、发音人嵌入(speaker embedding)模块220、合并模块230、注意力机制模块240、以及解码器250等。可选地,虽然图2中并未示出,合并模块230也可以设置在编码器210中,作为编码器210中的一个或多个单元。
语音克隆模型200可以基于现有的神经网络模型实施,在本申请的实施方式中,以谷歌Tacotron2模型为基础实施语音克隆模型200,然而现有Tacotron2模型只适用于单人单语言的模型训练,并且不支持语音克隆。本申请通过对Tacotron2模型的改进,实现本申请的多人多语言的语音克隆模型200。在以下各种实施方式中,只描述本申请的语音克隆模型200相较于现有技术的改进部分,对于Tacotron2模型的现有架构在此不再赘述。
在所示的实施方式中,语音克隆模型200可以包括多语言混合输入。为了避免不同语种的字符在训练时互相干扰,编码器210对语音数据相对应的文本数据中的字符按照语种进行特定处理,使得不同语种的字符不会在同一个发音空间内进行训练。
具体而言,以中英文混合输入为例,对于输入到编码器210的文本数据,编码器210区分文本数据中每个字符属于中文字符或英文字符,以下将详细描述中英文字符区分方式。通常,编码器输出的用于表示每个字符的数组可以包括128维、256维或512维中一种,而在本申请的实施方式中,为了让中英文的空间完全分离,同时尽量使语音克隆模型200对于中英文的表达能力相等,编码器210对输出的数组的维数翻倍。例如,在每个字符都以512维的数组进行表示的情况下,编码器210将输出数组拓展为1024维。具体地,如果字符对应为中文,则在该字符的512维数组的后部合并一个512维的值为0的数组;如果字符对应的是英文,则在该字符的512维数组的前部合并一个512维值为0的数组。这样编码器210的输出的空间(数组)中,中文和英文会被分配到两个子空间,由此,任何两个中文和英文的嵌入(embedding)的点积都为零,使得中英文之间互相独立不干扰。
在不同的实施方式中,多语言混合输入并不仅限于中英文输入,也可以包括四大语系中两种不同语种的混合输入,本申请在此不作限制。
在一些实施方式中,语音克隆模型200还可以包括多个发音人的语音输入,其中,发音人嵌入模块220可以用于对多个发音人的语音数据进行处理,生成发音人的语音嵌入数据。发音人嵌入模块220计算每个发音人的声纹信息,并将该信息存储在128维数组中。具体来说,在发音人嵌入模块220中,每个发音人的每一条语音数据输入到每层维度为768的、3层LSTM(Long Short-Term Memory,长短期记忆网络)中,LSTM的输出映射在一个128维的数组中,经过归一化,得到一条语音数据的语音嵌入数据。对于每个发音人,通过对获得的该发音人的语音嵌入数据计算均值,得到该发音人的最终的语音嵌入数据。
在发音人的语音数据和相应的文本数据分别经过发音人嵌入模块220和编码器210处理之后,合并模块230用于将编码器210输出的表达字符的数组与发音人的语音嵌入数据进行合并。
在一些实施方式中,每个发音人的通过128维数组表达的最终语嵌入数据与编码器210输出的表达字符的数组,基于每个时间戳进行合并。举例来说,对于编码器210输出数组的形状可以表示为(batch_size,length,encoder_dimension),发音人的语音嵌入数据的数组的形状可以表示为(batch_size,128),将语音嵌入数据的数组增加一个维度成为(batch_size,1,128),随后该数组在增加的这个维度上被复制成(batch_size,length,128)。最终,编码器210的输出会和发音人的语音嵌入数据的数组在最后一个维度上合并成(batch_size,length,encoder_dimension+128),形成新的张量。
图3示出了语音克隆模型中生成经合并的张量的示例。参考图3,发音人小王的多条语音数据中的其中一条的对应文本为:“这是apple”,该文本在预处理之后,通过编码器210输出为如图所示的文本嵌入(text embedding)数组。图中,(.)中的部分代表每个字符的中文嵌入(由于卷积,它会包含上下文信息),[.]中的部分代表每个字符的英文嵌入(由于卷积,它会包含上下文信息),以及发音人小王的语音信息在预处理之后,通过发音人嵌入模块220,生成128维数组{},其代表的发音人小王的发音人嵌入(speaker embedding)。经过合并模块230的处理,形成图中最终的文本嵌入的张量。
随后,新的张量作为输入参数传递到注意力机制模块240中,经过注意力机制模块240和解码器250的处理,最终通过修正过的平行WaveNet生成目标发音人关于目标文本的音频。
根据本申请的实施方式,只需要一个语音克隆模型即可支持多发音人的声音生成,并且一个即可支持多语言的声音生成。该语音克隆模型无需额外的适应训练,拿到目标发音人的声音,获得发音人的语音嵌入数据后即可克隆其语音。经实际测试,本申请的语音克隆模型只需要目标发音人15到30句的声音即可得到可以接受的结果。相反,现有的需要自适应训练的模型会有几十分钟到数小时的准备时间。
以下描述根据本申请的语音克隆模型的训练方法的一个或多个实施例。该方法用于训练先前描述的语音克隆模型。
图4示出了根据本申请的语音克隆模型的训练方法的一个实施例。在一些实施方式中,方法400例如在电子设备上实施,例如,如图1所示的计算设备100上实施。
对于上述计算设备和语音克隆模型的实施方式中未描述的内容,可以参见下述方法实施方式;同样地,对于方法实施方式中未描述的内容,可参见上述计算设备和语音克隆模型实施方式。
如图4所示的语音克隆模型的训练方法400中,在块401、将经过预处理的语料数据输入应用于语音克隆的神经网络模型。
在块402、利用神经网络模型的发音人嵌入模块和编码器模块分别对每个发音人的语音数据和相应的文本数据进行处理,生成发音人的语音嵌入数据和相应的文本数据的文本嵌入数据。
在块403、将文本嵌入数据与语音嵌入数据合并,作为神经网络模型的注意力机制模块的输入参数,并将语音数据作为参考标准,训练神经网络模型。
最后,在块404、在神经网络模型的损失函数满足预定值的情况下,得到应用于语音克隆的神经网络模型。
进一步地,生成发音人的语音嵌入数据还包括:通过发音人嵌入模块,对发音人的语音数据中的每一条语音数据计算发音人的声纹信息;计算全部的声纹信息的均值,生成发音人的语音嵌入数据。
进一步地,对相应的文本数据进行处理还包括,根据文本数据中各个字符的语种,相应地扩展用于表达字符的数组。
进一步地,根据文本数据中各个字符的语种相应地扩展用于表达字符的数组还包括:区分文本数据中各个字符的语种;对于中文字符,在表达中文字符的数组后部合并与表达中文字符的数组的维数相同的零值数组,以及对于英文字符,在表达英文字符的数组前部合并与表达英文字符的数组的维数相同的零值数组。
进一步地,将文本嵌入数据与语音嵌入数据合并还包括,将表达语音嵌入数据的数组与每一个时间戳的表达文本嵌入数据的数组进行合并。
在一些实施方式中,语料数据用于训练上述神经网络模型,语料数据包括多个发音人的多种语言的语音数据和语音数据对应的文本数据。在训练语音克隆模型之前,需要对语料数据进行预处理。
对于多种语言的文本数据,同样以中英文混合语料数据为例,对于中文,由于中文字符数量较多,直接利用中文字符会使字符空间太大,所以可以将中文字符转换成拼音,这样字符空间就只有26个英文字母和表示音调的4个数字。对于英文,可以将26个英文字母转换成26个非英文的统一码(Unicode)特殊字母,以免和中文拼音产生冲突。并且通过将中英文以不同方式进行表示,可以使得上述编码器210方便地区分已预处理的文本数据的中英文字符。
对于语音数据,音频文件转换为wav格式的文件,语音数据中前后的多余的沉默音被去除,然后把wav文件通过短时傅里叶变换转换成梅尔频谱。梅尔频谱通常以npy格式存储。转换成梅尔频谱的语音数据,一方面将输入到发音人嵌入模块220以生成语言嵌入数据,另一方面将作为训练神经网络模型的参考标准(ground truth)。
训练采用将随机多组样例合到一起进行批训练的方式来实施。当语音克隆模型的损失函数达到预定值以下时,模型基本可用。作为一个示例,在实际训练中,当损失函数达到0.5以下时,得到本申请实施方式的基本可用的语音克隆模型。可选地或替代地,当损失函数在0.3~0.4之间的情况下,能够从语音克隆模型获得理想自然度和相似度的克隆语音输出。
在本申请的实施例中,对于训练后的语音克隆模型,只需一个该模型即可支持多发音人的声音生成,并且还可支持多语言的声音生成。该语音克隆模型无需额外的适应训练,拿到目标发音人的声音,获得发音人的语音嵌入数据后即可克隆其语音。
图5示出根据本申请的语音克隆模型的使用方法的一个实施例。在一些实施方式中,方法500例如在电子设备上实施,例如,如图1所示的计算设备100上实施。
对于上述实施方式中未描述的内容,可以参见下述方法实施方式;同样地,对于下述方法实施方式中未描述的内容,可参见上述实施方式。
如图5所示的语音克隆方法500用于克隆目标发音人的声音,其中,在块501、对目标发音人的语音数据和相应的文本数据进行处理,生成处理后的语音数据和文本数据;
块502、将处理后的语音数据和文本数据输入已训练的语音克隆模型;以及
块503、通过语音克隆模型,获取目标发音人的克隆语音。
其中,语音克隆模型包括上述实施方式中描述的应用于语音克隆的神经网络模型。
根据本申请的一个或多个实施例,还公开了一种计算机可读介质,机器可读介质上存储有指令,该指令在机器上执行时使机器执行上述任一个语音克隆模型的训练方法。
根据本申请的一个或多个实施例,还公开了一种***,包括:
存储器,用于存储由***的一个或多个处理器执行的指令,以及
处理器,用于执行所述存储器中的所述指令,以执行上述任一项的语音克隆模型的训练方法。本申请的各方法实施方式均可以以软件、磁件、固件等方式实现。
可将程序代码应用于输入指令,以执行本文描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理***包括具有诸如例如数字信号处理器(DSP)、微控制器、专用集成电路(ASIC)或微处理器之类的处理器的任何***。
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理***通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本文中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
至少一个实施例的一个或多个方面可以由存储在机器可读介质上的表示性指令来实现,指令表示处理器中的各种逻辑,指令在被机器读取时使得该机器制作用于执行本文所述的技术的逻辑。被称为“IP核”的这些表示可以被存储在有形的机器可读介质上,并被提供给多个客户或生产设施以加载到实际制造该逻辑或处理器的制造机器中。
这样的机器可读存储介质可以包括但不限于通过机器或设备制造或形成的物品的非瞬态的有形安排,其包括存储介质,诸如:硬盘任何其它类型的盘,包括软盘、光盘、紧致盘只读存储器(CD-ROM)、紧致盘可重写(CD-RW)以及磁光盘;半导体器件,例如只读存储器(ROM)、诸如动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM)之类的随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、闪存、电可擦除可编程只读存储器(EEPROM);相变存储器(PCM);磁卡或光卡;或适于存储电子指令的任何其它类型的介质。
因此,本申请的各实施例还包括非瞬态的有形计算机可读介质,该介质包含指令或包含设计数据,诸如硬件描述语言(HDL),它定义本文中描述的结构、电路、装置、处理器和/或***特征。这些实施例也被称为程序产品。
在一些情况下,指令转换器可用来将指令从源指令集转换至目标指令集。例如,指令转换器可以变换(例如使用静态二进制变换、包括动态编译的动态二进制变换)、变形、仿真或以其它方式将指令转换成将由核来处理的一个或多个其它指令。指令转换器可以用软件、硬件、固件、或其组合实现。指令转换器可以在处理器上、在处理器外、或者部分在处理器上且部分在处理器外。
Claims (8)
1.一种语音克隆模型的训练方法,其特征在于,包括:
将经过预处理的语料数据输入应用于语音克隆的神经网络模型,其中,所述语料数据用于训练所述神经网络模型,所述语料数据包括多个发音人的多种语言的语音数据和所述语音数据对应的文本数据;
利用所述神经网络模型的发音人嵌入模块和编码器模块分别对每个所述发音人的所述语音数据和相应的所述文本数据进行处理,生成所述发音人的语音嵌入数据和相应的所述文本数据的文本嵌入数据;
将所述文本嵌入数据与所述语音嵌入数据合并,作为所述神经网络模型的注意力机制模块的输入参数,并且将所述语音数据作为参考标准,训练所述神经网络模型;
在所述神经网络模型的损失函数满足预定值的情况下,得到应用于所述语音克隆的所述神经网络模型;
对相应的所述文本数据进行处理还包括,根据所述文本数据中各个字符的语种,相应地扩展用于表达所述字符的数组;
根据所述文本数据中各个字符的语种相应地扩展用于表达所述字符的数组还包括:
区分所述文本数据中各个字符的所述语种;
对于中文字符,在表达所述中文字符的数组后部合并与表达所述中文字符的数组的维数相同的零值数组,以及
对于英文字符,在表达所述英文字符的数组前部合并与表达所述英文字符的数组的维数相同的零值数组。
2.根据权利要求1所述的语音克隆模型的训练方法,其特征在于,生成所述发音人的语音嵌入数据还包括:
通过所述发音人嵌入模块,对所述发音人的语音数据中的每一条语音数据计算所述发音人的声纹信息;
计算全部的所述声纹信息的均值,生成所述发音人的所述语音嵌入数据。
3.根据权利要求1所述的语音克隆模型的训练方法,其特征在于,将所述文本嵌入数据与所述语音嵌入数据合并还包括,将表达所述语音嵌入数据的数组与每一个时间戳的表达所述文本嵌入数据的数组进行合并。
4.根据权利要求1所述的语音克隆模型的训练方法,其特征在于,所述方法还包括对所述语料数据进行预处理,所述预处理包括:
将所述文本数据中的中文字符转换为拼音,其中拼音的四种音调通过数字表示;以及
将所述文本数据中的英文字符转换为统一码的非英文字母。
5.根据权利要求1所述的语音克隆模型的训练方法,其特征在于,所述方法还包括对所述语料数据进行预处理,所述预处理包括,在去除所述语音数据中的沉默音之后,将所述语音数据转换为梅尔频谱。
6.一种语音克隆方法,用于克隆目标发音人的声音,其特征在于,包括:
对所述目标发音人的语音数据和相应的文本数据进行处理,生成处理后的所述语音数据和文本数据;
将处理后的所述语音数据和文本数据输入已训练的语音克隆模型;以及
通过所述语音克隆模型,获取所述目标发音人的克隆语音;
其中,所述语音克隆模型采用如权利要求1至5中任一项所述的训练方法生成。
7.一种计算机可读介质,其特征在于,所述计算机可读存储介质上存储有指令,该指令在计算机上执行时使所述计算机执行根据权利要求1-5中任一项所述的语音克隆模型的训练方法。
8.一种***,其特征在于,包括:
存储器,用于存储由***的一个或多个处理器执行的指令,以及
处理器,用于执行所述存储器中的所述指令,以执行权利要求1至5中任一项所述的语音克隆模型的训练方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SG10201912562S | 2019-12-18 | ||
SG10201912562SA SG10201912562SA (en) | 2019-12-18 | 2019-12-18 | A training method, a readable storage medium and a voice cloning method for a voice cloning model |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111696521A CN111696521A (zh) | 2020-09-22 |
CN111696521B true CN111696521B (zh) | 2023-08-08 |
Family
ID=72478905
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010476440.XA Active CN111696521B (zh) | 2019-12-18 | 2020-05-29 | 语音克隆模型的训练方法、可读存储介质和语音克隆方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111696521B (zh) |
SG (1) | SG10201912562SA (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112233646B (zh) * | 2020-10-20 | 2024-05-31 | 携程计算机技术(上海)有限公司 | 基于神经网络的语音克隆方法、***、设备及存储介质 |
CN112185340B (zh) * | 2020-10-30 | 2024-03-15 | 网易(杭州)网络有限公司 | 语音合成方法、语音合成装置、存储介质与电子设备 |
CN112652291B (zh) * | 2020-12-15 | 2024-04-05 | 携程旅游网络技术(上海)有限公司 | 基于神经网络的语音合成方法、***、设备及存储介质 |
CN112992117B (zh) * | 2021-02-26 | 2023-05-26 | 平安科技(深圳)有限公司 | 多语言语音模型生成方法、装置、计算机设备及存储介质 |
CN113488057B (zh) * | 2021-08-18 | 2023-11-14 | 山东新一代信息产业技术研究院有限公司 | 面向康养的对话实现方法及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110136687A (zh) * | 2019-05-20 | 2019-08-16 | 深圳市数字星河科技有限公司 | 一种基于语音训练克隆口音及声韵方法 |
CN110136693A (zh) * | 2018-02-09 | 2019-08-16 | 百度(美国)有限责任公司 | 用于使用少量样本进行神经话音克隆的***和方法 |
CN110288973A (zh) * | 2019-05-20 | 2019-09-27 | 平安科技(深圳)有限公司 | 语音合成方法、装置、设备及计算机可读存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108630190B (zh) * | 2018-05-18 | 2019-12-10 | 百度在线网络技术(北京)有限公司 | 用于生成语音合成模型的方法和装置 |
-
2019
- 2019-12-18 SG SG10201912562SA patent/SG10201912562SA/en unknown
-
2020
- 2020-05-29 CN CN202010476440.XA patent/CN111696521B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110136693A (zh) * | 2018-02-09 | 2019-08-16 | 百度(美国)有限责任公司 | 用于使用少量样本进行神经话音克隆的***和方法 |
CN110136687A (zh) * | 2019-05-20 | 2019-08-16 | 深圳市数字星河科技有限公司 | 一种基于语音训练克隆口音及声韵方法 |
CN110288973A (zh) * | 2019-05-20 | 2019-09-27 | 平安科技(深圳)有限公司 | 语音合成方法、装置、设备及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
Yusuke Yasuda et al..Investigation of Enhanced Tacotron Text-to-speech Synthesis Systems with Self-attention for Pitch Accent Language.ICASSP 2019 - 2019 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP).2019,全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111696521A (zh) | 2020-09-22 |
SG10201912562SA (en) | 2021-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111696521B (zh) | 语音克隆模型的训练方法、可读存储介质和语音克隆方法 | |
JP7280386B2 (ja) | 多言語音声合成およびクロスランゲージボイスクローニング | |
Zhang et al. | Learning to speak fluently in a foreign language: Multilingual speech synthesis and cross-language voice cloning | |
CN112771607B (zh) | 电子设备及其控制方法 | |
CN105845125B (zh) | 语音合成方法和语音合成装置 | |
CN111276120B (zh) | 语音合成方法、装置和计算机可读存储介质 | |
CN109686361B (zh) | 一种语音合成的方法、装置、计算设备及计算机存储介质 | |
US11289083B2 (en) | Electronic apparatus and method for controlling thereof | |
CN108231062B (zh) | 一种语音翻译方法及装置 | |
CN110264992A (zh) | 语音合成处理方法、装置、设备和存储介质 | |
Prakash et al. | Building multilingual end-to-end speech synthesisers for indian languages | |
US20230099732A1 (en) | Computing system for domain expressive text to speech | |
US20220375456A1 (en) | Method for animation synthesis, electronic device and storage medium | |
CN111627420A (zh) | 极低资源下的特定发音人情感语音合成方法及装置 | |
Oo et al. | Burmese speech corpus, finite-state text normalization and pronunciation grammars with an application to text-to-speech | |
Cai et al. | Cross-lingual multi-speaker speech synthesis with limited bilingual training data | |
CN113450758B (zh) | 语音合成方法、装置、设备及介质 | |
KR20210045217A (ko) | 감정 이식 장치 및 감정 이식 방법 | |
KR101929509B1 (ko) | 형태소 합성 장치 및 방법 | |
CN112580669B (zh) | 一种对语音信息的训练方法及装置 | |
Hirose et al. | Temporal rate change of dialogue speech in prosodic units as compared to read speech | |
US20230215417A1 (en) | Using token level context to generate ssml tags | |
CN113555003B (zh) | 语音合成方法、装置、电子设备及存储介质 | |
Park et al. | Jejueo datasets for machine translation and speech synthesis | |
CN114783409A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |