基于变分自编码器生成对抗网络的语音增强方法与流程
1.本发明属于智能机器学习领域,具体说是一种基于变分自编码器生成对抗网络的语音增强方法。
背景技术:
2.随着人工智能行业的发展,语音增强涉及的应用领域十分广泛,包括语音通话、电话会议、智能家居、服务机器人、语音识别设备等。随着世界人口的扩张和人口老龄化,言语交流受损的人数逐年增长,语音增强对服务机器人来说意义重大,对于距离较远的语音交互任务来说,由于目标声源距离拾音设备较远,原始音频信号容易受到设备回声、人声或者非人声干扰、环境噪声、房间混响等不利声学因素影响,导致原始信号的信噪比和语音可懂度较低,不利于语音信号的接收,这时就需要语音增强技术配合。人随着年龄的增长,语言能力会随之下降,语音增强可以广泛应用在老年人语音识别方面,当人进入老年后,身体各方面机能不断下降,老年人在日常言语交流方面存在的问题尤为突出,有时说话含糊不清,这给他们的生活带来很大的困扰,造成了诸多不便。因此,语音增强技术是当前老龄化社会发展的迫切需要,解决老年人存在的语音模糊问题,提高老年人生活福祉。
3.为了更好的处理噪声的分布特征,近几年的研究中,许多研究人员把语音增强任务看作一种监督学习问题。利用各种机器学习模型去学习干净语音信号和带噪语音信号之间的关系。生成对抗网络模型是最近几年最热门的深度学习模型之一,它源于博弈论的思想,在众多研究人员的努力下,已经成功运用到语音增强领域。经过研究发现,基于gan的语音增强模型segan在未知环境下能够取得较好的语音增强效果,提升语音质量和语音可懂度。segan方法属于端到端的语音增强方法,它直接在语音波形文件上进行操作,将不同的说话人和不同种类的噪声合并回到一个模型中进行学习,此举便于在模型中共享学习到的参数。提出了适用于语音增强的条件生成对抗网络模型,该模型通过学习干净信号和带噪信号间的频谱映射关系,同时在模型中添加了条件信息,通过条件信息,使得模型的生成数据更加真实。上述基于gan的语音增强方法,在提高语音质量和提升语音增强性能等方面均优于以往的深度学习方法。segan模型在语音增强领域取得了令人瞩目的成绩,但是segan模型在训练过程中存在着难以训练、梯度爆炸等问题,导致模型权重出现重大更新,造成模型不稳定,无法利用训练数据学习,在语音识别和说话人识别系统中,语音增强也被成功地应用于预处理阶段,问题会导致机器人对语音增强的计算能力降低,对语音的识别准确定下降。需要探索更好的卷积结构并在对抗训练中加入感知权重,以便减少当前模型可能引入的高频伪影。
技术实现要素:
4.本发明提供一种基于变分自编码器生成对抗网络的语音增强方法,本发明提出具有解码器-编码器输出噪声的生成对抗网络,使用预先训练的解码器编码器架构将随机高斯噪声向量映射到信息噪声向量,并将其传递给对抗网络的生成器。由于解码器-编码器架
构由与生成器相同的语音进行训练,因此输出向量可以携带原始语音的固有分布信息。
5.本发明为实现上述目的所采用的技术方案是:基于变分自编码器生成对抗网络的语音增强方法,包括以下步骤:
6.将干净语音数据x和带噪语音数据xc进行重采样,分割语音获取训练数据集;根据训练数据集对构建的生成对抗网络模型进行交替训练,得到训练好的生成对抗网络模型;干净语音数据x用于表示无噪音的人语音,带噪语音数据xc用于表示含有环境噪音的人语音;
7.采集随机噪声z进入变分自编码器中,产生新噪声z
′
;将带噪语音数据xc和新噪声z
′
输入至训练好的生成对抗网络模型得到增强的语音。
8.所述生成对抗网络模型包括生成器g和判别器d;
9.所述生成器g将输入的带噪语音数据xc和新噪声z
′
进行拼接,输出增强的语音(z
′
,xc);
10.所述判别器d根据输入的增强的语音(z
′
,xc)得到增强语音的概率和干净语音数据;其中,增强语音的概率分别与1和0相比,如果接近1,则表示与干净语音相似,如果接近0,则表示与干净语音不相似。
11.所述根据训练数据集对构建的生成对抗网络模型进行交替训练,包括以下步骤:
12.1)将干净语音数据x与带噪语音数据xc输入到判别器d中进行训练,使得判别器d输出结果达到1
±
δ范围内,δ为误差阈值;
13.2)将带噪语音数据xc送入生成器g中生成第一增强语音数据,并与带噪语音数据xc拼接后送入判别器d中进行训练,使得判别器d输出结果达到0
±
δ范围内,δ为误差阈值;
14.3)冻结判别器d,将带噪语音数据xc送入生成器g中生成第二增强语音数据,并与带噪语音数据xc拼接后送入判别器d中进行训练,使得判别器d输出结果达到1
±
δ范围内,δ为误差阈值,使生成器g生成的第二增强语音数据与干净语音数据x之间的误差小于设定值。
15.所述判别器d的损失函数采用欧式距离损失函数。
16.所述生成器g的损失函数采用欧式距离损失函数。
17.所述判别器d中,将原来的归一化层替换为虚拟批量归一化层。
18.所述变分自编码器包括:解码器和编码器,解码器的输入和编码器的输出维数相同。
19.基于变分自编码器生成对抗网络的语音增强系统,包括:
20.变分自编码器,用于根据输入的随机噪声z产生新噪声z
′
;
21.对抗网络模型,用于根据训练数据集进行训练;并当带噪语音数据xc和新噪声z
′
输入时得到增强的语音数据。
22.所述生成对抗网络模型包括生成器g和判别器d;
23.所述生成器g将输入的带噪语音数据xc和新噪声z
′
进行拼接,输出增强的语音(z
′
,xc);
24.所述判别器d根据输入的增强的语音(z
′
,xc)得到增强语音和干净语音数据的相似概率;其中,增强语音的概率分别与1和0相比,如果接近1,则表示与干净语音相似,如果接近0,则表示与干净语音不相似。
25.一种计算机可读存储介质,所述存储介质上存储有计算机程序,当所述计算机程序被处理器执行时,实现所述的基于变分自编码器生成对抗网络的语音增强方法。
26.本发明具有以下有益效果及优点:
27.1.本发明提出了一种新颖的深度模型,称为具有解码器-编码器输出噪声的生成对抗网络,使用预先训练的解码器-编码器架构将随机高斯噪声向量映射到信息噪声向量,并将其传递给对抗网络的生成器。由于解码器-编码器架构由与生成器相同的语音进行训练,因此输出向量可以携带原始语音的固有分布信息。生成对抗网络能够获得更好的增强效果,增强后的语音质量得到了提升,也增加了算法的稳定性和泛化能力。
28.2.本发明基于有限的语音数据生成更多同样有效的语音数据,丰富训练数据的分布,使通过训练集得到的模型泛化能力更强,改善受加性噪声污染的语音的可懂度和质量。
29.3.本发明通过对损失函数的改进,理论上生成的语音对比其他模型效果会更加出。欧氏距离损失函数彻底解决gan训练不稳定的问题,不需要小心平衡生成器和判别器的训练程度,训练过程中通过输出准确数值来指示训练的进程,这个数值越小代表模型训练得越好,代表生成器产生的语音质量越高。
30.4.本发明中模型的有益效果是整体提供一个快速语音增强过程,没有因果关系因此不会有像循环神经网络rnn的递归操作。模型基于原始音频做处理,没有提取特征,因此没有对原始数据做出明确的假设。从不同的说话人和噪声类型中学习,并将他们合并到相同的共享参数中,这使得模型在这些维度上变得简单和一般化。
附图说明
31.图1为本发明系统流程图;
32.图2为本发明变分自编码器结构图;
33.图3为本发明生成器结构图;
34.图4为本发明判别器结构图;
35.图5a为本发明判别器d反馈优化的原理图;
36.图5b为本发明判别器d训练的原理图;
37.图5c为本发明生成器g训练与反馈优化过程。
具体实施方式
38.下面结合附图及实施例对本发明做进一步的详细说明。
39.本发明公开了一种基于变分自编码器生成对抗网络的语音增强方法,利用解码器-编码器输出噪声和对抗网络训练来提高语音增强性能。包括以下步骤:使用解码器编码器架构训练随机高斯噪声;将语音进行重采样,分割语音获取训练数据集;构造生成对抗网络的语音增强生成器模型;构造生成对抗网络的语音增强判别器模型;根据构建的生成对抗网络模型交替训练得到增强的语音数据,实现语音增强。
40.基于变分自编码器生成对抗网络的语音增强方法方法,包括以下步骤:
41.使用解码器-编码器架构训练随机高斯噪声;
42.将语音进行重采样,分割语音获取训练数据集;
43.构造生成对抗网络的语音增强生成器模型;
44.构造生成对抗网络的语音增强判别器模型;
45.根据构建的生成对抗网络模型交替训练得到增强的语音数据。
46.所述变分自编码器模型包括:解码器和编码器,解码器的输入和编码器的输出维数相同,因此解码器-编码器结构不会改变噪声向量的维数,而是使它们携带语音的信息。生成新噪声可以保留语音的固有结构,加速训练过程并提高生成语音的质量。
47.所述语音增强训练数据集包括:干净语音和噪声语音,将语音重采样,按照固定帧长和固定进步,分割成语音段构造训练数据集。
48.所述生成对抗网络的语音增强生成器模型包括:生成器(生成器generator简称为g)其主要任务是学习一种有效的映射,该映射可以模拟真实的数据分布,以生成与训练集相关的新样本,即增强语音;生成器网络的输入是噪声语音和新噪声,其输出是增强的语音。
49.所述根据生成对抗网络的语音增强判别器模型包括:判别器(判别器discrimintor简称为d)通常是一个二进制类,开始时输入是干净语音或者噪声语音,之后输入是来自生成器g产生的增强语音,判别器对输入语音进行判断,给出干净语音与增强语音的概率。
50.所述生成器网络结构包括:采用的是卷积操作,编码器encoder中,输入的是时域的波形,经过卷积后,产生了输出向量c,然后让输出的向量c和新噪声向量拼接到一起,通过解码器decoder产生输出,得到增强样本。
51.所述判别器网络结构包括:生成器g的编码部分相似,由一维卷积层组成,步长为2,核函数为32,经过virtual batch-norm层,然后经过relu激活函数,在判别器d的最后一个激活层后,添加一个一维卷积层,为一个宽度为1的滤波器,将判别器d输出维度降低,最后送入全连接层,通过激活函数sigmoid输出判断结果。
52.所述构建的生成对抗网络模型交替训练,具体为:
53.(1)使用数据集训练变分自编码器模型,生成新噪声;(2)将干净语音与带噪语音数据输入到判别器d中进行训练。(3)将噪声语音和新噪声送入生成器g中生成增强语音g(z
′
,xc)。(4)不断优化生成器g和判别器d,使生成的增强语音数据越来越接近于干净语音数据,整个训练过程中生成器g和判别器d交替训练,直至达到理想状态。
54.如图1所示,为本发明系统流程图;随机噪声z进入变分自编码器中,产生新噪声z
′
,随后噪声语音和新噪声通过生成器g,生成数据样本,数据样本和真实的数据样本即干净语音通过判别器d,在开始的时候判别器判别输入的数据是来自真实的样本还是生成器生成的样本,然后将判别的结果返回到判别器和生成器,判别器和生成器不断的进行优化,生成器的目的是使得判别器对生成的数据产生误判,形成最终的增强语音。在机器人的应用中,增强语音可以对机器人采集到的语音进行增强从而更好地进行语音识别,人们发出的语音为噪声语音,计算机内部已有数据集为干净语音(可以人为设定)。
55.在语音增强任务中,往往对生成的样本有着较高的要求,要求生成的语音样本在语义信息上要与原始的语音保存一致,且具有较好的语音听觉可懂度。其损失函数分为两部分,第一部分判别器的损失函数,是将取对数的损失函数改进为欧式距离的损失函数,将输入到判别器d里的数据d(x,xc)取对数改进为取欧氏距离(d(x,xc)-1)2,其中,判别器和生成器输出概率越小越好,更新判别器的损失函数,使判别器具有区别性,可以充分区分样本
的真实性和虚假性,。将干净语音x和噪声语音xc定义为真实语音,将增强语音g(z
′
,xc)定义为虚假语音。当输入为真实语音,输出结果接近于1,当输入为虚假语音,输出结果接近于0。第二部分生成器的损失函数,同样为取对数的损失函数改进为取欧式距离的损失函数,将输入到生成器g里的数据g(z
′
,xc)取对数改进为取欧氏距离(g(z
′
,xc)-1)2,更新生成器时输入为虚假语音,迷惑判别器使判别器无法区分,除此之外,引入一个函数项λ‖g(z
′
,xc)-x‖1,λ为一个超参数,使其内容上更加接近干净语音。
56.图2为本发明变分自编码器结构图;解码器-编码器架构自动编码器是无监督学习中常见的深度模型。它旨在表示一组数据潜伏层。在架构上,由两部分组成:编码器和解码器。编码器部分采用输入x∈rd并将其映射到z,这称为潜在变量。而解码器尝试从z重建输入数据,训练自动编码器的过程是尽量减少重建错误。模型与自动编码器共享相同的结构,但它基于以下假设:潜在变量遵循某种分布,例如高斯分布或均匀分布,它使用变分推理学习潜在变量。在模型中,θ表示解码器φ表示编码器,是编码器预训练得到的数据,假设数据由模型从潜在变量分布p(x|z)生成编码器学习近似分布q
φ
(z|x)到后验分布p
θ
(z|x),模型的训练流程是最小化损失函数,鉴于模型的机制,我们可以转型从正态分布n(0,1)使用由语音训练的解码器的后验数据。根据变分自编码器的假设,后验矢量满足干净语音的近似分布,并且如果我们将后验向量连接到编码器,编码器是与解码器相同的变分自编码器,我们可以将后验向量映射到新的噪声矢量z
′
,其中载有干净语音的信息。从高斯分布采样的向量包括许多不适合语音的噪点。所以,如果我们使用噪声z
′
作为生成器的输入,我们可以消除不合理的噪声点并提高生成语音的质量。解码器-编码器结构集成了将语音信息转换为高斯向量以产生噪声矢量更适合通过生成对抗网络生成语音。
57.如图3所示,为本发明生成器结构图。生成器g是u型自编码器结构,分为编码部分和解码部分,共计22层。编码部分的主要任务是对噪声输入信号进行分解,它是由滤波器宽度为31的一维卷积层组成,步长为2,滤波器个数为:16,32,32,64,64,128,128,256,256,512,1024,得到每层维度为:8192
×
16,4096
×
32,2048
×
32,1024
×
64,512
×
64,256
×
128,128
×
128,64
×
256,32
×
256,16
×
512,8
×
1024。编码部分最后输出向量c维度为8
×
1024,随后向量c与随新噪声向量z
′
进行拼接。在生成器g编码部分和解码部分加入跳跃连接,它将编码部分每一层与对应解码部分拼接在一起。拼接的作用是将编码部分的语音相关信息传递给对应的解码部分。从而避免了模型在编解码过程中,因为压缩操作而导致的语音信息的丢失。
58.如图4所示,为本发明判别器结构图。判别器d是一个二分类器。它的作用是对输入模型的语音信号进行判别,判别输入是噪声语音或干净语音,并将参数信息利用反向传播传递给生成器g。判别器d与生成器g的编码部分相似,由滤波器宽度为31的一维卷积层组成,步长为2。将干净语音或增强语音与带噪语音拼接后送入到判别器d中,输入维度为16384
×
2,进行核大小为31,步长为2,填充为15的一维卷积操作,激活函数为leaky relu,系数α为0.3。为缓解判别器d训练过程中梯度消失和爆炸问题,使判别器d训练更加稳定,使用虚拟批量归一化层(virtual batch normalization,vbn),vbn在模型训练前,需要计算出判别器d中每层的均值和均值平方作为参考数据(reference batch),随后用所求参考数据对判别器d中每层数据进行正则化。在判别器d第11层卷积层后,添加一个核大小为1,步长为1的卷积层,将判别器d输出维度由2048
×
8降到1
×
8,最后再送入一个全连接层,通过
激活函数sigmoid输出判断结果。
59.如图5a~5c所示,为本发明对抗网络训练流程图;模型训练过程示意图,图中的虚线表示模型中的传播过程。其中,图5a表示判别器d的反馈优化的过程,图5b表示判别器d的训练的过程。而图5c表示生成器g训练与反馈优化过程。模型的训练过程为:第一步,将干净语音数据x与带噪语音数据xc输入到判别器d中进行训练,使得(x,xc)输出结果逐渐接近于1。干净语音表示没有噪声的或者说是比较纯净的人语音,带噪语音表示比较嘈杂的带有外部环境的人语音。第二步,将带噪语音数据xc送入生成器g中生成增强语音数据,并与带噪语音数据拼接后送入判别器d中进行训练,使得(z
′
,xc)结果逐渐接近于0。第三步,冻结判别器d,将带噪语音数据xc送入生成器g中生成增强语音数据,并与带噪语音数据拼接后送入判别器d中进行训练,使得(z
′
,xc)结果逐渐接近于1,意味着生成器g生成的增强语音数据越来越接近于干净语音数据,整个训练过程中生成器g和判别器d交替训练,直至达到理想状态。
技术特征:
1.基于变分自编码器生成对抗网络的语音增强方法,其特征在于,包括以下步骤:将干净语音数据x和带噪语音数据x
c
进行重采样,分割语音获取训练数据集;根据训练数据集对构建的生成对抗网络模型进行交替训练,得到训练好的生成对抗网络模型;干净语音数据x用于表示无噪音的人语音,带噪语音数据x
c
用于表示含有环境噪音的人语音;采集随机噪声z进入变分自编码器中,产生新噪声z
′
;将带噪语音数据x
c
和新噪声z
′
输入至训练好的生成对抗网络模型得到增强的语音。2.根据权利要求1所述的基于变分自编码器生成对抗网络的语音增强方法,其特征在于,所述生成对抗网络模型包括生成器g和判别器d;所述生成器g将输入的带噪语音数据x
c
和新噪声z
′
进行拼接,输出增强的语音(z
′
,x
c
);所述判别器d根据输入的增强的语音(z
′
,x
c
)得到增强语音的概率和干净语音数据;其中,增强语音的概率分别与1和0相比,如果接近1,则表示与干净语音相似,如果接近0,则表示与干净语音不相似。3.根据权利要求1所述的基于变分自编码器生成对抗网络的语音增强方法,其特征在于,所述根据训练数据集对构建的生成对抗网络模型进行交替训练,包括以下步骤:1)将干净语音数据x与带噪语音数据x
c
输入到判别器d中进行训练,使得判别器d输出结果达到1
±
δ范围内,δ为误差阈值;2)将带噪语音数据x
c
送入生成器g中生成第一增强语音数据,并与带噪语音数据x
c
拼接后送入判别器d中进行训练,使得判别器d输出结果达到0
±
δ范围内,δ为误差阈值;3)冻结判别器d,将带噪语音数据x
c
送入生成器g中生成第二增强语音数据,并与带噪语音数据x
c
拼接后送入判别器d中进行训练,使得判别器d输出结果达到1
±
δ范围内,δ为误差阈值,使生成器g生成的第二增强语音数据与干净语音数据x之间的误差小于设定值。4.根据权利要求1所述的基于变分自编码器生成对抗网络的语音增强方法,其特征在于,所述判别器d的损失函数采用欧式距离损失函数。5.根据权利要求1所述的基于变分自编码器生成对抗网络的语音增强方法,其特征在于,所述生成器g的损失函数采用欧式距离损失函数。6.根据权利要求1所述的基于变分自编码器生成对抗网络的语音增强方法,其特征在于,所述判别器d中,将原来的归一化层替换为虚拟批量归一化层。7.根据权利要求1所述的基于变分自编码器生成对抗网络的语音增强方法,其特征在于,所述变分自编码器包括:解码器和编码器,解码器的输入和编码器的输出维数相同。8.基于变分自编码器生成对抗网络的语音增强系统,其特征在于,包括:变分自编码器,用于根据输入的随机噪声z产生新噪声z
′
;对抗网络模型,用于根据训练数据集进行训练;并当带噪语音数据x
c
和新噪声z
′
输入时得到增强的语音数据。9.根据权利要求1所述的基于变分自编码器生成对抗网络的语音增强系统,其特征在于,所述生成对抗网络模型包括生成器g和判别器d;所述生成器g将输入的带噪语音数据x
c
和新噪声z
′
进行拼接,输出增强的语音(z
′
,x
c
);所述判别器d根据输入的增强的语音(z
′
,x
c
)得到增强语音和干净语音数据的相似概率;其中,增强语音的概率分别与1和0相比,如果接近1,则表示与干净语音相似,如果接近0,则表示与干净语音不相似。10.一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,当所
述计算机程序被处理器执行时,实现如权利要求1-7任一项所述的基于变分自编码器生成对抗网络的语音增强方法。
技术总结
本发明涉及基于变分自编码器生成对抗网络的语音增强方法,利用解码器-编码器输出噪声和对抗网络训练来提高语音增强性能。包括以下步骤:使用解码器编码器架构训练随机高斯噪声;将语音进行重采样,分割语音获取训练数据集;构造生成对抗网络的语音增强生成器模型;构造生成对抗网络的语音增强判别器模型;根据构建的生成对抗网络模型交替训练得到增强的语音数据,实现语音增强。本发明使用预先训练的解码器-编码器架构将随机高斯噪声向量映射到信息噪声向量,并将其传递给对抗网络的生成器。生成对抗网络能够获得更好的增强效果,增强后的语音质量得到了提升,也增加了算法的稳定性和泛化能力。定性和泛化能力。定性和泛化能力。
