量子位 宣布 | 公众年夜众号 QbitAI

现在,AI已经能克隆任意人的声音了!

比如,前一秒的美玉学姐还在宿舍查寝:

视频加载中...

5秒就能克隆本人语音美玉学姐不查寝却吃起了桃桃丨开源

后一秒就打算吃个桃桃:

视频加载中...

切实其实便是鬼畜区的福利啊!

(像我们后面就试着白学了一下华强买瓜)

此外,还有正经的方言版,比如台湾腔就完备冇问题:

视频加载中...

这便是GitHub博主Vega最新的语音克隆项目MockingBird,能够在5秒之内克隆任意中文语音,并用这一音色合成新的说话内容。

这一模型短短2个月就狂揽7.6k星,更是一度登上GitHub趋势榜第一:

社区里更是涌入了无数人求预演习模型和保姆级教程。

于是,我们也借此机会试了试这个“柯南仿照器”,并与开拓者本人进行了一次深♂入交谈。

5秒合成一段语音,效果如何?

我们先选用一位路人小姐姐的声音,试着让他像华强一样,来一句“这瓜保熟吗”,效果如何?

嗯,果真小姐姐的语气没有华强的凶猛,不过也准确还原了本人的音色:

视频加载中...

这不禁让我们有了一些大胆的想法。

试试只用一声喊叫的语音(乃至小于5s),让AI直接输出一段“我从未见过如此……之人”:

视频加载中...

从视频中来听,虽然有一些破碎,不过整体效果还是可以的。

至于诸葛村落夫本人,我们反向操作,让他吃起了桃桃:

视频加载中...

有生之年,竟然能听见诸葛村落夫撒娇……

输出效果现在看来不错,那么输出语音质量究竟如何呢?

我们决定用开头台湾腔天生的语音作为样本,再次合针言音试试。

模型再次顺利地合成了“我要买一百个瓜”,看来合成的音频质量效果也是不错的:

视频加载中...

除此之外,我们还试了一下其他文本,基本效果都挺OK。

但我们创造,如果采取强烈感情/腔调的语音(电影、电视剧中的演员语音效果),效果就会和预想中有点差别。

例如,在某位同事的强烈建议下,我们拜托作者用最新的预演习模型白学了一把华强:

视频加载中...

嗯?原来的黑社会混混,真就变成了一位内向白学家……

实在,为了防止不法分子利用,作者并没有上传最新的模型。

不过,现在几个预演习版本的音色模拟效果都已经挺不错了,你也可以上手调戏一下这个AI。

已有预演习模型,可直接试玩

那么,这个AI模型究竟要怎么用呢?

作者表示,模型支持在Windows、Linux系统上运行,在苹果系统M1版上也有成功运行案例。

但我们偏偏用双核英特尔Core i3(1.1GHz)的苹果系统试着运行了一下……

事实证明,Mac系统也可以直接将调教好的预演习模型拿来用!

由于模型框架用的是PyTorch,须要提前安装一下环境,这里用的的版本是Python3.9.4和PyTorch1.9.1,再用pip安装一下ffmpeg、webrtcvad。

然后,下载MockingBird下requirements.txt中的必要包:

pip install -r requirements.txt

运行情形如图:

成功后,下载预演习模型,更换掉MockingBird中的干系文件夹:

再启动python demo_toolbox.py,当你看到这个界面的时候,就解释运行成功了:

这个时候,就可以上传你想要“克隆”的工具的声音。
(支持wav格式,噪音等滋扰尽可能低)

上传完录音后,选择须要的合成器、声码器,然后在文本框中输出想要合成的语音文本,等待一下子。

点击Replay,就能听见合成的声音了!

如果想要输出的话,点击Export输出就行,全体界面的基本操作如下:

我们在这台电脑上考试测验创造,10秒以内的样本+10个字语音文本,合成的韶光比较快,如果vocoder采取Hifi-GAN的话,险些一秒就能演习完成。

当然,如果你想用自己的数据集和方法演习一个语音克隆模型、或是想演习声码器(vocoder),也可以查看项目中的干系解释(文末附项目地址)。

据作者表示,当涌现把稳力模型、同时loss(丢失)足够低的时候,就表明演习完成了:

“中文版”SV2TTS模型已开源

那么这个柯南变声器……哦不,实时语音克隆是如何实现的呢?

大略来说,这是一个语音到文本再到语音的任务。

要完成这个任务,则须要以下三个元件组成的一种模型构造:

说话人编码器(Speaker encoder)合成器(Synthesizer)声码器(Vocoder)

首先,由说话人编码器(绿色部分)来提取指定音频的特色向量,相称于学习说话人的音色。

详细来说,是利用一个高度可扩展的神经网络框架,将从语估中打算得到的对数谱图帧序列映射到一个固定维度的嵌入向量。

在得到这种数字化的音频之后,我们就进入了传统的TTS(Text-to-Speech)环节:

也便是将上述的说话人的语音特色融入指定文本,产生对应的语音频谱。

这一部分的合成器(蓝色部分)采取范例的解码器-编码器构造,中间还加了把稳力机制。

再以梅尔频谱(Mel-Spectrogram)作为中间变量,将合成器中天生的语音频谱传到声码器(赤色部分)中。

在这里利用深度自回归模型WaveNet作为声码器,用频谱天生终极的语音。

实在,上述流程基本都来自谷歌在2019年开拓的框架SV2TTS。

当时的预演习模型是英文的,但也可以在不同的数据集上单独演习,以支持另一种措辞。

开拓者对“开拓另一种措辞的模型”给出的建议是:

1、一个足够大的无标注数据集(1000人/1000小时以上),用来演习第一部分Speaker encoder。

2、一个相对小的有标注数据集(300-500小时),用来演习第二、三部分Synthesizer和Vocoder。

这正是Vega在“汉化”这一模型时所碰着的最大的困难。

他提到,中文多说话人的开源数据集比较少,质量也没达到预想效果,常常演习难以乃至无法收敛。

在多方征采之后,他终极确定了三个中文语音数据集:aidatatang_200zh、magicdata、aishell3。

个中aidatatang_200zh包含了600人200小时的语音数据,magicdata包含1080人755小时的语音数据,aishell3则有85小时的88035句中文语音数据,

而针对难以收敛的问题,Vega在演习早期加入了Guided Attention以提高收敛速率,再进行多个数据集稠浊演习的办法,提高中文版的演习成功率。

在不修正模型的核心架构的根本上,他又引入了HiFi-GAN,使vocoder的推理速率比原来的WaveRNN两到三倍,基本可以在5秒内输出克隆语音。

“希望更多人一起来玩”

那么这个项目背后还有哪些故事呢?

我们与作者Vega聊了聊。

其实在问到开拓这一项目的初衷时,他说:最开始只是出于兴趣。

业内已经成熟的TTS技能、可以实时克隆语音的SV2TTS、还有近期的小冰发布会,这都使Vega对语音合成产生了极大的兴趣。

因此,一方面想要考试测验改进一下这类学术项目的可玩性,同时也抱着海内开拓者可以一起探索更多中文语音合成的愿景,他就开始利用业余韶光进行开拓。

但这一完备个人的项目在初期就收到了意想不到的热度。

不仅标星数有7.6k,社区中也呈现出了大量新的改进反馈,包括不少模型改进建媾和项目优化点。

这使得这一项目越来越完全。

现在,Vega已经把这次的履历分享给做西班牙语等其他外语的开拓者,未来也可能会把干系成果补充到现在项目中。

他也提到,这一模型现在已经有了很多潜在的商业化场景。

比如为不想录音或

在交谈中,Vega也向我们透露了他正在拓展的方向。

比如跨措辞的语音合成,能够让实时翻译器终极实现说话人音色的翻译,或帮助面向多地区发行的影视作品中的配音转化语种。

当然,现阶段暂时不会去落地太详细的运用,而是把接口和根本能力做好,让社区其他开拓者去实现多个有代价的场景。

Vega笑道,在运用这方面紧张是广大网友们在探索,他打赞助。

当然,他也提到:

项目现在还是处在一个抽芽阶段,要在实时性、泛性、效果中找到最佳效果还面临着许多困难。

比如由于模型逻辑会根据标点符号做断句成多段笔墨输入,独立并行处理,因此文本的标点符号会影响语音合成的质量。

还有感情化的语气、方言口音、自然停顿等等,也是模型现在面临的问题。

以是,他希望有更多的开拓者和爱好者一起加速这个项目的演进。

而关于自己,Vega表示,他在16年就从北美Facebook返国创业,目前正在BAT事情。

他现阶段的事情项目内容包括供应更低本钱的沉浸式AI语音互动,紧张方向与AI、云原生和元宇宙方向探索比较同等。

而这也是他个人最大的业余爱好。

在末了,Vega表示:

我们可以期盼未来,在元宇宙等虚拟天下里面,跟我们互动的不再是念固定台词的NPC,而是一些生动的AI人物,以及一个熟习或者你想象该当有的声音在对话。

项目地址:https://github.com/babysor/MockingBird/blob/main/README-CN.md

演习者教程:https://vaj2fgg8yn.feishu.cn/docs/doccn7kAbr3SJz0KM0SIDJ0Xnhd

参考链接:[1]https://www.bilibili.com/video/BV1sA411P7wM/[2]https://www.bilibili.com/video/BV1uh411B7AD/[3]https://github.com/CorentinJ/Real-Time-Voice-Cloning/issues/30

— 完 —

量子位 QbitAI · 头条号签约

关注我们,第一韶光获知前沿科技动态