文章来源于音频语音与语言处理研究组,作者薛浏蒙
语音转换(Voice Conversion)旨在将源说话人语音中的音色转成目标说话人音色,同时保持源语音中的语言内容不变。在实际应用中,目标说话人所处的录音环境可能是嘈杂的,导致录制的目标说话人语音数据带噪。直接使用带噪数据建模语音转换模型必然会降低语音转换的质量。如何在目标说话人只有带噪数据的“低质”场景下构建高质量的语音转换系统是一个具有挑战性的任务。
Glow-WaveGAN相关推文
npujcong,公众号:语音之家论文推介:Glow-WaveGAN—学习一种用于高质量语音合成的语音表征
Glow-WaveGAN 2相关推文
雷怡,公众号:语音之家论文推介:Glow-WaveGAN 2—高质量的零资源语音合成与转换


图1 发表论文截图

图2 扫码直接看论文
语音转换的目的是将源说话人语音中的音色转成目标说话人音色,同时保持源语音中的语言内容不变。语音转换拥有诸多应用场景,例如:AI配音、个性化语音合成、基于娱乐或者隐私保护目的的语音通话等。近年来,随着深度学习的发展,语音转换的效果取得了巨大提升,常用方法包括基于生成对抗网络(generative adversarial network, GAN)的方法、基于自编码器(autoencoder)和变分自编码器(variational autoencoder, VAE)的方法以及基于流(Flow)的方法等。 在真实的应用中,源说话人和目标说话人的语音中不可避免地包含有录音时的环境噪声,例如用户在嘈杂的环境中提供的录音数据或者来自互联网中的数据(found data)。这就要求语音转换方法对噪声具有鲁棒性。现有的噪声鲁棒语音转换方法大多是解决源语音中的背景噪声,将带噪的源语音转换为目标说话人的干净语音为前提构建语音转换系统。也就是说,目标说话人的语音通常被假定是在录音棚录制的高质量数据。而在模型训练中使用带噪语音无疑会影响语音转换质量,因此针对带噪目标说话人的语音转换是一项具有挑战性的工作。 目前有一些针对带噪目标说话人的研究,其中,一种直观的方法是在训练前使用语音增强工具去除噪声干扰[4],但由于语音增强导致的语音失真不可避免地会影响转换语音的质量。受降噪自编码器[5]的启发,降噪训练也成为一种噪声鲁棒语音转换方法。有研究工作表明,降噪训练可能会导致较差的可懂度,而语音增强的预处理方法会带来较低的说话人相似度[4]。此外,在两阶段的语音生成方法中,梅尔谱通常被用来作为转换模型和声码器两阶段的中间表征。尽管以梅尔谱作为中间表征,但转换模型和声码器通常是在两个不同的语音表征分布上进行建模,导致转换模型和声码器两者之间存在分布不匹配的问题,影响转换结果的质量。 本文旨在解决目标说话人只有带噪数据场景下的高质量语音转换问题。基于之前的Glow-WaveGAN [1],本文提出一个噪声无关的语音表示学习方法用于高质量的带噪目标说话人语音转换。我们不使用梅尔谱来重构波形,而是使用隐空间中的另一种语音表征,并保证转换模型建模的语音表征分布和声码器建模的分布是一致的。在此基础上,我们提出噪声可控的WaveGAN(Noise-controllable WaveGAN,NC-WaveGAN)。NC-WaveGAN中的编码器直接从波形中提取噪声无关的语音潜在表征,然后解码器在FiLM模块的干净/带噪属性控制下重构波形。在NC-WaveGAN中,编码器部分作为鲁棒特征提取器来提取噪声无关的声学特征,解码器部分则通过条件约束来重建干净或带噪语音。基于Flow的转换模型在说话人身份条件的控制下将音素后验(phoneme posteriorgram,PPG)映射到由NC-WaveGAN提取的噪声无关的语音表征上,然后NC-WaveGAN的解码器在FiLM模块的干净属性控制下将语音表征重构成干净语音。实验表明,所提出的NC-WaveGAN可以有效地学习到噪声无关的语音表示,FiLM模块可以灵活地控制干净波形的重构。同时主客观实验表明,无论是在模拟的还是在真实的带噪数据上,所提方法对带噪目标说话人实现了音质高和音色相似度高的语音转换结果。
方案介绍

图3 本文所提出的模型框架图
噪声可控WaveGAN






基于Flow的转换模型
给定非目标说话人干净和带噪语音的配对数据,我们先训练一个NC-WaveGAN得到一个特征编码器来提取噪声无关语音表征z,以及一个可以将z重构成干净或带噪波形的解码器。
给定目标说话人的带噪数据,使用上述训练好的NC-WaveGAN的编码器提取z,并使用一个独立的语音识别模型提取对应的PPG,在此基础上构建一个基于Flow的转换模型。
在转换阶段,给定源语音并提取其PPG,转换模型在目标说话人身份的条件控制下生成z。最后将FiLM中的控制向量设置为“干净”(clean),通过NC-WaveGAN的解码器得到目标说话人的干净语音。
对比方法
Topline: 基于典型的编码器-解码器结构的转换模型,使用HiFi-GAN 作为声码器。训练数据是干净的原始VCTK数据(包括VCTK-clean和VCTK-noise的干净版本)。 Baseline: 基于典型的编码器-解码器结构的转换模型,使用HiFi-GAN 作为声码器。训练数据包括VCTK-clean和经过语音增强预训练模型Uformer[9]降噪预处理后的VCTK-noise。 FlowVC: 基于Flow的转换模型,使用NC-WaveGAN的解码器部分作为声码器。训练数据包括VCTK-clean,VCTK-noise和Real-noise。
表1 三个语音转换模型和两个声码器的训练数据设置

可懂度评估
我们使用开源的语音识别工具WeNet [10]计算词错误率(Word error rate, WER)和字错误率(Character error rate, CER)来评估转换语音的可懂度。结果如表2所示,Topline是基于干净数据训练的,因此获得了最低的WER和CER。Baseline获得了最差的WER和CER,这可能是由于语音增强导致的语音失真造成的。FlowVC无论是在模拟带噪数据还是真实带噪数据上都获得了比Baseline好的结果,说明所提出的方案可以为带噪目标说话人生成可懂度更好的转换语音。
表2 WER和CER结果

自然度评估
我们对带噪说话人转换后的语音进行MOS打分,来评估语音转换的自然度。结果如表3所示,在VCTK-noise测试集上,所提出的方案相比Baseline获得更高的MOS得分。我们认为语音降噪后的失真影响了语音转换的音质。此外,FlowVC直接对NC-WaveGAN中提出的潜在表征的分布建模,消除了转换模型和声码器两个阶段的误差,因此所提出方案的自然度MOS得分高于Topline。对于Real-noise测试集,所提出方案同样也获得了比Baseline高的MOS得分。同时,我们发现,相比VCTK-noise测试集,模型在Real-noise测试集上的得分要低,这可能是由于Real-noise中的混响导致的。
表3 自然度MOS结果

说话人相似度评估
我们对转换后的语音进行了说话人相似度MOS评估。结果如表4所示,在VCTK-noise测试集上,虽然NC-WaveGAN训练数据中不包括VCTK-noise数据,但所提出的方案依然获得了相比其他两个模型较高的得分,说明NC-WaveGAN对未见说话人是鲁棒的。但是在Real-noise测试集上,我们发现所提出的方案的MOS得分要低于Baseline。由于Real-noise带有混响,预训练的增强模型在去噪的同时也去除了混响,我们发现去除混响后有利于提升说话人相似度。而在NC-WaveGAN中,训练数据只考虑了噪声因素,学习到的语音表征中可能包含了混响,这影响了重构语音的说话人相似度性能。
表4 说话人相似度MOS结果

为了更好理解地理解说话人相似度,我们使用开源的预训练说话验证工具Resemblyzer从原始录音和转换后的语音中提取说话人表征,并对其可视化,结果如图4所示。在Topline中,不同说话人分别聚成一簇,同一个说话人的干净语音、带噪语音和转换后的语音的说话人表征是重叠的,说明原始干净语音、带噪语音以及转换后的语音的说话人表征有相似的分布。对于VCTK-noise测试集,可以看到FlowVC 有明显的说话人聚类效果,而Basliene中转换后和原始语音的说话人表征之间有较明显的边界。对于Real-noise测试集,由于包含有混响,FlowVC 在真实带噪语音和转换后的语音的说话人表征之间有很明显的距离,这启发我们下一步将混响因素考虑进模型中来满足更多真实应用场景。

图4 说话人表征可视化结果
噪声无关的语音表征
为了验证学习到的语音表征是噪声无关的,我们随机选择10个带噪说话人的5句干净语音和和5句带噪语音,一共100句进行可视化。使用NC-WaveGAN的解码器提取噪声无关的语音表征z,然后在干净和带噪两种属性控制下分别生成100句干净语音和100句带噪语音。在生成过程中,我们提取经过FiLM调制后的z~,并对z和z~可视化,结果如图5所示。我们可以观察到,在FiLM之前,干净和带噪语音的表征z是混淆在一起的。而经过FiLM后,干净和带噪语音的表征z~之间有明显的边界。这说明所提出的NC-WaveGAN可以有效地学习到和噪声无关的语音表征,同时FiLM可以控制重构波形的干净或带噪属性。

图5 语音表征可视化结果
模拟带噪数据
Source

Target

Topline

Baseline

Proposed

真实带噪数据
Source

Target

Baseline

Proposed

[1] Jian Cong, Shan Yang, Lei Xie and Dan Su. “Glow-WaveGAN: Learning Speech Representations from GAN-based Variational Auto-Encoder For High Fidelity Flow-based Speech Synthesis.” Interspeech (2021).
[2] Lei, Yi, Shan Yang, Jian Cong, Lei Xie and Dan Su. "Glow-WaveGAN 2: High-quality Zero-shot Text-to-speech Synthesis and Any-to-any Voice Conversion." arXiv e-prints (2022): arXiv-2207.
[3] Perez, Ethan, Florian Strub, Harm de Vries, Vincent Dumoulin and Aaron C. Courville. “FiLM: Visual Reasoning with a General Conditioning Layer.” AAAI (2018).
[4] Huang, Chien-yu, Kai-Wei Chang, and Hung-yi Lee. "Toward Degradation-Robust Voice Conversion." ICASSP (2022).
[5] Vincent, Pascal, et al. "Extracting and composing robust features with denoising autoencoders." ICML (2008).
[6] Yamamoto, Ryuichi, Eunwoo Song, and Jae-Min Kim. "Parallel WaveGAN: A fast waveform generation model based on generative adversarial networks with multi-resolution spectrogram." ICASSP (2020).
[7] Vincent, Emmanuel, et al. "An analysis of environment, microphone and data simulation mismatches in robust speech recognition." Computer Speech & Language 46 (2017): 535-557.
[8] Veaux, Christophe, Junichi Yamagishi, and Kirsten MacDonald. "Superseded-cstr vctk corpus: English multi-speaker corpus for cstr voice cloning toolkit." (2016).
[9] Fu, Yihui, et al. "Uformer: A Unet Based Dilated Complex & Real Dual-path Conformer Network for Simutaneous Speech Enhancement and Dereverberation." ICASSP (2022).
[10] Zhang, Binbin, et al. "Wenet: Production first and production ready end-to-end speech recognition toolkit." arXiv e-prints (2021): arXiv-2102.
