ONE-SHOT VOICE CONVERSION USING STAR-GAN

单位:网易游戏 伏羲组
会议:2020 ICASSP
作者:Wang Ruobai, Ding Yu

demo链接:https://sniperwrb.github.io/icassp2020添加链接描述

abstract

做one-shot VC,用starGAN做语音转换,额外的speaker id做说话人标记,模型依赖一个中文,一个英文数据集(一共38人),可以成功实现一句话的VC,并且模型可以随着数据量的增加而更新。

1. introduction

VC的应用除了单纯的speech-to-speech,还可以用在TTS上,因为TTS的韵律是由数据集决定的,很难人为的进行修改,因此可以通过VC完成快速的韵律修改。

VC的方法可以分为基于ASR系统的,和non-ASR的。基于ASR的缺点是它难以完成多语言和方言的VC,而auto-encoder,GAN则不存在这个问题。因为non-ASR based system不需要时间对齐的phone完成转换,而是直接在source和target domain进行映射。

【1】用GAN网络中的判别器判断生成器生成的更像source还是target,【9】提出的cycle-GAN则是尝试将转换后的再次恢复为source,这样可以提高语音的质量;但是这两者都只能完成两个特定说话人之间的one-to-one的转换。【2】提出star-GAN可以完成many-to-many的转换,但是仅限于训练集内的说话人。

本文是对star-GAN的延伸–one-shot star-GAN。

2. METHODOLOGY

starGAN-VC用one-hot embedding表示说话人,仅能区分训练集内的说话人;本文用ID embedding表示说话人,可能是不在训练集中的。
首先想到的是将语句中的声学特征线性映射之后逐帧求均值用作embedding表示,但是由于语句中的文本信息不同,直接这样做效果并不好。

2.1 one-shot VC

因此,本文引入GST从source/target中生成ID embedding,跟据不同说话人将声学特征进行归一化。因为单句的语音对于系统而言很难产生有意义的统计值(比如均值,方差),说话人的归一化对于解决unseen speaker用处不大。
本文用一个均值/方差对所有说话人进行声学特征归一化,并且用这个均值/方差对新的说话人在inference过程中进行归一化。
在这里插入图片描述

2.2. Improvements and implementation details

starGAN-VC的bn层是c=5的2d conv,但是对于本文太小了影响合成语音质量;但是把c增大,encoder没有过滤掉所有的source说话人信息—information leakage。因此本文用softmax代替bn层,模拟ASR中PPGs的计算过程。
实验用一个F2M的频谱图,展示softmax之后的结果会对共振峰层面的影响更大。

生成器的结构图
在这里插入图片描述
实验用到96-d梅尔谱包络和36-d MFCC,实验证明MFCC比mel 谱包络具有更明显的噪声信息。

4. experiments
4.1 datasets

用到三个数据集
VCTK—109人,每人20min,包含silence和occasional noise;
CMU-Arctiic—18人,每人1h;
THCHS30—-55人,每人平均30min
supplemental data ----3个自录的高质量女性说话人(每人10h)作为补充。

(1)训练数据集
英文18人(CMU-Arctiic18人) + 中文19人(THCHS16人+supplemental speaker–3人,各有1h)
英文约18h,中文约16*0.5+3=11h
(2)测试数据集
VCTK一个英文说话人+训练集说话人,测试集的语句都是unseen的

4.2 Evaluation

有三种测试情况
(1) C 1 I T S C_1^{ITS} C1ITS目标说话人包含在训练集中
(2) C 2 O S C_2^{OS} C2OS目标说话人un-seen,one-shot VC
(3) C 3 I N C C_3^{INC} C3INC增量训练是指用新说话人的数据改进训练好的网络。在训练VC网络的时候。在one-hot emb中为新说话人预留一个槽位,并且存储训练好的模型。

增量训练(incremental training) 是指学习系统能不断地从新样本中学习新的知识,并能保存大部分已经学习到的知识。所以增量学习主要关注的是灾难性遗忘(Catastrophic forgetting),平衡新知识与旧知识之间的关系,即如何在学习新知识的情况下不忘记旧知识。

==迁移学习(transfer learning)==迁移学习是指用已存有的知识对不同但相关领域问题进行求解的一种机器学习方法。更关注的是如何减少 源域与目标域不同分布之间的差异。

baseline model:starGAN-VC模型,记为 C 0 S G C_0^{SG} C0SG

测试集选4句话,在上述四个系统进行测试,一共得到16句话。19个测试者参与听测,5-scale quality ,5-scale similarity。

进行了cross-gender(CF-EM)和within-gender(CF-CF)的测试----MOS和T-test测试,证明比baseline好

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值