又快又好! 基于Consistency Model的一步采样歌声转换模型CoMoSVC已开源

在2023年,AI虚拟歌手如AI孙燕姿等已经引起了广泛的关注,而大多数应用都是基于开源框架SoVITS。最近,香港科技大学和微软亚洲研究院推出了一种基于Consistency Model的歌声转换系统CoMoSVC,它在歌声转换速度上与基于Flow的SoVITS系统相媲美,但在自然度和相似度方面大幅超越了原有模型。它的MOS评分(满分5分)比基于Flow的SoVITS系统高出了1分,同时也达到或超过了基于多步采样Diffusion Model的评分。

CoMoSVC为实时高速歌声转换带来了新的可能性,在泛娱乐领域具有广泛的应用价值。目前,CoMoSVC的论文和代码已经向公众开放。以下是对该工作的详细介绍。

作者:陆逸雯,叶蓁,雪巍*,谭旭,柳崎峰,郭毅可*

论文链接:https://arxiv.org/abs/2401.01792

代码链接:https://github.com/Grace9994/CoMoSVC

研究背景 

歌声转换(Singing Voice Conversion,SVC)旨在保持内容和旋律一致时,将一个歌手的声音转换为另一个歌手的声音。通常使用两阶段方法处理这个问题,第一阶段从音频中提取出相应特征,并对其进行编码。然后,第二阶段将音色特征替换为目标音色特征并进行解码来生成转换后的音频,因此生成模型经常在这一阶段被使用。由于扩散模型具有出色的生成能力,基于扩散模型的SVC方法能够获得很好的结果。然而,由于Diffusion model的迭代采样过程,基于Diffusion的SVC推理速度较慢。受到一致性模型的启发,我们提出了一种基于一致性模型的歌声转换方法,该方法既能够实现高质量的歌声转换,又能够实现高速采样。 

本文方案 

1.训练过程

图1. 训练过程

我们提出的CoMoSVC也是一个两阶段的模型,第一阶段通过内容、音高和音量特征来捕捉与音色无关的信息,而歌手ID则用来表示音色信息。在特征提取之后,我们对所有特征向量应用了一个线性层以统一维度,并将它们拼接起来作为第二阶段的条件输入。在第二阶段中,我们首先基于EDM的架构训练一个教师模型,去噪函数使用了非因果的Wavenet结构,向其输入随机采样出的噪声,带噪的梅尔频谱以及第一阶段所得的条件输入以尽可能地还原梅尔频谱,其损失函数可以被定义为:   

接着进行一致性蒸馏,首先通过教师模型的去噪函数对加入随机噪声的梅尔谱图得到一步估计:

学生模型的结构设置为和去噪函数一样,由此得到了两个有不同参数更新方式的神经网络,并分别用其来获得相邻点对的不同输出。一致性蒸馏的训练通过最小化两个输出之间的L2距离来进行。

2.推理过程

图2. 推理过程

如图二所示,推理过程将第一阶段的Speaker ID替换为Target Speaker ID,从而实现歌声转换。教师模型需要通过多次迭代完成采样,而学生模型可以完成一步采样。

3.实验结果

使用两个开源数据集M4Singer和OpenSinger进行实验,所有模型都在NVIDIA GTX4090 单卡GPU上进行100万次迭代训练。

我们做了两个SVC的实验:

  1. 在OpenSinger数据集上训练并将M4Singer中的音频转换为OpenSinger中歌手的音色。

  2. 在M4Singer数据集上训练并将OpenSinger中的音频转换为M4Singer中歌手的音色。

表1. 音色转换主观指标

我们以表1 中的主观评估结果作为主要参考标准,结果显示CoMoSVC的自然度与基于扩散模型的SVC方法相当,相似度超过了所有baseline模型,并且比基于扩散模型的SVC方法至少提升了0.05。此外,与Flow版本的SoVITS-SVC相比,CoMoSVC的自然度和相似度的MOS打分都增加了约1。就推理速度而言,CoMoSVC的实时因子(RTF)比Flow版本的SoVITS-SVC优0.002。与基于Diffusion的SVC方法相比,CoMoSVC的速度比DiffSVC快45倍以上,比Diffusion版本的SoVITS-SVC快近500倍。