1. 磐创AI-开放猫官方网站首页
  2. 机器学习
  3. TensorFlowNews

现在你可以通过深度学习用别人的声音来说话了

现在你可以通过深度学习用别人的声音来说话了

编译 | Arno

来源 | Medium


语音合成(Text-to-speech,TTS)是指文本到音频的人工转换,也可以说给定一段文字去生成对应的人类读音。人类通过阅读来完成这项任务,而一个好的TTS系统是让计算机自动完成这项任务。

在打造这样一个系统时,一个非常有趣的地方是为生成的音频选择哪个声音,是男人还是女人的声音?声音是大还是小?

在使用深度学习创建TTS时,这有一个限制,你必须收集文本-音频的数据集,而录制演讲的演讲者可能是固定的——因为你不可能有无限多个演讲者!

所以,如果你想为自己或他人的声音创建音频,唯一的方法就是收集一个全新的数据集。

来自谷歌名为 Voice Cloning 的人工智能研究使计算机可以用任何类型声音发出声音。

Voice Cloning是怎样工作的

很明显,为了让电脑能够使用任何类型声音发出声音,它需要理解两件事:它读的是什么以及它是如何读的。

因此,谷歌研究人员设计的语音克隆系统有两个输入:我们想要读取的文本和我们想要用来阅读文本的语音样本。

例如,如果我们想让蝙蝠侠读“我爱披萨”这句话,那么我们会给系统两样东西:“我爱披萨”的文本和一小段蝙蝠侠的声音样本,这样它就知道蝙蝠侠的声音应该是什么样的。而电脑的输出应该是蝙蝠侠说“我爱披萨”的声音音频!

从技术角度来看,系统分为3个顺序组件:

  1. 给定我们希望使用的声音的一个小音频样本,将语音波形编码为一个固定的维向量表示

  2. 给定一段文本,也把它编码成向量表示。将语音和文本这两个向量结合起来,将它们解码成声谱图

  3. 使用声码器将声谱图转换成我们可以听到的音频波形。

现在你可以通过深度学习用别人的声音来说话了

系统的简化版本

在文章中,我们对这三个部分分别进行了训练。

在过去几年中,语音合成系统在深度学习社区中得到了很多研究关注。事实上,有很多基于深度学习针对语音合成的解决方案都非常有效。

这里的关键是,系统能够将编码器从语音中学到的“知识”应用到文本中。

在分别编码后,将语音和文本组合在一个公共的嵌入空间中,然后进行解码,生成最终的输出波形。

克隆声音的相关实现代码

多亏了人工智能社区中开放源码思想的美妙之处,在这里有一个公开可用的语音克隆实现你可以按照下面的介绍这样来使用它。

  1. 首先克隆仓库:

git clone https://github.com/CorentinJ/Real-Time-Voice-Cloning.git

  1. 安装必要的库并确保使用的是Python 3的版本:

pip3 install -r requirements.txt

  1. 在README文件中,你还可以找到下载预训练模型数据集的链接,并尝试一些示例。

  2. 最后,你可以运行以下命令打开GUI:

python demo_toolbox.py -d <datasets_root>

下面是我这边运行操作的一个截图:

现在你可以通过深度学习用别人的声音来说话了

正如你所看到的,右上角的输入框中是我想让电脑阅读的文字:“Did you know that the Toronto Raptors are Basketball champions? Basketball is a great sport.”

你可以点击每个部分下面的 “Random” 按钮来随机化语音输入,然后点击 “Load” 将语音输入加载到系统中。

Dataset 从你选择的语音样本中选择数据集,Speaker 选择说话的人,Utterance 选择输入语音所说的短语。如果想听输入的语音是怎样的,只需点击 “Play” 按钮。

一旦你点击 “Synthesize and vocode” 按钮,算法就会运行。一旦运行结束,你将听到扬声器以某个声音朗读你的输入文本。

你甚至可以录制你自己的声音作为输入,只需要点击 “Record one” 按钮。相信我,这会非常有趣!

更进一步

如果你想了解更多关于这个算法的工作原理,你可以阅读谷歌的官方NIPS论文。这里(https://google.github.io/tacotron/publications/speaker_adaptation/)还有一些音频样本结果。

论文链接:

https://arxiv.org/pdf/1806.04558.pdf

你也许还想

● 知识图谱里的知识表示:RDF

● 一文综述python读写csv xml json文件各种骚操作

● 从零开始实现穿衣图像分割完整教程(附python代码演练)


欢迎扫码关注:

现在你可以通过深度学习用别人的声音来说话了


现在你可以通过深度学习用别人的声音来说话了 点击下方 |  | 了解更多

磐创AI:http://www.panchuangai.com/ 智能客服:http://www.panchuangai.com/ TensorFlow:http://panchuang.net 推荐关注公众号:磐创AI

原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2019/07/08/5bfaa20628/

发表评论

登录后才能评论

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息