大家好,我是 Jack。
今天,给大家介绍一个算法。
AI 算法 5 秒钟,就能克隆你的声音,你信吗?
听听这段音频,猜猜看是 AI 合成音,还是真人录音?
答案是:AI 合成。
这个人的原始声音在这里:
你给这个 AI 克隆声音的算法打几分?
上述两个音频,算法运行起来的效果:
录制一段音频,就可以根据输入的文字,5s 即可自动生成对应的合成音
突然有个大胆的想法,你说女朋友要是哪天突然不承认自己说过了某句话,我就给她造一份!
兄弟们,我做的对吗?

MockingBird

这个算法是基于比较著名的 Real Time Voice Cloning 实现的。
MockingBird 是最近开源的中文版。
论文的名字是:
Transfer Learning from Speaker Verification to Multispeaker Text-To-Speech Synthesis
简单介绍下:
算法分为三个模块:encoder模块、systhesis模块、vocoder模块。
  • encoder模块将说话人的声音转换成人声的数字编码(speaker embedding)
  • synthesis 模块将文本转换成梅尔频谱(mel-spectrogram)
  • vocoder模块将梅尔频谱(mel-spectrogram)转换成(波形)waveform
具体的算法原理,大家可以先看论文:
https://arxiv.org/pdf/1806.04558.pdf
论文还没详细看,等我研究好后,后面有机会再发吧。
今天主要聊聊,这个算法怎么玩。
项目地址:https://github.com/babysor/MockingBird
有深度学习基础的话,这个应该不难。
就是部署环境,分四步:
  • Anaconda 配置 Pytorch 开发环境
  • 根据项目 requirements.txt 安装第三方库依赖
  • 下载权重文件
  • 下载训练集,这个几十G,有点大
具体的配置方法,直接看这里:
https://github.com/babysor/MockingBird/blob/main/README-CN.md
环境搭建的方法,可以参考我写过的两篇文章:
都搞定了,就可以运行代码了。
有两种模式可以启动,Web 模式和工具箱模式。
在项目根目录运行:
python web.py

即可开启 Web ,打开地址 http://localhost:8080 就能操作了。
这个界面比较简陋,建议使用工具箱模式。
python demo_toolbox.py -d <datasets_root>

datasets_root就是下载好的数据集的地址。

总结

Enjoy it!
喜欢的话,来个再看喽~
如果人多的话,后面我再出个详细的算法原理剖析和训练教程。
我是 Jack,我们下期见~
·················END·················

推荐阅读

继续阅读
阅读原文