AI换声,只需5秒音源,这个网络就能实时“克隆”你的声音
本文中,Google 团队提出了一种文本语音合成(text to speech)神经系统,能通过少量样本学习到多个不同说话者(speaker)的语音特征,并合成他们的讲话音频。此外,对于训练时网络没有接触过的说话者,也能在不重新训练的情况下,仅通过未知说话者数秒的音频来合成其讲话音频,即网络具有零样本学习能力。
目前,已经有人将该论文实现并在 GitHub 上发布了开源项目,目前该项目标星超 9.5k,fork 数是 1.5k。
AI 换声 GitHub代码:
https://github.com/CorentinJ/Real-Time-Voice-Cloning?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
简介
传统的自然语音合成系统在训练时需要大量的高质量样本,通常对每个说话者,都需要成百上千分钟的训练数据,这使得模型通常不具有普适性,不能大规模应用到复杂环境(有许多不同的说话者)。而这些网络都是将语音建模和语音合成两个过程混合在一起。本文工作首先将这两个过程分开,通过第一个语音特征编码网络(encoder)建模说话者的语音特征,接着通过第二个高质量的TTS网络完成特征到语音的转换。
两个网络可以分别在不同的数据集上训练,因此对训练数据的需求量大大降低。对于特征编码网络,其关键在于声纹信息的建模,即判断两段语音为同一人所说,因此可以从语音识别(speaker verification)任务进行迁移学习,并且该网络可以在带有噪声和混响的多目标数据集上训练。
为了保证网络对未知(训练集中没有的)说话者仍然具有声音特征提取能力,编码网络在18K说话者的数据集上训练,而语音合成网络只需要在1.2K说话者的数据集上训练。
网络结构
主要由三部分构成:
声音特征编码器(speaker encoder):
1. 语音编码器,提取说话者的声音特征信息。将说话者的语音嵌入编码为固定维度的向量,该向量表示了说话者的声音潜在特征。
2. 序列到序列的映射合成网络
基于Tacotron 2的映射网络,通过文本和1得到的向量来生成对数梅尔频谱图(log mel spectrogram)。
(梅尔光谱图将谱图的频率标度Hz取对数,转换为梅尔标度,使得人耳对声音的敏感度与梅尔标度承线性正相关关系)
3.基于WaveNet的自回归语音合成网络
将梅尔频谱图(谱域)转化为时间序列声音波形图(时域),完成语音的合成。
需要注意的是,这三部分网络都是独立训练的,声音编码器网络主要对序列映射网络起到条件监督作用,保证生成的语音具有说话者的独特声音特征。
总结
本文提出的语音合成网络,能对训练不可见的说话者进行声音合成,并且仅仅依赖于说话者的一小段语音,这使得该网络能够大规模应用于实际环境,也使得语音造假的成本大大降低,类似于之前的deepfake网络。
作者指出该网络生成的合成语音和真实语音仍然是可以区分的,这是因为训练集的数量不足(避免太逼真带来的安全问题)。如果要生成非常逼真的声音,对每个目标说话,仍然需要数十分钟的语音。
论文链接:
https://arxiv.org/pdf/1806.04558.pdf
AI换声,只需5秒音源,这个网络就能实时“克隆”你的声音相关推荐
- GitHub标星近1万:只需5秒音源,这个网络就能实时“克隆”你的声音
作者 | Google团队 译者 | 凯隐 编辑 | Jane 出品 | AI科技大本营(ID:rgznai100) 本文中,Google 团队提出了一种文本语音合成(text to speech)神 ...
- GitHub标星近10万:只需5秒音源就能实时“克隆”你的声音!
作者 | Google团队 译者 | 凯隐 编辑 | Jane 出品 | AI科技大本营(ID:rgznai100) 本文中,Google 团队提出了一种文本语音合成(text to speech)神 ...
- 还在PS里手动描边?AI自动抠图只需5秒
昨日,byteq 开发人员 Benjamin Groessing 在 twitter 上发布了一款基于 Python.Ruby 的深度学习工具 remove.bg.该工具可在 5 秒内移除图像背景(目 ...
- 应用悄悄拿走你的隐私做了什么?只需30秒这个AI给你答案
安妮 编译自 Futurism 量子位 出品 | 公众号 QbitAI "我已经阅读并了解--"可能是当代青年定期撒下的一个谎. 可能你深有体会. 几乎每个下载的App都有用户协议 ...
- 不可思议!英伟达新技术训练NeRF模型最快只需5秒,代码已开源
英伟达将训练 NeRF 模型从 5 小时缩至 5 秒. 你曾想过在 5 秒内训练完成狐狸的 NeRF 模型吗?现在英伟达做到了! 令人不可思议的是,就如谷歌科学家 Jon Barron 在推特上表示的 ...
- 零障碍合并两个模型,大型ResNet模型线性连接只需几秒,神经网络启发性新研究...
点击上方"迈微AI研习社",选择"星标★"公众号 重磅干货,第一时间送达 来源:机器之心 这篇论文探讨了置换对称性(permutation symmetry)如 ...
- 合并excel文件 C语言,再见Ctrl + C!合并100个Excel表格,只需30秒!
原标题:再见Ctrl + C!合并100个Excel表格,只需30秒! 哈喽,大家好!在上篇文章< 你复制粘贴的那么认真,难怪天天加班[Excel教程] >中,我们给大家介绍了4种拆分工作 ...
- 微信哪个电话能转人工服务器,如何联系微信人工客服?掌握好窍门,只需30秒可接通,亲测有效...
原标题:如何联系微信人工客服?掌握好窍门,只需30秒可接通,亲测有效 很多人都会使用微信,但是使用过程中难免会遇到问题,比如账号封号.转错账.支付问题等.如果在机器人自动回答中解决不了问题,想找人工客 ...
- 为何插入10万数据只需2秒
文章目录 一.前言 二.问题 1.url后面useServerPrepStmts是什么? 2.url后面rewriteBatchedStatements是什么? 3.这两个参数对语句执行有什么影响? ...
最新文章
- Visual C++ 对话框增加菜单栏
- mysql null排在最后面
- 旋转函数_一招搞定高中数学函数平移旋转问题
- Thrift使用指南
- SQL SERVER 运维日记
- 群里有朋友关于SAP Spartacus的疑问
- SpringBoot2 参数管理实践,入参出参与校验
- Ineedle驱动方式dpdk测试性能
- 2018年11月27日 分类与集合
- 解决 vs2003 无法启动调试 没有正确安装调试器
- JAVA提示定义常量_如何在Java中定义常量(Constant)
- 求解偏微分方程开源有限元软件deal.II学习--Step 10
- 20. Magento 创建新闻模块(1)
- 演过电影的无人驾驶卡车是如何炼成的?
- 【机器学习系列】MCMC第一讲:蒙特卡罗方法初认识
- MQTT5协议报文格式
- 【数据结构】计算二叉树深度完整C语言代码
- 搭建IMXRT1020单片机开发环境(采用MCUXpressoIDE,包括安装SDK)
- java中获得词根的方法_分析在各大考纲词汇中同时拥有前缀后缀和词根的词(一)...
- 计算机word保存如何操作,电脑word怎么保存 在电脑上word打字怎么保存