文章来源于音频语音与语言处理研究组,作者薛浏蒙

语音转换(Voice Conversion)旨在将源说话人语音中的音色转成目标说话人音色,同时保持源语音中的语言内容不变。在实际应用中,目标说话人所处的录音环境可能是嘈杂的,导致录制的目标说话人语音数据带噪。直接使用带噪数据建模语音转换模型必然会降低语音转换的质量。如何在目标说话人只有带噪数据的“低质”场景下构建高质量的语音转换系统是一个具有挑战性的任务。

西工大音频语音与语言处理研究组与腾讯AI Lab合作论文Learning Noise-independent Speech Representation for High-quality Voice Conversion for Noisy Target Speakers近期被语音研究旗舰会议Interspeech2022接收。论文针对上述任务,提出一种与噪声无关的语音表示学习方法,实现对带噪目标说话人的高质量语音转换。具体来说,在我们之前提出的Glow-WaveGAN[1] 框架基础上,结合Glow-WaveGAN 2[2] 对新说话人鲁棒性的优势,本文进一步提出噪声可控的WaveGAN (noise-controllable WaveGAN, NC-WaveGAN)实现对只有带噪数据的目标说话人的噪声无关语音特征提取以及干净音频重构。NC-WaveGAN中的编码器直接从波形中提取噪声无关的语音潜在表征,基于Flow的转换模型在说话人身份条件的控制下将音素后验映射到由NC-WaveGAN提取的噪声无关的语音表征上,然后NC-WaveGAN的解码器在FiLM [3] 模块的噪声属性控制下将语音表征重构成干净语音。实验表明,所提出的NC-WaveGAN可以有效地学习到噪声无关的语音表示,FiLM模块可以灵活地控制干净波形的重构。同时主客观实验表明,无论是在模拟的还是在真实的带噪数据上,所提出的方法对带噪目标说话人实现了音质高和音色相似度高的语音转换结果。本文对该论文进行分享与解读。

Glow-WaveGAN相关推文

npujcong,公众号:语音之家论文推介:Glow-WaveGAN—学习一种用于高质量语音合成的语音表征

Glow-WaveGAN 2相关推文

雷怡,公众号:语音之家论文推介:Glow-WaveGAN 2—高质量的零资源语音合成与转换


论文题目:Learning Noise-independent Speech Representation for High-quality Voice Conversion for Noisy Target Speakers
作者列表:薛浏蒙,阳珊,胡娜,苏丹,谢磊
合作单位:腾讯 AI Lab
论文原文:https://arxiv.org/abs/2207.00756v1


图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 (Noise-controllable WaveGAN,NC-WaveGAN),一个基于Flow的转换模块。Glow-WaveGAN[1]学习语音隐藏分布而不是梅尔谱来进行高质量语音合成,受此启发,NC-WaveGAN旨在学习噪声无关的隐藏表征来去除目标语音中的噪声,以用于下游的声音转换任务。基于Flow的语音转换模型的目的是根据PPG建模隐藏表征的分布。在推理时,转换模型将原说话人语音的PPG映射到目标说话人噪声无关的语音表征,NC-WaveGAN的解码器部分将噪声无关的语音表征重构成干净波形。


图3 本文所提出的模型框架图

噪声可控WaveGAN

我们之前提出的WaveGAN是以无监督的方式学习语音分布,用于重构或下游语音合成任务。学习过程可以描述为

其中w是语音波形,z是潜在表征。q(z)是通过无条件VAE学习w的潜在分布。在这个公式中,潜在表征z包括了语音的所有方面,例如语言内容、说话人、通道等。如果语音w包含噪声,则z也包含噪声信息。
为了解决这个问题,我们提出噪声无关语音表征学习方法,来实现干净语音的重构。为此,我们使用一个特征线性调制模块(feature-wise linear modulation,FiLM)来对潜在表征z应用仿射变换来自适应地影响编码器输出。这里FiLM以一个二维属性嵌入c作为输入,c表示波形的干净或带噪属性:

因此,c可以用来作为属性向量来控制波形生成的干净或带噪条件。FiLM学习两个线性函数f和h并通过放射变换调制输入z:

其中z是从q(z)采样得到并以c为约束来计算得到调制后的z~。
值得注意的是,原始WaveGAN是从输入w重构回相同的波形w。我们认为成对的干净和带噪语音共享相同的语音内容和说话人音色,因此NC-WaveGAN从输入波形w重构波形w'来保证干净/带噪属性仅仅从FiLM模块中获得,这里的w'是和w干净/带噪属性相反的波形。因此公式2可以写成:

这样,我们将没有调制的z当做噪声无关的语音表征。
NC-WaveGAN的训练策略和原始WaveGAN相似:

其中Lrecon是多分辨率STFT 损失[6], DKL(q(z|w)||p(z)) 是Kullback-Leibler距离。此外,NC-WaveGAN也同样包括基频预测器和对抗训练,用来提升重构语音的音质。最后,完整的损失函数如下:

其中Lpitch和Ladv分别是基频重构损失和对抗损失,λ1, λ2和λ3的设置和原始WaveGAN一样。

基于Flow的转换模型

在文本中,转换模型根据PPG对噪声无关的语音分布q(z)建模。我们使用基于Flow的生成模型通过可逆变换来最大化q(z)的后验概率。我们基于Glow-TTS来构建转换模型。因为PPG和潜在特征z有相同的帧率,因此我们去掉Glow-TTS中的单调对齐搜索模块。此外,为了将Glow-TTS扩展到多说话人场景,我们使用一个说话人查询表,并将说话人嵌入作为基于Flow的解码器的控制条件。
本文所提出的针对带噪目标说话人语音转换方法的建模和转换过程如下:
  1. 给定非目标说话人干净和带噪语音的配对数据,我们先训练一个NC-WaveGAN得到一个特征编码器来提取噪声无关语音表征z,以及一个可以将z重构成干净或带噪波形的解码器。
  1. 给定目标说话人的带噪数据,使用上述训练好的NC-WaveGAN的编码器提取z,并使用一个独立的语音识别模型提取对应的PPG,在此基础上构建一个基于Flow的转换模型。
  1. 在转换阶段,给定源语音并提取其PPG,转换模型在目标说话人身份的条件控制下生成z。最后将FiLM中的控制向量设置为“干净”(clean),通过NC-WaveGAN的解码器得到目标说话人的干净语音。


实验结果
实验数据
为了获得成对的干净和带噪语音用于训练NC-WaveGAN,我们使用来自CHiME-4 [7] 挑战赛中的噪声对VCTK [8] 数据进行数据扩充。CHiME-4有4种不同场景下的噪声,包括公共汽车、咖啡馆、步行街和街道路口,一共8.5小时。VCTK数据集包括109个英文说话人,共计44小时。我们随机选取55个说话人作为干净说话人,记作VCTK-clean,其余54个说话人的语音混合了信噪比在5~25dB范围内随机采样的噪声,记作VCTK-noise。我们把VCTK-noise中的说话人作为带噪目标说话人,他们的干净数据不会用于所提出方案的训练。除了这种模拟的带噪目标说话人外,我们还从网上收集了一个真实带噪说话人,记为Real-noise,来评估所提出的方法在真实噪声场景下的性能。Real-noise包括530句话,有明显的噪声和轻微的混响。

对比方法

  • 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 三个语音转换模型和两个声码器的训练数据设置



HiFiGAN声码器训练使用干净的原始VCTK数据(包括VCTK-clean和VCTK-noise的干净版本)。NC-WaveGAN训练使用VCTK-clean的干净和带噪版本。

可懂度评估

我们使用开源的语音识别工具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

p239_036_p363_source 戳我即可听音频



Target

p239_036_p363_target 戳我即可听音频



Topline

p239_036_p363_topline 戳我即可听音频




Baseline

p239_036_p363_baseline 戳我即可听音频



Proposed

p239_036_p363_proposed 戳我即可听音频



真实带噪数据

Source

0000000008_source 戳我即可听音频



Target

0000000008_target  戳我即可听音频



Baseline

0000000008_baseline  戳我即可听音频



Proposed

0000000008_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.