状态:存档(代码按原样提供,预计不会更新)
少样本神经语音克隆
我们尝试克隆说话者的声音,而不依赖于说话内容。这意味着我们必须捕捉说话者的身份,而不是他们说的话的内容。我们试图通过为不同的说话者建立一个说话者嵌入空间来实现这一点。
说话者嵌入试图表示说话者的身份(如音高、口音等各种方面),你可以将其视为说话者的语音指纹。
目前我们参考以下论文进行我们的实现:
状态
多说话者生成模型和说话者编码器模型的架构已建立。多说话者生成模型已完成针对84名说话者的适应性训练,使用VCTK数据集在NVIDIA V100 GPU上训练了190000个周期。
说话者适应
VCTK数据集被分为训练集和测试集:84名说话者用于训练多说话者模型,8名说话者用于验证,16名说话者用于克隆。
说话者适应训练
以下命令将在数据集中的前84名说话者上训练模型。
python speaker_adaptation.py --data-root=<vctk数据集路径> --checkpoint-dir=<路径> --checkpoint-interval=<整数>
使用GPU,这可能需要长达20小时。
要在初始训练后将模型适应特定的说话者
python speaker_adaptation.py --data-root=<vctk数据集路径> --restore-parts=<检查点路径> --checkpoint-dir=<路径> --checkpoint-interval=<整数>
这将平均需要10到20分钟。
一些克隆的声音
到目前为止,我们使用说话者适应得到的一些克隆的声音 链接
致谢
引用
如果你发现仓库中的代码有用,请使用以下引用:
@misc{chitlangia2021voicecloning,
author = {Chitlangia, Sharad and Rastogi, Mehul and Ganguly, Rijul},
title = {An Open Source Implementation of Neural Voice Cloning With Few Samples},
year = {2021},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {Available at \url{https://github.com/SforAiDl/Neural-Voice-Cloning-With-Few-Samples/} or \url{https://github.com/Sharad24/Neural-Voice-Cloning-With-Few-Samples/}},
}