生成对抗性网络用于从低声语音到正常语音的转换

ancehada 2019-05-24

近年来,基于卷积神经网络(CNN)的生成对抗性网络(GAN)被应用于正常语速的(Whisper-to-Normal Speech(即WHSP2SPCH))转换任务。这些基于CNN的GANs在计算复杂性方面的训练非常困难。GAN中的语音生成器的目标是有效地将低声语音特征映射到正常语音的特征。然而,基于GAN的架构很容易过度拟合。为了解决这个问题,我们需要通过改变与之相关的超参数来优化成本函数,或者通过向模型添加更多层来使生成器更复杂。这两种解决方案都耗时且计算成本高。因此,在本文中,我们提出了基于初始的GAN架构(即,Inception-GAN)。我们提出的架构在训练时非常稳定且计算成本更低。所提出的Inception-GAN优于现有的基于CNN的GAN架构(CNN-GAN)。使用所提出的关于低声TIMIT(wTIMIT)语料库的体系结构来进行客观和主观结果。在特定于说话者的评估中,Inception-GAN在男性和女性说话者中的客观表现分别为8.9%和6.2%。

介绍

近年来,深度学习(DL)已经在语音转换(VC)领域及其各种应用中展示了其显著的性能。WHSP2SPCH转换是VC的应用之一。然而,在WHSP2SPCH转换问题中,在语音处理和机器学习(ML)的角度研究WHSP2SPCH转换问题仍然存在许多障碍。WHSP2SPCH转换具有许多应用,例如公共场所的私人通信,图书馆,医院等静音场所的通信,智能个人助理(IPA),医疗领域应用中的低声语音识别。声带、喉部或其他与语音产生相关的发音部位受到了影响,其中一些人只能通过低声交谈。失去说话能力的自然方式使这些人的生活变得悲惨。因此,WHSP2SPCH转换对于这些受损人员的日常交流也很重要。为此,我们需要高效且便宜的WHSP2SPCH转换系统。在本文中,我们提出了一个Inception-GAN,与CNN-GAN相比,具有非常稳定和良好的应用前景。从言语产生知觉的角度看,低声和正常的语音有很大的不同。气管间的耦合作用增强,导致低声和正常说话的频谱差异。因此,电话持续时间,电话类别,共振峰置的能量分布以及频谱倾斜也将受到影响。正常的语音是由声带的周期性振动产生的,而低声说话几乎没有声带的振动。语音中声带振动的这段时间称为基频(F0)。这种周期性的振动负责语音中的浊音。低声讲话中声带的较少或没有振动会产生无声的声音。因此,低声讲话完全是非周期性的或无声的。为了生成正常的语音,我们需要在低声说话中不存在的F0。然而,已经发现,低声说话是以一种纠缠的方式封装了F0。因此,预测F0是WHSP2SPCH转换最困难和最艰巨的任务之一。在GAN发明之后,许多基于GAN的架构被积极地用于VC。最近,CycleGAN给出了VC中最先进的结果。而其他GAN变体,例如MMSE DiscoGAN中提出的WHSP2SPCH转换任务也显示出显著的结果,特别是对于F0的预测。这些模型大多数是使用基于深度神经网络(DNN)的WHSP2SPCH转换体系结构来实现。而在VC中,大多数架构都是基于CNN的。与基于GAN的高级架构(例如CycleGAN)的训练相比,基于传统CNN的相互矛盾的映射函数相对不稳定且难以训练。需要解决的主要问题是传统的基于GAN的架构(即Vanilla GAN,Wasserstein GAN,CNN-GAN等)更容易崩溃,而且永远不会收敛,因为生成器无法学习低声和正常语音特征之间的映射。在生成器学习映射之前,判别器有效地学习区分原始和转换后的语音特征。为了解决这个问题,我们可以在训练时调整损失函数的相对重要性,以使生成器更快地学习,或者添加更多CNN层以使生成器与判别器相比更有效。然而,这些解决方案在计算和时间限制方面非常昂贵。因此,我们提出了将嵌入神经网络用于生成器的Inception-GAN,以及用于克服这些限制的判别器。建议的Inception-GAN优于CNN-GAN。实验结果表明,与CNNGAN相比,Inception-GAN更稳定(即,该算法不具有超参数敏感性),并且能够同时映射不同的稀疏级别。除了Inception-GAN的这些优点外,与基于CNN的GAN相比,它具有更少的计算复杂度。简而言之,Inception-GAN通过保持简单、稳定和不太复杂的训练来胜过CNN-GAN。此外,我们为Inception-GAN和CNN-GAN提供了特定于说话者的定量和定性结果,其中与WNMIT语料库中的CNN-GAN相比,Inception-GAN在客观和主观评价方面表现出优势。

提出的架构

在本节中,我们简要总结了提出的inception模块的关键思想,并详细分析了我们提出的体系架构,即Inception-GAN。

Inception模块

提高任何体系结构性能的简单方法是通过添加更多层数来增加其长度(即网络的深度),并增加其宽度。然而,这导致计算复杂性和过度拟合的概率的增加。因此,需要一种可以在本地使用稀疏性的方法,并且可以用CNN代替。在本文中,我们通过使用Inception架构实现了这一点。Inception的概念在CNN中被用作内在方式的构建块。在本文中,我们使用了滤波器大小为1×1,3×3和5×5的平行卷积层。此外,我们还使用了3×3最大池化层。通常,最大池化层会导致信息丢失。但是,我们同时提取了不同的特征。因此,使用最大池化层的想法是从输入中提取更多主导的特征。在本文中,我们假设我们并行使用的不同滤波器的输出可能以特定输入特征为中心的特征集群结束。为了解决这个问题,在inception模型中使用1×1卷积。使用1×1卷积的主要原因是它会对前一层的输出进行高度相关的聚类。但是,在前一层的输入中,会有一些区域的特征没有居中。因此,我们使用了3×3和5×5卷积。因此,我们可以说inception使用滤波器级别的稀疏性。图1显示了所提议的Inception模块的初始版本。

生成对抗性网络用于从低声语音到正常语音的转换

图1:Inception模块的初始版本的示意图。

Inception模块将像CNN一样堆叠在一起。上层的inception模块将用良好的抽象过滤特征,并且这些抽象的细节将逐层增加。因此,当我们移动到更高层时,3×3和5×5卷积的比例应该增加。但是,当前的Inception模块不能解决计算复杂性问题。这个问题的原因是计算复杂度将是1×1,3×3和5×5的各个复杂度的总和,因为我们希望输出层的滤波器数量与输入层的滤波器数量相同。为了克服这个问题,我们在Inception中使用了另外一个卷积层。此外,如图2所示,在3×3和5×5卷积之前,使用1×1卷积来减少计算量。所提出的inception模块的最终版本如图2所示。此外,与3×3卷积相比,5×5卷积在计算方面更昂贵。假设存在n个滤波器,5×5卷积的计算复杂度是3×3卷积的25/9 = 2.78倍。然而,5×5卷积不能简单地用3×3卷积代替,因为与3×3卷积相比,5×5卷积以更好的方式捕获到扩展特征。将5×5卷积替换为3×3卷积会导致转换后的正常语音的语音信息丢失。我们知道WHSP2SPCH的基本目标是在转换时保留语音信息。然而,在不丢失语音信息的情况下,可以通过低维嵌入实现空间聚合。可以在空间聚合(例如,5×5)之前减小输入表示的维度(例如,3×3)而不会产生严重的副作用。因此,我们将5×5卷积替换为两个连续的3×3卷积,与图1所示的Inception模块相比,在不丢失信息的情况下,将计算复杂度降低了[25−(9 + 9)]/25倍。如上所述,与CNN相比,Inception模块的计算复杂度更低,可以通过增加网络的深度和宽度来创建更大的架构。

生成对抗性网络用于从低声语音到正常语音的转换

图2:用于WHSP2SPCH转换的inception模块的示意图。

提议Inception-GAN

在Inception-GAN中,生成器和判别器是通过将Inception模块堆叠在一起而制成的。表1和表2分别显示了所提出的Inception-GAN的生成器和判别器的体系结构的细节。在表中,“#3×3 reduce”表示在3×3卷积之前用于减少的1×1滤波器的数量。在使用真实数据部署生成器之后,输入特征矩阵的大小将针对每个输入波形文件而发生变化。因此,在真实测试生成器时,输入特征矩阵的大小对于每个输入波形文件而变化。此外,当我们有奇数个输入帧时,下采样前的输入特征矩阵的大小和上采样后的输出特征矩阵的大小将是不同的,这导致在评估时目标尺寸不匹配的问题。为了克服所有这些限制,我们开发了生成器,使得它永远不会对输入特征矩阵进行下采样。在生成器中的Inception模块之后,我们使用单个卷积操作来聚集先前的Inception模块的堆叠输出。在判别器的情况下,我们在每个inception模块之后使用平均池来减小输入特征矩阵的大小。经过四个模块的Inception之后,我们使用了两个带有dropout的全连通神经网络,在某种程度上减慢了判别器的学习速度。

训练方法

为了了解低声语音(XW)的特征与正常语音(XS)的特征之间的映射函数,我们采用了传统的训练方法,如我们的incpepe -GAN的中所建议的。Inception-GAN由一个生成器(即GW S)和一个判别器(即DS)组成。GW S将低声语音的输入特征映射到正常语音的特征,并且DS尝试区分所生成的语音和原始正常语音。

生成对抗性网络用于从低声语音到正常语音的转换

建议的Inception-GAN的示意图。

我们将对抗性损失函数来应用于训练生成器,因为我们想要生成的语音,使得判别器变得混乱,无论它是真实的还是生成的。为了训练判别器,我们也使用了对抗性损失,因为判别器应该能够有效地识别真实和生成的语音。两种损失函数都用数学表示为:

生成对抗性网络用于从低声语音到正常语音的转换

实验结果

在本研究中,我们使用低声TIMIT(wTIMIT)数据库来训练和测试我们的架构。特别是,我们采用了三个男性和三个女性说话者的数据来开发WHSP2SPCH转换系统。我们总共有1164个对应于低声的平行话语和正常的语音被用于训练,35个语音用于测试。每种架构用于找到低声和正常语音特征之间的映射函数,并找到转换后的特征和正常语音F0的预测函数,然后在浊音区域中使用sinc插值平滑进行后处理。我们为基线架构设计了CNN-GAN。公平起见,我们设计它的方式使得CNN-GAN和Inception-GAN的计算复杂度几乎相似。CNN-GAN的生成器和判别器包含四个3×3卷积,其输出数量分别为滤波器128,256,128和1。此外,我们使用了两个完全连接的层,其中一个dropout为50%的生成器和判别器,与InceptionGAN的生成器和判别器相同。线性整流函数(ReLU)也用作激活函数。两个模型都训练了100个周期,学习率为0.0001,使用Adam优化器。利用25ms的窗口和5ms的移帧,我们提取了40维梅尔倒谱系数(MCCs)。为了分析和合成,我们使用了AHOCODER。仅用于训练目的,我们将MCC特征矩阵的输入大小固定为1000×40,如式所示。在测试时,帧数将是可变的。例如,我们将在测试时将X×40大小的矩阵作为输入,其中X是帧数。

目标评估

我们应用梅尔倒谱畸变(MCD)和基于对数(F0)的客观测量的均方根误差(RMSE)来分析WHSP2SPCH转换系统的有效性。这里使用传统的MCD测量,由下式给出:

生成对抗性网络用于从低声语音到正常语音的转换

其中mr i和mc i是参考的第i个MCCs为转换后的信号。其中,mr i和mc i是参考中性语音的第i个MCCs,以及在WHSP2SPCH转换系统的情况下转换的中性语音。由于MCD是转换后的特征与参考倒谱特征之间的距离,因此MCD越小的系统越好。

生成对抗性网络用于从低声语音到正常语音的转换

基于95%置信区间并行WHSP2SPCH任务的不同系统的MCD分析。x轴:发言者,y轴:MCD值。

为了测量对数(F0)的RMSE,使用动态时间扭曲(DTW)算法对实际参考语音和转换后的语音信号进行时间校准。这些DTW对齐的对将生成语音-浊音,浊音 - 清音,清音-浊音和清音 - 清音对。这里,我们只考虑用于计算对数(F0)的RMSE的浊音对(因为由于没有发声,F0对于无声帧是未定义的)。对数(F0)的RMSE由下式给出:

生成对抗性网络用于从低声语音到正常语音的转换

其中k是对齐后的语音对的总数,F0 r和F0 c分别是参考的F0和转换后的语音信号。对数(F0)的RMSE越小,系统越好。

生成对抗性网络用于从低声语音到正常语音的转换

基于95%置信区间的并行WHSP2SPCH任务对不同系统的对数(F0)的RMSE。X轴:发言者,Y轴

我们基于RMSE 对数(F0)和MCD值分析了Inception-GAN的性能,并将其与基线CNN-GAN进行了比较。如第二节所述,Inception降低了计算复杂度,有助于增加架构的深度和宽度。而且,Inception能够在稀疏级别使用过滤器来提取信息。Inception模块的功能帮助我们的Inception-GAN优于CNN-GAN。对于MCD分析,对于所有三名男性和女性发言者,Inception-GAN分别显示MCD与CNN-GAN相比的平均减少。此外,对于RMSE对数(F0)的情况,Inception-GAN的性能也相当稳定。

总结

在本研究中,我们使用并行数据和CNNGAN分析了我们提出的用于WHSP2SPCH转换的Inception-GAN。在这里,我们发现了CNN-GAN在计算复杂性和时间限制方面的局限性。而且,我们遇到了CNN-GAN过度拟合的问题。为了克服这些限制,我们提出了Inception-GAN,它由生成器和判别器中的inception模块组成。与CNN相比,Inception模块具有较少的计算复杂度。此外,它还映射稀疏级别的特征,这有助于我们构建更密集的体系结构。这种能力可以减少对数据的过度拟合。我们计划使用WORLD或Wavenet等高质量vocoders进一步提高转换后语音的质量。估计值与真实值之间的感知差异表明,需要探索更好的目标函数来感知优化基于传统GAN的体系结构的网络参数。

相关推荐