ASRWGAN: Wasserstein Generative Adversarial Network for Audio Super Resolution

ASEGAN:WGAN音频超分辨率git

这篇文章并不具备权威性,由于没有发表,说不定是外国的某个大学的毕业设计,或者课程结束后的做业、或者实验报告。github

CS230: Deep Learning, Spring 2018, Stanford University, CA. (LateX template borrowed from NIPS 2017.)算法

做者:Jonathan Gomes-Selman, Arjun Sawhney, WoodyWang数组

摘要

  本文提出使用Wasserstein(沃瑟斯坦)生成对抗网络来提升现有神经网络的性能,训练神经网络来执行音频超分辨率任务。受SRGAN[3]的启发,咱们利用一个预先训练过的ASRNet版本,如Kuleshov等人描述的模型[2],做一个全卷积鉴别器模型的生成器。咱们对生成器使用一个自适应的损失函数,将content loss内容损失(生成器输出和对应的真实音频信号之间的MSE)与传统的对抗性损失相加。结果代表,该模型在信噪比(SNR)和对数谱距离(LSD)两方面均优于bicubic interpolation(双三次插值)基线。与ASRNet相比,咱们的模型在LSD度量上表现出了更强的性能,而且咱们的模型重构低分辨率信号的更高频率而下降了信噪比。ASRNet和咱们的模型在MUSHRA测试中都达到了近乎相同的性能,该测试结合了人类对产生的音频信号清晰度的感知,而且都显著优于基线。网络

1 引言

  随着我的助理系统和音频数据的兴起,对技术设备的听觉输入变得愈来愈广泛;然而,考虑到声音的粗糙性和可变性以及录音设备的细微差异,以音频做为输入的系统经常不得不处理质量较差的音频,有时必须从新确认或重复询问相同的问题来解释输入语音。所以,若是一个网络可以以质量较差的音频做为输入,在不须要用户确认或重复的状况下加强或解析它,就能够改善我的助理和其余使用音频数据通知操做的技术的体验。架构

  考虑到这个动机,咱们提出了改进现有的模型,执行语音带宽扩展,一种特定形式的音频超分辨率。从一个下采样的版本低质量音频,经过重建,生成高质量的音频,如[2]所述。考虑到SRGAN[3]利用生成对抗网络(GAN)对现有的图像超分辨率模型进行改进的成功,咱们提出了一种改进的Wasserstein GAN体系结构来加强由[2]引入的音频超分辨率模型ASRNet。经过将改进后的ASRNet做为生成器与深度卷积鉴频器耦合,咱们的ASRWGAN结果显示了使用GANs加强当前音频超分辨率方法的前景。函数

2 相关工做

  咱们的灵感来自于各类音频和非音频相关的深度学习方法。从根本上说,正如前面提到的,咱们项目的主要目标是改进现有的用于音频超分辨率的深度残差啊网络(ASRNet)的性能。ASRNet是由[2]提出的,它借鉴了前人对图像超分辨率的研究成果,将其建模为具备残差跳跃链接的深度卷积神经网络。ASRNet已被证实大大优于传统插值技术,并为音频超分辨率提供了一个有前途的实时网络架构。性能

  咱们提出了一个模型来进一步提升ASRNet的性能,结合了生成对抗网络的优势。正如[2]所指出的,音频超分辨率的任务在很大程度上反映了图像超分辨率的任务。所以,咱们提出的模型和方法与SRGAN[3]中提出的模型和方法密切相关。SRGAN是一种用于图像超分辨率的GAN,在大缩放因子下超分辨率图像的表现优于现有的先进体系结构。学习

  在开发咱们的GAN架构时,咱们也从Wave- GAN[1]的实现中获得了灵感。WaveGAN探索了使用全卷积架构进行音频合成的问题,而不是使用与时间序列建模密切相关的RNNs。WaveGAN的性能展现了将卷积模型应用于一维时间序列数据的潜力,这是咱们在这里进一步研究的一种方法。测试

3 数据集和特征

  咱们使用的数据来自语音与技术研究中心[5]提供的CSTR VCTK语料库。这个数据集包括109个母语为英语的人的语音数据,每一个人背诵大约400个英语句子,尽管咱们只是为了效率和计算时间的限制而对单个演讲者的数据进行培训。顺便说一句,咱们注意到,在将来的应用中,咱们能够预见到为Skype或Alexa等服务中的单说话人专门训练的音频超分辨率模型。数据采用WAV文件格式,咱们使用Python的librosa库将其转换为一个numpy数组,固定采样率为16000Hz。咱们将音频信号表示为函数$f(t):[0,T]-->R$,其中$f(t)$是$t$处的振幅,$t$是信号的时间长度。为了将连续信号做为输入进行处理,必须将$f(t)$离散为向量$x(t):[\frac{1}{R},\frac{2}{R},...,\frac{RT}{R}]$,其中R为输入音频的采样率,单位为Hz。

  为了标准化输入长度,咱们从数据集中的语音中抽取半秒的patch做为样本,通过预处理获得shape为(8192,1)的向量。而后咱们随机打乱这些向量,并执行如下的训练/测试数据集分割

训练集: 3328 样本, 测试集: 500 样本

  咱们使用Chebyshev低通滤波器对每一个高分辨率的语音进行预处理,将初始信号抽取为低分辨率的等长信号,并将其做为生成器网络的输入。基线咱们采用双三次插值方法进行音频超分辨率任务。

4 方法及最终模型

  如图1所示,咱们提出的模型灵感主要来源于三个主要模型:SRGAN[3]、wave-GAN[1]和ASRNet[2]。密切关注咱们的通常方法SRGAN中提出的方法,其中包括使用pre-trained生成器网络(ASRNet)来避免局部最小值和在生成器丢失中加入内容损失成份,经过提供有关手头实际任务的领域知识(超分辨率)来提升性能。对于GAN体系结构的生成器和鉴别器,咱们分别使用了修改后的ASRNet和WaveGAN鉴别器。咱们选择WaveGAN 鉴别器是由于它在音频时间序列数据上的表现,这在很大程度上关系到长一维卷积滤波器可否成功捕捉到声音的周期性。

  在咱们的架构研究中,咱们主要关注两种类型的GAN,即寻常 GAN和Wasserstein GAN (WGAN)[4]。咱们最初的实现是一个普通的GAN,使用传统的GAN训练技术,好比使用非饱和成本函数,以及Leaky Relu非线性激活函数(如CS230课程中所述)等。然而,这个模型在训练时表现出模式崩溃、爆炸梯度和不一样的损失,所以咱们转向WGAN以得到更大的训练稳定性。

图1:调整后超参数的ASR-WGAN架构

  WGAN经过从新定义损失函数、合并权重剪裁、下降学习速度和使用非基于动量的优化器(RMS Prop)来适应普通的GAN。正如在[4]中提到的,这些更改容许更可靠的梯度反向传播到生成器,同时保持参数值较小,以防止出现模型崩溃等问题

修改后的损失函数

$$公式1:Discriminator\_Loss=max_DE_{x\sim p_x}[D(x)]-E_{z\sim p_z}[D(G(z))]$$

根据[4]中描述的WGAN训练算法,鉴别器再也不训练来识别真实和预测的例子,而是训练来计算Wasserstein沃瑟斯坦距离

$$公式2:Generator\_Loss=\frac{1}{n}||x-G(z)||_2^2+\lambda max_GE_{z\sim p_z}[D(G(z))]$$

咱们修改了[4]中提出的生成器损失,因为在[3]中相似方法的成功,因此在传统对抗性损失的基础上加入内容损失。咱们使用预测和真实示例之间的MSE(均方偏差)来提供关于实际任务目标(超分辨率)的领域知识,以及一个额外的超参数$\lambda$来平衡内容损失和对抗性损失。具体地说,咱们用$\lambda$来控制咱们的模型对内容丢失的优化

5 结构与讨论

  度量:根据Kuleshov等人的研究[2],咱们使用信噪比和对数谱距离做为度量。给定一个目标信号$y$和重建$x$,信噪比和LSD定义如方程(3)和(4)所示,其中$X$和$\hat{X}$是$x$和$y$的对数谱功率大小,它被定义为$X=\log |S|^2$, $S$是短时傅里叶变换的信号,和$l,k$分别为index指标帧和频率。

$$公式3:SNR(x,y)=10\log \frac{||y||_2^2}{||x-y||_2^2}$$

$$公式4:LSD(x,y)=\frac{1}{L}\sum_{l=1}^L\sqrt{\frac{1}{K}\sum_{k=1}^K(X(l,k)-\hat{X}(l,k))^2}$$

图2:来自各类重建方法的语音语谱图

图3:鉴别器和生成器的损失曲线,y轴上分别为损失值,x轴上为小批量迭代次数

  估计:如图2所示。与基线双三次插值或样条重建相比,咱们的ASRWGAN重建显示出在解决更高频率的显着改善。相对于ASRNet,咱们的ASR-WGAN仍然能够恢复更多的高频率,可是会出现一些原始高分辨率语音中不存在的无关噪声,这能够经过保存更多的预训练生成器模型来解决。

  从表1和表2的客观指标来看,咱们看到信噪比略有降低,大约为1-2 dB,但LSD有所改善(减小)。LSD指标比信噪比指标[2]更能分辨更高的频率。在仔细检查了epochs 1-5所保存的权重以后,信噪比显著降低到~ 5,这代表利用预先训练好的网络的好处正在减小,这多是因为咱们的鉴别器和生成器之间的性能差距形成的。然而,咱们看到基线性能在短短40个周期内快速恢复和改进。所以,尽管与ASRNet生成器相比,咱们彷佛引入了更多的噪声,但做为权衡,咱们恢复了更多的高频。

Objective Metrics Spline ASRNet ASR-WGAN
SNR 14.8 17.1 15.7
log Spectral Distance 8.2 3.6 3.3

表1:在上缩放比率为4时候的音频超分辨率方法的客观评价

MUSHRA Sample 1 Sample 2 Sample 3 Sample 4
ASR-WGAN 70 61 73 68
ASRNet 67 63 75 68.3
SPline 42 34 36 37.3

表2:对每一个音频样本的平均MUSHRA用户打分

  在添加了权重和梯度裁剪并过渡到WGAN以后,咱们避免了模型崩溃,并在训练中看到了改进的稳定性,如图3中咱们的损失曲线所示。咱们能够看到,当鉴别器在连续的迭代中不断更新时,生成器的损失稳步降低。

  根据Kuleshov等人[2]的工做建议,而后咱们经过询问10名受过训练的音乐家,让他们使用MUSHRA(带有隐藏参考和锚点的多个因素)测试来评估重建的整体质量。咱们从VCTK单说话人数据集中随机选取三个音频样本,对样本进行降采样,而后使用双三次样条插值、ASRNet和咱们的ASRWGAN重构样本。而后,咱们要求每位受试者给每一个样本打分,分值从0(糟糕)到100(完美)。实验结果见表2所示。咱们看到咱们的ASR-WGAN重建评分明显高于样条,但ASRNets和ASRWGAN重建之间的差别不那么明显。

6 结论与将来的工做

  咱们介绍了一种新的音频超分辨率的深层架构。咱们的方法是新颖的,由于它结合了SRGAN, Wave-GAN和ASRNet。与传统评价方法相比,实证评价方法的性能有所提升。

  特别适用于生成音频信号的高频份量。与传统方法相比,MUSHRA评估的最终结果也优于传统方法。咱们的架构中同时使用了普通的GAN和WGAN。咱们最终选择了WGAN,因为它的学习速度更小,损失函数更小,而且增长了权重和梯度剪切,提升了训练的稳定性,因此更适合咱们的问题。

  咱们最强的模型,命名为ASR-WGAN,在信噪比(SNR)和对数光谱距离(LSD)方面都比传统的双三次插值方法表现出更强的性能,同时在LSD度量上表现出更强的性能,与ASRNet相比信噪比下降。咱们认为这些结果与咱们的模型试图重建输入音频信号的最高频率的观察结果是一致的,这多是音频超分辨率最具挑战性的部分。该模型以不连续的形式对预测的输出信号引入了一些噪声。在定性上,MUSHRA实验代表,输出信号的清晰度与ASRNet至关,且远优于咱们的基线模型。

  将来工做:咱们假设ASRWGAN的结构,特别是鉴别器和生成器之间的初始性能差距,致使ASRWGAN不能充分利用生成器的初始预训练状态。鉴于此,咱们将来工做的第一个行动是经过引入跳过链接和残差单元使咱们的识别器更具表现力,并调整鉴别器与生成器的训练比例。此外,咱们打算对生成器上的损失函数进行实验,特别是内容损失,以便更好地反映优化人类耳朵性能的最终目标。给定更多的计算时间,一个天然的扩展将是在VCTK数据集中的多个扬声器上训练咱们的模型,并执行更完全的超参数搜索,以找到权值剪切边界。

7 贡献

  每一个团队成员对项目的贡献是平等的。Jonathan编写了大部分代码来建立ASRWGAN的体系结构。Woody编写代码在AWS实例上训练和测试模型。Arjun在分析音频和图像超分辨率领域现有GAN实现的基础上,对数据集进行预处理,并对GAN体系结构进行调整和实现。全部团队成员都认真阅读了相关论文,提升了团队的工做效率,花时间调试和重构代码,并在最终报告的撰写中作出了同等的贡献。

8 致谢

  咱们要感谢Volodymyr Kuleshov对咱们整个项目的支持,帮助咱们理解他最初的models架构。咱们也要感谢Ahmad Momeni, Brandon Yang和CS230的全体教师帮助咱们实施和理解咱们的ASRWGAN。

9 代码

项目代码可在https://github.com/jonathangomesselman/CS230-Project中找到

参考文献

[1] Donahue, Chris et al. Synthesizing Audio with Generative Adversarial Networks in arXiv, 2018. 
[2] Kuleshov, Volodymyr et al. Audio Super Resolution with Neural Networks in arXiv (Workshop Track) 2017. 
[3] Ledig, Christian et al. Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network in arXiv 2017. 
[4] Arjovsky, Martin et al. Wasserstein GAN in ICML, 2017. 
[5] English Multi-speaker Corpus for CSTR Voice Cloning Toolkit, 2010. [6] Abadi, Martín et al. TensorFlow: Large-scale machine learning on heterogeneous systems, 2015. Software available from tensorflow.org, 2015. 6

相关文章
相关标签/搜索