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

歌声合成 (Singing Voice Synthesis, SVS) 旨在根据歌唱和乐谱生成歌声的一类技术,是语音合成领域的一项重要任务。SVS任务通常需要专业歌手棚录的足量歌唱数据,如何在只有目标人录制语音的条件下,合成具有目标音色的歌声,是一项具有挑战的任务。

歌声合成是西工大音频语音与语言处理研究组(ASLP@NPU)的重要研究方向。近期,由西工大音频语音与语言处理研究组(ASLP@NPU)和网易伏羲合作的论文“Learn2Sing 2.0: Diffusion and Mutual Information-Based Target Speaker SVS by Learning from Singing Teacher”被语音研究顶级会议Interspeech2022接收。该论文在提出了一种基于扩散模型(Diffusion Model)和互信息 (Mutual Information, MI) 的SVS方法 Learn2Sing 2.0。与Learn2Sing 1.0类似,Learn2Sing 2.0也是通过向歌唱老师学习,为目标说话人生成高表现力的歌唱语音。目前该论文的代码已经开源。本文对该论文工作进行分享。

首先欣赏一下基于开源歌声合成语料库Opencpop合成的一段歌声

《月满景山》

Opencpop - 月满景山 戳我可听音频

来源:网易云音乐(网易伏羲团队制作)

https://music.163.com/#/song?id=1957459775&userid=1531382845



论文题目:

Learn2Sing 2.0: Diffusion and Mutual Information-Based Target Speaker SVS by Learning from Singing Teacher

作者列表:

薛鹤洋,王新升,张雍茂,谢磊,朱鹏程,毕梦霄

论文原文:

https://arxiv.org/abs/2203.16408

Demo&Code:

https://welkinyang.github.io/Learn2Sing2.0



图1 发表论文截图


图2 扫描直接看论文


1. 背景动机
歌声合成 (Singing Voice Synthesis, SVS) 旨在根据歌唱和乐谱生成具有高度表现力的歌声,具有各种潜在的应用场景,近年来吸引了越来越过的关注。常规的SVS方案是以歌词和乐谱作为输入生成声学特征,例如梅尔语谱图 (mel-spectrogram) 或者直接生成最终波形。而为了训练SVS模型,通常需要一个由专业歌手录制的、用MusicXML或MIDI文件标记的歌唱语料库。然而,用常规方法来为一个不擅长唱歌的人合成其歌声是极具挑战,高质量数据采集是极大的瓶颈。与歌声数据相比,语音数据是更容易获取。因此,为一个只有语音数据的目标说话人构建一个SVS系统是一个有趣的课题。本文的重点是在没有歌唱训练数据的情况下为目标说话人合成高质量的歌声。


图3 基于教师-学生学习框架实现无歌声训练数据发音人的歌声合成


Learn2Sing1.0

作为早期关注该任务的研究,Mellotron [1] 通过基于Tacotron2-GST的多说话人语音合成模型,将参考音频的节奏 (rhythm) 和音高转移到目标说话人上。为了在推理过程中摆脱参考音频的依赖,我们提出了Learn2Sing 1.0 [2],该方法为目标说话人在一个歌唱老师的帮助下训练SVS模型,使得在推理阶段就像常规的SVS系统一样只需要歌词和乐谱就能生成目标说话人的歌唱语音而不需要输入参考音频。具体来说,Learn2Sing 1.0会训练独立的时长模型和对数基频 (Log-scale Fuandamental Frequency, LF0) 预测模型来在推理阶段提供音素时长和音高曲线。此外,考虑到说话和唱歌的发音模式之间的显著差异,域对抗训练 (Domain Adversarial Training, DAT) [3] 被用来在自回归解码器中分离风格信息和声学特征。最近,Liu等人提出了另一种使用类似Learn2Sing 1.0 框架的方法 [4],其中包括颤音建模的F0预测模块被用来生成自然的歌唱声音。但使用有限的歌声训练数据来显式的预测基频是很困难的,生成过程中的不准确的音高曲线也限制了这些以F0预测为基础的方法。而上述的方法都是基于自回归模型逐帧预测目标声学特征的,这也使得推理过程非常缓慢。语音转换 (Voice conversion, VC) 是另一种为没有歌声数据的目标说话人合成歌声语音的方案,但这种方案要么需要参考音频,要么需要预先通过SVS系统生成一个高表现力的源说话人的歌唱语音,使得整体流程变得很冗长。


相关链接

小薛,公众号:西工大音频语音与语言处理研究组[论文分享] LEARN2SING: 通过老师学习歌唱的目标说话人歌唱合成


2. 方案介绍
为了缓解上述问题,我们提出了一种基于扩散模型 (Diffusion Model) 和互信息 (Mutual Information, MI) 的SVS方法 Learn2Sing 2.0。与Learn2Sing 1.0类似,Learn2Sing 2.0也是通过向歌唱老师学习,为目标说话人生成高表现力的歌唱语音。不同的是,Learn2Sing 2.0首先生成一个被不同说话人共享的中间表征,例如,有/无歌唱语料库的说话人,然后用额外的风格信息,即说话或歌唱,恢复最终的目标特征。也就是说,这个中间特征需要抹平不同风格之间的差异,然后基于这个中间特征,解码器根据特定的风格来还原最终的目标特征。而因为音高是区分说话和歌唱的关键风格因素,为此我们选择了音素级的mel-spectrogram(音素内部的音高是被平均的)来作为这种中间特征。得到中间特征后,解码器负责将中间特征根据相应的风格信息还原最终的目标特征。因为扩散模型具有强大建模能力,可以避免由L1/L2损失函数造成的过平滑问题,所以我们选择了基于分数的Diffusion解码器来逐步的还原目标特征。由于每个说话人都对应着一种特定的风格,即说话或唱歌,因此有必要确保说话人的嵌入是独立于风格的,反之亦然。为此,我们使用了MI来实现说话人和风格的解耦。


图4 Learn2Sing2.0的训练和推理过程


如图4所示,输入的音素、音高和说话人的嵌入被一个编码器编码,然后用一个长度调节器对得到的特征进行上采样。在我们的任务中,音高是最关键的风格因素,在训练阶段,编码器用音素、音高和说话者嵌入作为输入,生成不带有风格信息(因为同一音素中的所有帧都是一样的)的音素级平均的mel-spectrogram。然后,扩散解码器预测概率密度函数的梯度。在推理阶段,编码器首先生成预测的中间特征,音素时长信息可以由预先训练好的歌唱时长模型或人工标注的时长文件提供。然后,扩散解码器通过求解常微分方程逐步重建具有歌唱风格的音高曲线,最后生成目标说话人的歌唱声音。
我们使用的扩散解码器基于Grad-TTS [5],其前向随机微分方程和逆向常微分方程如下所示:




为了估计并最小化说话人和风格嵌入之间的互信息,我们采用了vCLUB [6]的方法。vCLUB是一种仅需样本就能估计出说话人和风格嵌入之间相互信息的方法,它只需要用样本来估计相互信息的上限值。有了说话人和风格嵌入的样本对,MI损失函数如下所示:

最终的损失函数如下所示:

对于基于扩散的解码器,采用较少的推理步骤是加快推理过程的一个有效方法。然而,直接减少解码步骤可能会降低合成语音的质量。为了在较少的解码步骤下依然能够合成高质量的语音,我们引入了一个基于最大似然的快速采样算法 [7],该算法不使用常微分方程来作为逆向过程而是通过求解如下的随机微分方程来进行解码。




3. 实验结果
实验使用了接近5小时的内部女声歌唱数据来作为歌唱老师 Teacher,使用标贝开源女声语音合成数据DB-1和另一个内部女声数据作为两个歌唱学生: Student-1和Student-2。所有的数据都被降采样到22,050Hz,RefineGAN被使用作为Vocoder来将Mel-spectrogram转换为波形。
实验对比了Learn2Sing 1.0和Learn2Sing 2.0在歌唱老师和歌唱学生生成歌声的表现。其中主观指标包括了自然度和说话人相似度,客观指标包括了F0 MAE和实时率 (Real Time Factor, RTF)。
结果如表1所示,在Learn2Sing 1.0和Learn2Sing 2.0架构下,具有歌唱建模数据的Teacher在常规SVS任务中的MOS值分别为3.85和4.0,这说明这两种方法都能很好地进行歌唱合成,Learn2Sing2.0效果上更胜一筹。Learn2Sing 1.0在F0 MAE方面优于Learn2Sing 2.0,这是因为Learn2Sing 1.0使用了真实的F0曲线作为输入。
在Learn2Sing任务中,两个学生的不同模型合成的歌唱样本在所有评价指标上都不如Teacher生成的样本。这一现象说明,与常规SVS任务相比,缺乏目标说话人的歌唱数据使Learn2sing成为一项更具挑战性的任务。与Learn2Sing 1.0相比,所提出的Learn2Sing 2.0在所有评价指标方面都取得了明显的优势,特别是在说话人相似度方面,所提出的方法对学生1和学生2的MOS值分别比Learn2Sing 1.0高20.7%和16.4%。在推理速度方面,Learn2Sing2.0的RTF只有Learn2Sing 1.0的51%,表明Learn2Speech2.0的推理速度很快,这归功于快速采样方案,使我们在推理阶段使用较少的解码步骤。


表1 95%置信区间的MOS的实验结果,F0 MAE和RTF的实验结果


如表2所示的消融实验的结果表明了每个组成部分的有效性和Learn2Sing 2.0的良好设计。


表2 消融实验的MOS打分


4. 样例展示

歌曲 《怎样》合成效果:

Teacher:

Teacher合成效果 戳我可听音频


Student-1:

原始语音:
Student-1原始语音戳我可听音频


歌声合成结果:

Student1合成效果(没有歌唱数据建模)戳我可听音频


Student-2:

原始语音:
Student-2原始语音 戳我可听音频


歌声合成效果:

Student2合成效果(没有歌唱数据建模)戳我可听音频


Demo网页:

https://welkinyang.github.io/Learn2Sing2.0/

开源代码:

https://github.com/WelkinYang/Learn2Sing2.0


5. 相关工作

Opencpop

歌声合成的研究依赖于高质量的标注数据。由网易伏羲语音与音乐团队、上海视觉艺术学院流行音乐舞蹈学院、西工大音频语音与语言处理研究组、同济大学设计创意学院联合发布的中文精标歌声合成数据集Opencpop,正式在wenet开源社区开放下载,当前下载量已经近五百次,多个最新歌声研究工作已经使用该数据作为实验数据。

相关链接

朱鹏程,公众号:语音之家全球首个中文精标歌声合成开源数据Opencpop正式发布


VISINGER

和语音合成类似,一个典型的歌声合成系统通常由声学模型和声码器构成,声学模型根据乐谱生成中间声学特征,声码器根据中间声学特征来生成波形。尽管这种两段式的系统在歌声合成任务上已经取得了良好的效果,但是声学模型和声码器在训练和推理过程中的差异还是会导致合成效果的下降。具体来说,声码器训练过程使用了真实声学特征来生成波形,但在推理过程中使用声学模型产生的声学特征来生成波形,二者的差异可以导致推理过程的合成效果有下降。所以需要采用一些策略来缓解这个问题,如微调声码器和在声学模型训练中使用对抗策略等。
一个更直接的方法就是直接使用完全端到端的模型来替换两段式的模型。理论上端到端模型可以获得更好的音质并且训练过程更简单。其中,VITS采用VAE来连接声学模型和声码器,采用变分推理和对抗训练的策略来训练端到端模型,实现良好的合成效果。我们在VITS的基础上提出VISinger,即在VITS基础上进行改进得到一个完全端到端的歌声合成系统,主要改进包括:时长模型改进、F0预测、基于CTC Loss的音素预测、Note归一化等。

相关链接

张雍茂,公众号:语音之家论文推介丨端到端的歌声合成系统VISinger


6. 参考文献
[1] R. Valle, J. Li, R. Prenger, and B. Catanzaro, “Mellotron: Multispeaker expressive voice synthesis by conditioning on rhythm, pitch and global style tokens,” in 2020 IEEE International Conference on Acoustics, Speech and Signal Processing, ICASSP 2020, Barcelona, Spain, May 4-8, 2020. IEEE, 2020, pp. 6189–6193.
[2] H. Xue, S. Yang, Y. Lei, L. Xie, and X. Li, “Learn2sing: Target speaker singing voice synthesis by learning from a singing teacher,” in IEEE Spoken Language Technology Workshop, SLT 2021, Shenzhen, China, January 19-22, 2021. IEEE, 2021, pp. 522–529.
[3] Y. Ganin, E. Ustinova, H. Ajakan, P. Germain, H. Larochelle, F. Laviolette, M. Marchand, and V. S. Lempitsky, “Domain-adversarial training of neural networks,” J. Mach. Learn. Res., vol. 17, pp. 59:1–59:35, 2016.
[4] R. Liu, X. Wen, C. Lu, L. Song, and J. S. Sung, “Vibrato learning in multi-singer singing voice synthesis,” in IEEE Automatic Speech Recognition and Understanding Workshop, ASRU 2021, Cartagena, Colombia, December 13-17, 2021. IEEE, 2021, pp. 773–779.
[5] V. Popov, I. Vovk, V. Gogoryan, T. Sadekova, and M. A. Kudinov, “Grad-tts: A diffusion probabilistic model for text-to-speech,” in Proceedings of the 38th International Conference on Machine Learning, ICML 2021, 18-24 July 2021, Virtual Event,ser. Proceedings of Machine Learning Research, M. Meila and T. Zhang, Eds., vol. 139. PMLR, 2021, pp. 8599–8608.
[6] P. Cheng, W. Hao, S. Dai, J. Liu, Z. Gan, and L. Carin, “CLUB: A contrastive log-ratio upper bound of mutual information,” in Proceedings of the 37th International Conference on Machine Learning, ICML 2020, 13-18 July 2020, Virtual Event, ser. Proceedings of Machine Learning Research, vol. 119. PMLR, 2020, pp. 1779–1788.
[7] V. Popov, I. Vovk, V. Gogoryan, T. Sadekova, M. A. Kudinov, and J. Wei, “Diffusion-based voice conversion with fast maximum likelihood sampling scheme,” CoRR, vol. abs/2109.13821, 2021.


相关链接

ASLPer,公众号:语音之家论文分享丨NPU-ASLP实验室将携14篇论文参加语音旗舰会议INTERSPEECH2022