Joseph L. Chu作品, 在30分钟的日本流行摇滚乐队上训练
☟Priya Pramesi作品,训练于Joanna Newsom的音乐。
https://youtu.be/q0ZdSAkGo48
很遗憾的是char-rnn在抽取音频信号的更高级的表示上是有天然的不足。最好的结果也只是输入数据的噪音版罢了。在机器学习里面,这种情况同“过拟合”有关,即模型在训练集上的效果很好,而对没有见过的测试集数据的效果很差。
在训练过程中,模型起初在训练集上和测试集上表现都很差,而后开始逐渐转好。但是如果训练时间过长,就会导致模型的泛化能力下降,从而发生过拟合。研究者们通常会在模型开始过拟合前停止训练。
过拟合在这种创造性任务中其实不算是一个“问题”,因为对现有音乐的重新排列也是一种创作的方式,而很难和“归纳”区分开。比如David Cope就说过“所有的音乐本质上都是灵感上的抄袭”(当然这话有点讽刺因为他自己曾被指控发表伪科学和直接的抄袭)。
2016年9月DeepMind发布了WaveNet。这个神经网络框架能够通过连续的采样抽象出出音频的高级表示。
WaveNet网络结构里用到的空洞卷积示意图
WaveNet 样本在8位数值上的概率分布
WaveNet并没有用RNN学习音频在时间上的表示,而是使用CNN,即卷积神经网络。CNN学习的是过滤器的组合。虽然CNN通常被用来处理图像数据,但WaveNet通过CNN可以用空间卷积的方式来处理时序数据。
如果我们仔细了解一下Wavenet作者们的背景,会发现很多有意思的WaveNet的先驱们。
- Sender Dieleman是端到端音乐音频学习论文的第一作者,这篇文章是早期用神经网络一个样本一个样本地处理原始音频的一个应用,这里是为了做乐种分类。
- Aaron van der Oord是Pixel RNN的第一作者,该文章介绍了一个可以一个像素接一个像素地生成图像
- 大数据文摘后台对话框内回复“音频”下载论文
- Alex Graves,除了有很长时间处理演讲模型与RNN外,还在2015年做了一个如何用神经网络生成具有语义的演讲文章的讲座。
- 讲座链接:
- https://youtu.be/-yX1SYeDHbg?t=2545
我最喜欢的是Sageev Oore用WaveNet生成了下面这首简单的钢琴曲。Sageev当时正处在为谷歌大脑工作的休假期间。
☟打开链接观看欣赏音乐
https://youtu.be/xTVwYFpK5Mo
Sageev Oore在弹奏WaveNet生成的音乐
在2017年4月,Magenta项目在WaveNet的基础上创造了NSynth,这是一个用来分析和生成单声道的乐器声音的模型。他们同位于纽约的谷歌创造实验室Google Creative Lab,共同推出了一个以NSynth驱动的“音乐生产者”的实验。。