CN113066475A - 一种基于生成式对抗网络的语音合成方法 - Google Patents
一种基于生成式对抗网络的语音合成方法 Download PDFInfo
- Publication number
- CN113066475A CN113066475A CN202110616806.3A CN202110616806A CN113066475A CN 113066475 A CN113066475 A CN 113066475A CN 202110616806 A CN202110616806 A CN 202110616806A CN 113066475 A CN113066475 A CN 113066475A
- Authority
- CN
- China
- Prior art keywords
- discriminator
- generator
- loss function
- output
- dimensional
- 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.)
- Granted
Links
- 238000001308 synthesis method Methods 0.000 title claims description 14
- 238000001228 spectrum Methods 0.000 claims abstract description 44
- 238000011176 pooling Methods 0.000 claims abstract description 25
- 238000012549 training Methods 0.000 claims abstract description 20
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 14
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 14
- 238000004364 calculation method Methods 0.000 claims description 39
- 238000005070 sampling Methods 0.000 claims description 22
- 239000011159 matrix material Substances 0.000 claims description 12
- 230000003595 spectral effect Effects 0.000 claims description 12
- 230000009466 transformation Effects 0.000 claims description 7
- 238000000605 extraction Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000010339 dilation Effects 0.000 claims description 3
- 230000004927 fusion Effects 0.000 claims description 3
- 238000006467 substitution reaction Methods 0.000 claims 1
- 230000006870 function Effects 0.000 description 68
- 238000000034 method Methods 0.000 description 9
- 238000013135 deep learning Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000003042 antagnostic effect Effects 0.000 description 1
- 230000004087 circulation Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000012795 verification Methods 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
-
- 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/08—Learning methods
-
- 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/24—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 the cepstrum
-
- 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)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Acoustics & Sound (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Electrically Operated Instructional Devices (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
一种基于生成式对抗网络的语音合成方法,包括以下步骤:S1.准备训练样本,包括真实音频数据,提取梅尔频谱特征;S2.设置初始化的生成器参数组和鉴别器参数组;S3.输入梅尔频谱特征到生成器得到输出合成音频;S4.将S1中的真实音频数据和S3得到的输出合成音频对应同时输入到多维鉴别器和池化鉴别器;S4.将鉴别器的输出结果输入到损失函数公式,分别计算生成器损失函数和鉴别器损失函数;S5.进行生成器和鉴别器的更新;S6.利用更新后的生成器和鉴别器重复直到到达设定的更新次数最大值M;S7.每更新一次后,返回步骤S3;S8.利用生成器进行语音合成。本发明生成器所采用的均为一维卷积运算,模型参数小,速度快。
Description
技术领域
本发明属于人工智能语音合成技术领域,具体涉及一种基于生成式对抗网络的语音合成方法。
背景技术
语音作为最直接快速的沟通方式,在人工智能领域起着非常重要的作用,已广泛应用于机器人,汽车,合成主播等领域。随着人工智能产品的广泛应用,对语音合成的自然度、清晰度、可理解性等要求也越来越高。深度学习让语音合成技术快速发展。
现在常用的基于深度学习的语音合成方案主要分为两个阶段:根据文本信息预测其声学特征,如mel-spectrograms;由声学特征预测其原始音频波形,即声码器模型学习。第一阶段是低维特征间的运算,而第二阶段声学特征到原始音频,通常需要从低纬度映射到高维度,如采样率16000,48000等。WaveNet是一种自回归卷积神经网络,作为最早一批被用于语音合成的深度学习算法,大大提升了语音合成质量,但是其模型结构决定了速度非常慢,很难应用到实际产品中。近几年,对语音合成声码器的研究也主要侧重于提升运算速度和降低模型参数,对合成速度并无大的提升。
发明内容
为克服现有技术存在的技术缺陷,本发明公开了一种基于生成式对抗网络的语音合成方法。
本发明所述基于生成式对抗网络的语音合成方法,包括以下步骤:
S1.准备训练样本,包括真实音频数据,提取真实音频数据的梅尔频谱特征;
S2.根据梅尔频谱特征的提取方式和采样率,设置初始化的生成器参数组,包括设置一维反卷积参数和一维卷积参数; 设置初始化的鉴别器参数组,包括多维鉴别器和池化鉴别器的参数;
S3.输入梅尔频谱特征到生成器,由生成器得到对应的输出合成音频;
S4.将S1中的真实音频数据和S3得到的输出合成音频对应同时输入到多维鉴别器和池化鉴别器;其中真实音频数据和输出合成音频均为一维音频数据;
多维鉴别器将一维音频数据转换为多维矩阵,并对多维矩阵进行二维卷积运算得到输出结果;
池化鉴别器将一维音频数据做池化缩小维度,然后进行一维卷积运算得到输出结果;
S5.将鉴别器的输出结果输入到损失函数公式,分别计算生成器损失函数和鉴别器损失函数;
上式中,Loss_D(D;G)表示生成器模型参数固定时的鉴别器损失函数;Loss_G(G;D)表示鉴别器参数固定时的生成器损失函数;
D(xm)表示真实音频数据x经过第m次变形后输入鉴别器得到的输出结果,s表示真实音频的梅尔频谱值, E(x,s)表示以x,s为变量进行均值计算;
Gm(S)表示生成器输出的输出合成音频第m次变换后的m次第一中间值;D(Gm(S))表示将该m次第一中间值输入鉴别器得到的m次第二中间值;
M为设定的音频数据总的变形次数,完成M次变形后,得到本次更新的损失函数;
(1)式表示每一次更新中,计算损失函数需要对输出合成音频进行M次变形,最终得到本次更新的损失函数。
S6.以(1)式得到的生成器损失函数和鉴别器损失函数进行生成器和鉴别器的更新;
S7.每更新一次后,返回步骤S3.并利用更新后的生成器和鉴别器重复S3-S7步骤;直到到达设定的更新次数最大值steps_max;
S8.利用生成器进行语音合成。
具体的,所述一维反卷积参数包括:
生成器的上采样因子[u1, u2... un], 上采样因子需要满足条件u1*u2*... *un=hop_size;hop_size为计算梅尔频谱时的滑动步长;
卷积步长stride=[u1, u2... un]
输出特征维数
Lout =(Lin-1)*stride-2*padding+dilation*(kernel_size-1)+output_padding+1
----(2)
其中,padding为输入特征边缘扩充值,dilation为卷积核元素间距,kernel_size为卷积核大小,output_padding为输出特征边缘扩充值;
根据卷积步长stride,设计其他参数为:
Cout(i)= Cin (i)/2i;
ku(i)=2* ui;
padding (i)= ui//2+ ui%2;
output_padding (i)= ui%2; ----(3)
i=1,2,…n;ui为卷积步长stride的单个向量元素u1, u2... un;
其中Cout(i)为第i次上采样的输出通道数,Cin (i)为第i次上采样的输入通道数,ku(i)为第i次上采样的卷积核大小kernel_size;padding (i)为第i次上采样的输入特征边缘扩充值, output_padding (i)为第i次上采样的输出特征边缘扩充值;
所述一维卷积参数包括多尺度感受野融合模块内每个一维卷积参数。
优选的,所述步骤S6中利用(4)式得到的生成器全面损失函数LD和鉴别器全面损失函数LG替换(1)式得到的生成器损失函数和鉴别器损失函数;进行生成器和鉴别器的更新;
上式中,Di表示第i个鉴别器,P表示鉴别器个数;LF(G;D) 为特征损失函数,Lmel(G)为梅尔频谱损失函数;λf,λmel分别为特征损失函数和梅尔频谱损失函数的经验权重值;(4)式中的Loss_D(Di;G) Loss_G(G,Di)由(1)式计算得到。
具体的,所述梅尔频谱损失函数的计算公式如下:
具体的,所述特征损失函数的计算公式如下:
上式中,T表示鉴别器的层数,Ni表示第i层的特征数,Di(x)表示输入为x时第i层的特征值,x为真实音频数据,G(S)为由生成器合成的输出合成音频,上标m均表示当前的变换次数,M为设定的更新次数最大值;E表示均值计算;E(x,s)表示以x,s为变量进行均值计算。
本发明所述基于生成式对抗网络的语音合成方法,生成器所采用的均为一维卷积运算,模型参数小,速度快。本发明采用两个鉴别器及损失函数中加入梅尔损失函数和特征损失函数,能够有效帮助模型收敛,保证合成音频的清晰度、自然度和可理解性。
附图说明
图1为本发明所述语音合成方法的一个具体实施方式的流程示意图。
具体实施方式
下面对本发明的具体实施方式作进一步的详细说明。
本发明所述基于生成式对抗网络的语音合成方法,包括以下步骤:
S1.准备训练样本,包括真实音频数据,提取真实音频数据的梅尔频谱特征;
S2.根据梅尔频谱特征的提取方式和采样率,设置初始化的生成器参数组,包括设置一维反卷积参数和一维卷积参数; 设置初始化的鉴别器参数组,包括多维鉴别器和池化鉴别器的参数;
S3.输入梅尔频谱特征到生成器,由生成器得到对应的输出合成音频;
S4.将S1中的真实音频数据和S3得到的输出合成音频对应同时输入到多维鉴别器和池化鉴别器;其中真实音频数据和输出合成音频均为一维音频数据;
多维鉴别器将一维音频数据转换为多维矩阵,并对多维矩阵进行二维卷积运算得到输出结果;
池化鉴别器将一维音频数据做池化缩小维度,然后进行一维卷积运算得到输出结果;
S5.将鉴别器的输出结果输入到损失函数公式,分别计算生成器损失函数和鉴别器损失函数;
上式中,Loss_D(D;G)表示生成器模型参数固定时的鉴别器损失函数;Loss_G(G;D)表示鉴别器参数固定时的生成器损失函数;
D(xm)表示真实音频数据x经过第m次变形后输入鉴别器得到的输出结果,s表示真实音频的梅尔频谱值, E(x,s)表示以x,s为变量进行均值计算;
Gm(S)表示生成器输出的输出合成音频第m次变换后的m次第一中间值;D(Gm(S))表示将该m次第一中间值输入鉴别器得到的m次第二中间值;
M为设定的音频数据总的变形次数,完成M次变形后,得到本次更新的损失函数;
(3)式表示每一次更新中,计算损失函数需要对输出合成音频进行M次变形,最终得到本次更新的损失函数。
S6.以(1)式得到的生成器损失函数和鉴别器损失函数进行生成器和鉴别器的更新;
S7.每更新一次后,返回步骤S3.并利用更新后的生成器和鉴别器重复S3-S7步骤;直到到达设定的更新次数最大值steps_max;
S8.利用生成器进行语音合成。
本发明提出的基于生成式对抗网络的语音合成方法,主要用于声码器训练;所基于的生成式对抗网络(GAN)包含一个生成器和两个鉴别器,生成器G采用卷积神经网络对梅尔频谱(mel-spectrogram)特征进行上采样,直到上采样维度达到音频时域内的维数。
准备的训练样本用于进行生成式对抗网络的训练,通常需要合成什么样的音色音频,就准备什么样的训练样本,例如希望合成女童声,则准备女童声样本。
对训练样本按照现有技术提取梅尔频谱特征。
根据梅尔特征的提取方式和采样率等信息,确定生成器的上采样因子[u1, u2...un],其中需要满足条件u1*u2*... *un=hop_size。当梅尔频谱特征数为N时,通过生成器生成的音频信号为维数是N*hop_size的一维向量;hop_size为计算梅尔频谱时的滑动步长。
上采样的实现可采用一维反卷积的方式,这里采用torch深度学习框架中的一维反卷积函数进行说明:
输入(BS,Cin,Lin), 输出(BS,Cout,Lout)
其中BS是单次计算所选取的样本数,即深度学习中的批大小batch_size, Cin为输入特征通道数, Lin为输入特征维数、Cout为输出特征通道数、Lout为输出特征维数;
则:
Lout =(Lin-1)*stride-2*padding+dilation*(kernel_size-1)+output_padding+1
----(2)
其中卷积步长stride=[u1, u2... un],padding为输入特征边缘扩充值,dilation为卷积核元素间距,kernel_size为卷积核大小,output_padding为输出特征边缘扩充。
根据卷积步长stride参数,设计其他参数为:
Cout(i)= Cin (i)/2i;
ku(i)=2* ui;
padding (i)= ui//2+ ui%2;
output_padding (i)= ui%2; ---(3)
//符号表示整除,%表示除运算的余数;
i=1,2,…n;ui为卷积步长stride的单个向量元素u1, u2... un;按照公式(2)设置相应的参数,这样得到Lout才是Lin的整数倍,整数倍目的是保证最后得到的音频数据是梅尔频谱的整数倍,这样合成的音频采样数才准确。
其中out_channels(i)为第i次上采样的输出通道数,Cin (i) 为第i次上采样输入特征通道数,ku(i)为第i次上采样的卷积核大小kernel_size;padding (i)为第i次上采样的输入特征边缘扩充值,output_padding (i)为第i次上采样的输出特征边缘扩充值
例如输入(BS,Cin,Lin)=(32,512,340),u1=8,由公式(2)得到各个参数值,经过一维反卷积(ConvTransepose1d)(512,256,16,8,4,0)后输出的维度(BS,Cout,Lout)为(32,256,2720)。
在每个上采样层后,连接一个多尺度感受野融合模块(Multi-Receptive FieldFusion , 以下简称 MRF模块;
一个MRF模块包含∣Kr∣个resblock层,每个resblock层的卷积核大小kernel_size=Kr(i),i=1,2...,∣Kr∣;
每一个resblock层包含∣D(i)∣个一维卷积的组合,每个一维卷积的参数为:
卷积核大小kernel_size=Kr(i),i=1,2...,∣Kr∣,
卷积核元素间距dilation=D(i,j),i=1,2...,∣D(i)∣。
生成器通过输入梅尔特征,输出音频,生成器参数组包括上述一维反卷积和一维卷积层参数。
生成器进行一维反卷积和卷积运算;先对梅尔频谱进行一维卷积运算,然后进行多个循环的上采样卷积和MRF模块运算,再经过一维卷积运算得到对应的输出合成音频。
本发明中采用两个鉴别器;将真实音频和由生成器合成的音频数据分别送入到两个鉴别器中得到音频特征,将该特征送入公式(1)或(4)的损失函数进行计算,然后通过更新生成器和鉴别器参数,使得公式(1)或(4)所示的损失函数越小越好。
两个鉴别器分别为多维鉴别器D1和池化鉴别器D2。
由于语音是由不同周期的正弦信号组成,所以需要识别音频数据中所隐含的各种周期模式,多维鉴别器D1将一维数据变形到多维,通过设计二维卷积核的大小,可以模拟出不同周期上的音频特征。音频信号一个音素的时长有长有短,如果一个音素的梅尔频谱有10帧,那么其对应的16000采样率的音频信号就有2000的点,池化鉴别器D2通过对音频数据进行不同尺度的池化,就可以有效捕获音频数据的细节和全局特征。
具体实现方式为:多维鉴别器D1将音频数据转换为多维矩阵,然后对该多维矩阵做二维卷积运算。
本发明设置将一维音频数据转换为N1个多维矩阵,每个多维矩阵的维度设置为mi,i=1,2...N1。N1的具体取值可根据经验值决定,例如为了防止变形后的数据每一行的数据有重叠,所以按照经验mi可取[2,3,5,7,11]。
如音频数据为 [1,6400]的一维形式,则将音频数据变形为[2,3200],[3,2134],[5,1280]等N1个多维矩阵,转换原则为每一行均按照mi个间隔点依次取;然后依次对变换后的多维矩阵做二维卷积运算,其中二维卷积核列上的卷积核大小需设置为1。
然后依次对各个多维矩阵进行二维卷积运算得到N1个输出结果D1(x1i) ,i=1,2...N1。分别对真实音频数据和由生成器G生成的音频数据做上述计算;得到2组,每组都有N1个输出结果。
池化鉴别器D2则将一维音频数据做池化(pool)缩小其维度,然后进行一维卷积运算。本发明中对输入鉴别器D2的音频数据做多尺度池化,如一维音频数据数据x维数为[1,W],则池化后数据x2i为
x2i =[1,|W//2i-1|],i=1,2...N2,
对x2i进行一维卷积计算得到N2个输出结果D2(x2i),i=1,2...N2。
分别对真实音频数据和由生成器G生成的音频数据做上述计算。得到2组,每组都有N2个输出结果。N2的取值需要保证音频数据在进行N2次池化后,送入D2鉴别进行计算后得到的特征维度大于0。
例如原始音频数据大小[1,6400],则对音频数据进行池化后,得到大小[1,3200],[1,1600]等N2个池化结果,分别对这原始音频数据和N2个一维矩阵进行一维卷积运算。
两个鉴别器得到的结果代入公式(1)或(4)计算损失函数。
损失函数用于对鉴别器和生成器模型参数进行修正,本发明中的损失函数(loss)包括生成器损失函数和鉴别器损失函数。
生成式对抗网络模型的训练步骤为先固定生成器模型参数,训练鉴别器参数;然后固定鉴别器参数再训练生成器模型参数;需要设计两个损失函数优化模型参数。其公式为:
上式中,Loss_D(D;G)表示生成器G模型参数固定时,鉴别器D的损失函数,D(xm)表示真实音频数据x第m次变形后作为输入时鉴别器的输出,s表示真实音频的梅尔频谱值。E(x,s)表示以x,s为变量进行均值计算;Es表示以s为变量进行均值计算。
Loss_G(G;D)表示鉴别器D参数固定时,生成器G的损失函数,由梅尔提取方法生成音频数据的特征,然后送到鉴别器进行计算,公式中E表示均值计算;
Gm(S)表示生成器输出的输出合成音频第m次变换后的m次第一中间值;D(Gm(S))表示将该m次第一中间值输入鉴别器得到的m次第二中间值;
M为设定的音频数据总的变形次数,完成M次变形后,得到本次更新的损失函数;
(1)式表示每一次更新中,计算损失函数需要对输出合成音频进行M次变形,最终得到本次更新的损失函数。
更新鉴别器参数使Loss_D(D;G)变小,即在更新鉴别器参数使真实音频通过鉴别器得到的特征值趋近于1,生成器生成的音频数据通过鉴别器得到的特征趋近于0。而更新生成器参数使Loss_G(G;D)变小,使生成器生成的音频数据通过鉴别器得到的特征趋近于1。由此形成生成器和鉴别器的对抗式训练。
采用(1)式计算得到的损失函数对生成器和鉴别器进行更新,更新一次后,回到步骤S3重新开始下一次更新。
一个优选实施方式中,本发明添加梅尔频谱损失函数(mel-spectrogram loss),用于提高生成器的训练效率和音频的保真度。
梅尔频谱损失函数为真实音频的梅尔频谱和由生成器G生成的输出合成音频计算得到的梅尔频谱间的L1距离的均值,L1定义为梅尔频谱间差的绝对值总和,梅尔频谱损失函数Lmel(G)的计算公式如下:
(5)式E右边计算符号表示两项相减的绝对值总和,Ex,s表示对x和s做均值计算。
采用梅尔频谱损失函数有助于生成器G生成与输入条件相对应的真实音频波形,并从初始阶段就稳定对抗训练过程。
一个优选实施方式中,本发明还添加特征损失函数(feature loss)用于训练生成器G,真实音频数据和生成器G生成的输出合成音频依次送入鉴别器D,分别记录中间层的特征输出,然后对对应的特征数据计算L1距离,然后计算均值。特征损失函数LF(G;D)的计算公式如下:
上式中,T表示鉴别器的层数,Ni表示第i层的特征数,Di(x)表示输入为x时第i层的特征值,x为真实音频数据,G(S)为由生成器合成的输出合成音频。
考虑上述梅尔频谱损失函数和特征损失函数后,最终,利用生成器全面损失函数LD和鉴别器全面损失函数LG进行生成器和鉴别器的更新,对(1)式进行替换。
生成器全面损失函数LD和鉴别器全面损失函数LG:
本发明采用两个鉴别器,上式中,Di表示第i个鉴别器,P表示鉴别器个数,本发明中P=2。
上式中,Di下标表示不同的鉴别器;
λf,λmel分别为特征损失函数和梅尔频谱损失函数的经验权重值,用于调节(4)式中各项的权重比值,例如可以取λf和λmel分别为2和45。
采用(4)式计算得到的损失函数对生成器和鉴别器进行更新,更新一次后,回到步骤S3重新开始下一次更新。
具体实施方式例:
准备训练样本,包括原始音频数据,提取其梅尔频谱特征,这里取梅尔频谱特征的维数为80。
输入梅尔频谱特征到生成器,由生成器得到对应的输出音频数据。
假如输入梅尔频谱特征的帧数为32,提取梅尔频谱特征时的步长为200,则通过生成器生成的输出音频数据音频长度为32*200=6400。
设置生成器的上采样步数、上采样初始通道数、上采样卷积步长;其余参数初始化值可以为零或采用其他方法如正态分布法等设定。
具体计算步骤为:设置上采样步数为3,上采样的卷积步长stride设置为[8,5,5],这里需要满足的条件是8*5*5=200=hop_size,hop_size为提取梅尔频谱特征时的步长。设置上采样的初始通道数为512,首先对梅尔频谱特征做一维卷积,使其扩展到512维,初始数据量由[80,32]经过一维卷积到[512,32],然后开始进行一维反卷积计算。
按照公式(3)设置第一次反卷积计算参数为out_channels=256,卷积核大小kernel_size=16,stride=8,out_padding=0,反卷积计算后的值维度为[256,256]。然后连接MRF模块,本实施例中设置MRF模块的参数(1)
∣Kr∣=3,[Kr(1),Kr(2),Kr(3)]=[3,7,11],
代表一个MRF模块包括3个resblock层,设置resblock层的参数为
∣D(1)∣=3, dilation=[ D(1,1), D(1,2), D(1,3)],其余resblock层D(2)、D(3)参数同D(1)。
经过MRF模块计算后的特征维数仍然为[256,256],然后依次修改上采样的out_channels及其它参数,计算上采样和MRF模块,两轮迭代计算后模型输出维数为[64,6400],然后接一个一维卷积层Conv1d层,输出维数[1,6400],即完成梅尔频谱特征到音频数据的转换。
然后进行鉴别器特征计算,其实施方式为:
多维鉴别器D1的计算,取大小为64000的音频数据,设置mi=[2,3,5,7,11],即将音频数据变形为,例如m1=2时,[1,6400]的音频数据变形为[1,3200,2],然后进行一系列二维卷积运算。
本实施例中多维鉴别器1采用六层二维卷积,输出通道分别为[32,128,512,1024,1204,1],每一层的卷积核大小kernel_size=[3,1],卷积步长stride=[3,1],waveform经上述一系列二维卷积计算后的维数为[1,40,2]。其余通过mi变形后的数据进行同样的二维卷积计算。分别对真实音频和生成器生成的输出合成音频做如上计算,得到的输出特征即可用于计算鉴别器的损失函数。
池化鉴别器D2的计算:取大小为[1,6400]的音频数据,本实施例中鉴别器2设置8层一维卷积;输出通道、卷积核大小、卷积步长和输入特征边缘扩充值分别为:
out_channels=[128,128,256,512,1024,1024,1024,1] kernel_size=[15,41,41,41,41,41,5,3],
stride=[1,2,2,4,4,1,1,1],
padding=(kernel_size-1)/2。
输入数据进行8层一维卷积后维数大小为[1,100],即为鉴别器D2的输出。
将[1,6400]的音频进行池化计算,实施例中采用均值池化(averagepooling),池化层的卷积核大小kernel_size=4,卷积步长stride=2,池化后的数据维数为[1,3200],对该数据进行同样的8层一维卷运算,得到最后的输出特征维数为[1,51]。然后用同样的池化参数对[1,3200]的数据进行计算得到数据维数为[1,1600],进行8层一维卷积运算得到的特征维数为[1,26],鉴别器D2三次的特征输出用于损失函数的计算。
完成鉴别器特征计算后进行模型训练。
设置公式(4)中的λf=2, λmel=45,learning_rate=0.0001。
初始化生成器G的参数集θg,鉴别器D的参数集θd
其中参数集θg表示生成器G中全部参数,包括进行一维卷积,一维反卷积及MRF模块所用到的参数;参数集θd表示鉴别器D里所有的模型参数。
更新次数iteration=1,2..., steps_max, steps_max为设定的更新次数最大值,通常取值在10万次以上;对每一次迭代执行如下操作:
由通过训练样本的真实音频数据x得到的梅尔频谱的真实值s,通过生成器G得到输出合成音频G(s)
将真实的音频数据x和输出合成音频G(s)分别送入鉴别器D1,得到D1(x)、D1(G(s));送入鉴别器D2,得到D2(x)、、D2(G(s));
固定参数θg,根据(4)式计算LD并更新参数集θd,使LD变小;完成更新一次。
按照公式(5)计算真实音频数据提取的梅尔频谱特征和生成器生成的输出合成音频提取的梅尔频谱特征的L1距离Lmel(G) 作为梅尔频谱损失函数;
鉴别器模型的参数集θd完成更新后,再次将真实的音频数据x和输出合成音频G(s)分别送入鉴别器D1,D2,得到D1(x)、 D2(x)、 D1(G(s)) 、D2(G(s))和各中间层特征。
利用公式(4)计算损失函数LG,固定参数集θd,更新参数集θg使得LG变小。
参数集θd,更新参数集θg均完成一次更新后,即完成一次更新,直到完成所有更新。
训练完成后得到生成器G,利用生成器实现梅尔频谱到音频数据的转换。
前文所述的为本发明的各个优选实施例,各个优选实施例中的优选实施方式如果不是明显自相矛盾或以某一优选实施方式为前提,各个优选实施方式都可以任意叠加组合使用,所述实施例以及实施例中的具体参数仅是为了清楚表述发明人的发明验证过程,并非用以限制本发明的专利保护范围,本发明的专利保护范围仍然以其权利要求书为准,凡是运用本发明的说明书及附图内容所作的等同结构变化,同理均应包含在本发明的保护范围内。
Claims (5)
1.一种基于生成式对抗网络的语音合成方法,其特征在于,包括以下步骤:
S1.准备训练样本,包括真实音频数据,提取真实音频数据的梅尔频谱特征;
S2.根据梅尔频谱特征的提取方式和采样率,设置初始化的生成器参数组,包括设置一维反卷积参数和一维卷积参数;设置初始化的鉴别器参数组,包括多维鉴别器和池化鉴别器的参数;
S3.输入梅尔频谱特征到生成器,由生成器得到对应的输出合成音频;
S4.将S1中的真实音频数据和S3得到的输出合成音频对应同时输入到多维鉴别器和池化鉴别器;其中真实音频数据和输出合成音频均为一维音频数据;
多维鉴别器将一维音频数据转换为多维矩阵,并对多维矩阵进行二维卷积运算得到输出结果;
池化鉴别器将一维音频数据做池化缩小维度,然后进行一维卷积运算得到输出结果;
S5.将鉴别器的输出结果输入到损失函数公式,分别计算生成器损失函数和鉴别器损失函数;
上式中,Loss_D(D;G)表示生成器模型参数固定时的鉴别器损失函数;Loss_G(G;D)表示鉴别器参数固定时的生成器损失函数;
D(xm)表示真实音频数据x经过第m次变形后输入鉴别器得到的输出结果,s表示真实音频的梅尔频谱值, E(x,s)表示以x,s为变量进行均值计算;
Gm(S)表示生成器输出的输出合成音频第m次变换后的m次第一中间值;D(Gm(S))表示将该m次第一中间值输入鉴别器得到的m次第二中间值;
M为设定的音频数据总的变形次数,完成M次变形后,得到本次更新的损失函数;
(1)式表示每一次更新中,计算损失函数需要对输出合成音频进行M次变形,最终得到本次更新的损失函数;
S6.以(1)式得到的生成器损失函数和鉴别器损失函数进行生成器和鉴别器的更新;
S7.每更新一次后,返回步骤S3.并利用更新后的生成器和鉴别器重复S3-S7步骤;直到到达设定的更新次数最大值steps_max;
S8.利用生成器进行语音合成。
2.如权利要求1所述的语音合成方法,其特征在于,所述一维反卷积参数包括:
生成器的上采样因子[u1, u2... un], 上采样因子需要满足条件u1*u2*... *un=hop_size;hop_size为计算梅尔频谱时的滑动步长;
卷积步长stride=[u1, u2... un]
输出特征维数
Lout =(Lin-1)*stride-2*padding+dilation*(kernel_size-1)+output_padding+1
----(2)
其中,padding为输入特征边缘扩充值,dilation为卷积核元素间距,kernel_size为卷积核大小,output_padding为输出特征边缘扩充值;
根据卷积步长stride,设计其他参数为:
Cout(i)= Cin (i)/2i;
ku(i)=2* ui;
padding (i)= ui//2+ ui%2;
output_padding (i)= ui%2; ----(3)
//符号表示整除,%表示除运算的余数;
i=1,2,…n;ui为卷积步长stride的单个向量元素u1, u2... un;
其中Cout(i)为第i次上采样的输出通道数,Cin (i)为第i次上采样的输入通道数,ku(i)为第i次上采样的卷积核大小kernel_size;padding (i)为第i次上采样的输入特征边缘扩充值, output_padding (i)为第i次上采样的输出特征边缘扩充值;
所述一维卷积参数包括多尺度感受野融合模块内每个一维卷积参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110616806.3A CN113066475B (zh) | 2021-06-03 | 2021-06-03 | 一种基于生成式对抗网络的语音合成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110616806.3A CN113066475B (zh) | 2021-06-03 | 2021-06-03 | 一种基于生成式对抗网络的语音合成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113066475A true CN113066475A (zh) | 2021-07-02 |
CN113066475B CN113066475B (zh) | 2021-08-06 |
Family
ID=76568543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110616806.3A Active CN113066475B (zh) | 2021-06-03 | 2021-06-03 | 一种基于生成式对抗网络的语音合成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113066475B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113744715A (zh) * | 2021-09-27 | 2021-12-03 | 深圳市木愚科技有限公司 | 声码器语音合成方法、装置、计算机设备及存储介质 |
CN114999447A (zh) * | 2022-07-20 | 2022-09-02 | 南京硅基智能科技有限公司 | 一种基于对抗生成网络的语音合成模型及训练方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109326283A (zh) * | 2018-11-23 | 2019-02-12 | 南京邮电大学 | 非平行文本条件下基于文本编码器的多对多语音转换方法 |
US10510358B1 (en) * | 2017-09-29 | 2019-12-17 | Amazon Technologies, Inc. | Resolution enhancement of speech signals for speech synthesis |
CN110598851A (zh) * | 2019-08-29 | 2019-12-20 | 北京航空航天大学合肥创新研究院 | 一种融合lstm和gan的时间序列数据异常检测方法 |
CN110942774A (zh) * | 2019-12-12 | 2020-03-31 | 北京声智科技有限公司 | 一种人机交互系统、其对话方法、介质和设备 |
EP3640814A1 (en) * | 2018-10-17 | 2020-04-22 | Fujitsu Limited | User-friendly explanation production using generative adversarial networks |
CN111243569A (zh) * | 2020-02-24 | 2020-06-05 | 浙江工业大学 | 基于生成式对抗网络的情感语音自动生成方法及装置 |
CN111627418A (zh) * | 2020-05-27 | 2020-09-04 | 携程计算机技术(上海)有限公司 | 语音合成模型的训练方法、合成方法、系统、设备和介质 |
CN111816148A (zh) * | 2020-06-24 | 2020-10-23 | 厦门大学 | 一种基于生成对抗网络的虚拟人声视唱方法和系统 |
CN112259086A (zh) * | 2020-10-15 | 2021-01-22 | 杭州电子科技大学 | 一种基于语谱图合成的语音转换方法 |
CN112382268A (zh) * | 2020-11-13 | 2021-02-19 | 北京有竹居网络技术有限公司 | 用于生成音频的方法、装置、设备和介质 |
-
2021
- 2021-06-03 CN CN202110616806.3A patent/CN113066475B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10510358B1 (en) * | 2017-09-29 | 2019-12-17 | Amazon Technologies, Inc. | Resolution enhancement of speech signals for speech synthesis |
EP3640814A1 (en) * | 2018-10-17 | 2020-04-22 | Fujitsu Limited | User-friendly explanation production using generative adversarial networks |
CN109326283A (zh) * | 2018-11-23 | 2019-02-12 | 南京邮电大学 | 非平行文本条件下基于文本编码器的多对多语音转换方法 |
CN110598851A (zh) * | 2019-08-29 | 2019-12-20 | 北京航空航天大学合肥创新研究院 | 一种融合lstm和gan的时间序列数据异常检测方法 |
CN110942774A (zh) * | 2019-12-12 | 2020-03-31 | 北京声智科技有限公司 | 一种人机交互系统、其对话方法、介质和设备 |
CN111243569A (zh) * | 2020-02-24 | 2020-06-05 | 浙江工业大学 | 基于生成式对抗网络的情感语音自动生成方法及装置 |
CN111627418A (zh) * | 2020-05-27 | 2020-09-04 | 携程计算机技术(上海)有限公司 | 语音合成模型的训练方法、合成方法、系统、设备和介质 |
CN111816148A (zh) * | 2020-06-24 | 2020-10-23 | 厦门大学 | 一种基于生成对抗网络的虚拟人声视唱方法和系统 |
CN112259086A (zh) * | 2020-10-15 | 2021-01-22 | 杭州电子科技大学 | 一种基于语谱图合成的语音转换方法 |
CN112382268A (zh) * | 2020-11-13 | 2021-02-19 | 北京有竹居网络技术有限公司 | 用于生成音频的方法、装置、设备和介质 |
Non-Patent Citations (2)
Title |
---|
SOONBEOM CHOI等: ""Korean Singing Voice Synthesis Based on Auto-Regressive Boundary Equilibrium Gan"", 《 ICASSP 2020 - 2020 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING (ICASSP)》 * |
胡亚军: ""基于神经网络的统计参数语音合成方法研究"", 《中国博士学位论文全文数据库 信息科技辑》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113744715A (zh) * | 2021-09-27 | 2021-12-03 | 深圳市木愚科技有限公司 | 声码器语音合成方法、装置、计算机设备及存储介质 |
CN114999447A (zh) * | 2022-07-20 | 2022-09-02 | 南京硅基智能科技有限公司 | 一种基于对抗生成网络的语音合成模型及训练方法 |
CN114999447B (zh) * | 2022-07-20 | 2022-10-25 | 南京硅基智能科技有限公司 | 一种基于对抗生成网络的语音合成模型及语音合成方法 |
CN115424604A (zh) * | 2022-07-20 | 2022-12-02 | 南京硅基智能科技有限公司 | 一种基于对抗生成网络的语音合成模型的训练方法 |
US11817079B1 (en) | 2022-07-20 | 2023-11-14 | Nanjing Silicon Intelligence Technology Co., Ltd. | GAN-based speech synthesis model and training method |
CN115424604B (zh) * | 2022-07-20 | 2024-03-15 | 南京硅基智能科技有限公司 | 一种基于对抗生成网络的语音合成模型的训练方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113066475B (zh) | 2021-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Joint training framework for text-to-speech and voice conversion using multi-source tacotron and wavenet | |
CN112133282B (zh) | 轻量级多说话人语音合成系统及电子设备 | |
Zen et al. | Statistical parametric speech synthesis using deep neural networks | |
CN113066475B (zh) | 一种基于生成式对抗网络的语音合成方法 | |
CN112289342A (zh) | 使用神经网络生成音频 | |
CN110853670B (zh) | 音乐驱动的舞蹈生成方法 | |
CN104538028A (zh) | 一种基于深度长短期记忆循环神经网络的连续语音识别方法 | |
JP2002507033A (ja) | 顔合成装置および顔合成方法 | |
CN109887484A (zh) | 一种基于对偶学习的语音识别与语音合成方法及装置 | |
CN110060691B (zh) | 基于i向量和VARSGAN的多对多语音转换方法 | |
CN110189766B (zh) | 一种基于神经网络的语音风格转移方法 | |
CN106653056A (zh) | 基于lstm循环神经网络的基频提取模型及训练方法 | |
CA3195582A1 (en) | Audio generator and methods for generating an audio signal and training an audio generator | |
CN112259119B (zh) | 基于堆叠沙漏网络的音乐源分离方法 | |
CN108538283B (zh) | 一种由唇部图像特征到语音编码参数的转换方法 | |
CN115910026A (zh) | 一种韵律迁移语音合成方法和系统 | |
CN107785030B (zh) | 一种语音转换方法 | |
CN101178895A (zh) | 基于生成参数听感误差最小化的模型自适应方法 | |
AU2018100318A4 (en) | A method of generating raw music audio based on dilated causal convolution network | |
CN112686817B (zh) | 一种基于不确定性估计的图像补全方法 | |
WO2019138897A1 (ja) | 学習装置および方法、並びにプログラム | |
CN113611293A (zh) | 一种蒙古语数据集扩充方法 | |
CN103226946B (zh) | 一种基于受限玻尔兹曼机的语音合成方法 | |
CN110097615B (zh) | 一种联合风格化和去风格化的艺术字编辑方法和系统 | |
JPH1185194A (ja) | 声質変換音声合成装置 |
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 |