人工智能作曲简介,借助深度神经网络技术,AI音乐在旋律和和声方面有了很高的混淆度。本文介绍了AI作曲领域相关的进展和尝试。

注脚

展开查看详情

1.近代 AI 作曲技术

2.CONCERT - Mozer , 1994 网络层级比较浅 输入和输出包括了音符的音高、时长和和弦伴奏 Shrepard 的心理学音高表示空间 [4] 半音音阶 + 五度音阶(即 C、G、D、A 以此类推) 生成时 根据已有的音符和和声计算下一个音符的概率分布 根据概率分布随机抽取音符。 CONCERT 出现在深度神经网络时代之前,包含了大量的手工特征。这些特征抓取的过程正在被深度神经网络慢慢取代。 RNN – Concert [3]

3.RNN - Hexahedria [5] Hexahedria – Johnson, 复调 生成架构 [5] RNN + 普通的神经网络 (ANN?) RNN - 时间 , 音符之间的关系 ANN - 和声 , 相同时间下不同音高之间的关系 四层架构 前两层 RNN 后两层 ANN 每层的节点之间互相有连接 生成结果已经有相当高的音乐性,旋律连贯,和声也鲜有错误,不过多小节之间的联系相对不大,整体走向仍然较为随机。

4.LSTM – Blues [7] Blues – Eck, Schmidhuber [7] Blues, melody and chords One-hot encoding, 八分音符 高音 – 中央 C 以上一个八度 13 个高音之内 和弦 – 不包括中央 C 以下的 12 个高音之内 和弦用单个音符表示,每个 note 对应一个 chord 三层架构 输入 -> hidden -> 输出 Hidden – 4 LSTM (melody) + 4 LSTM (chords) Melody + chords -> melody LSTM Chords -> chords LSTM 评价 和弦的表示方式不够丰富,训练集是手工撰写 生成效果旋律相对单调,和声前后有一定的连贯性也有一些蓝调的味道 和后期研究相比其随机性仍然比较明显

5.LSTM - Magenta [21] Magenta – Google Brain [21] Lookback RNN – 在有重复的乐段上手动添加标注,以便网络在训练时能更快速地找到乐段之前重复的规律 Attention RNN - 在循环连接上添加了遮罩向量,通过控制不同历史状态的权重对当前生成的影响力,可以更好的让模型注意到与当前生成相关的历史状态 评价 处理乐曲重复段落的性能上有显著提升

6.LSTM – hierarchical LSTM [20] Hierarchical LSTM – Tsinghua , Wu [20] 旋律三层级 – 小节、节拍、音符 每个层级对应一个 LSTM 网络 1 小节 – 4 节拍, 1 节拍 – 4 音符 Note 的最短时长 – 16 分音符 生成策略 从上至下 – 先由小节层生成特征值,然后用这些特征来生成每个小节内的节拍特征,然后用小节和节拍的特征再生成单个音符 评价 音乐质量明显优于单层级结果 – 节奏间的关联、乐句的完整度 解决大量 8/16 分音符堆积 – 单层级节拍和小节关系不明显

7.LSTM – 其他 凯尔特旋律生成系统 [9] – Sturm et al., 凯尔特音乐 节奏生成系统 [10] – Makris et al., 打击乐 One-hot

8.AE – DeepHear [11] DeepHear – 拉格泰姆旋律生成系统 , Sun [11] One-hot , 16 分音符 600 小节格拉泰姆音乐库 每四个小节为一组 架构 逐层训练,整体微调 生成时,将 16 维随机向量输入到中间层让其解码 评价 音乐性较高,多小节间的衔接稍显突兀 明显缺陷 – 生成结果时会重复训练集中的某段音乐,缺乏独创性

9.AE - 单元选取拼接旋律生成系统 [12] 单元选取拼接旋律生成系统 – Bretan et al. [12] 颗粒度为小节,将已有的音乐片段按小节拼接起来 训练集 - 爵士、民谣、古典、摇滚等 4235 张乐谱 17 万小节 + 移调和时间变化 模型架构 手动制定 10 个乐曲特征 如特定音高范围里的音符数量、节奏组合等 组成一个 9675 维度的向量 AE 编码至 500 维度 为某一小节选取最优的下一小节 语义相关性 LSTM – 500 维向量匹配 拼接代价 LSTM – 当前小节最后一个音和下一个音之间的转换和谐度 排序整合 语义 + 拼接 评价 音乐是以小节为单位拼接而成 样本选取和评估方式和基于音符作曲的系统不太一样 生成结果也更符合串烧而非作曲的定义

10.RBM – Deepbach [8] DeepBach – 合唱系统, Hadjeres et al. [8] 模拟巴赫混声四部合唱的作曲过程 为一段旋律添加和声时,从结尾反向推进 常常 更容易 编码音符用乐理标记而 非 MIDI 音高 ( A♯ 和 B♭ 不同 ) 架构 两个前馈网络 + 两个 LSTM 网络 ( 时间向前向后 ) 6 前音符 + 6 后音符 + 3 其他声部音符 -> 当前最佳音符 训练 - 反复 从乐曲库中随机选取一个音符及其周围音符 生成 - 整个时间线上使用一个类 jibs 采样 反复 修改音符完成 评价 生成结果已经能和巴赫创作的音乐有极高的混淆度

11.此外还有 Lattner et al. 的卷积 RBM 约束采样 [15] 在研究生成莫扎特式的奏鸣曲时,先使用了 RBM 来学习乐曲集中的织体等局部特征,然后在生成过程中手动添加全局结构特征(例如 ABBA)、 音调、拍号( 3/3 、 3/4 等)。生成时先随机初始化一段乐曲,然后用约束采样反复进行梯度下降优化。

12.GAN - Midinet [13] MidiNet – 流行旋律生成系统, Yang et al. [13] one-hot , 16 分音符量化 1022 首流行音乐旋律 归一化至两个八度范围内 , 添加所有的移调 架构 生成器 + 判别器 调节器 (conditioner) 4 个卷基层,每层 被 附加到生成器的层上,用以限定和声走向 引进 RNN 进行前馈,以便生成时输入几个音符作为起始旋律。 评价

13.GAN – Musegan [17] MuseGAN – Dong et al. 多轨序列式音乐生成和伴奏 把音乐分为乐段、乐句、小节、节拍和像素五个层级,逐层生成 给每个音轨同时输入了两个噪声向量,一个是所有音轨共有,另一个为每条音轨单独生成 同样的方法也用在了处理小节之间的关系上。 最后所有的音轨和小节作为一个样本,和训练集中的样本一起被输入判别器中进行训练

14.总结 AI 作曲借助深度神经网络已经有了飞速发展,尤其是在旋律和和声两个方面有很高的混淆度,如果再加一些后期混编完全可以达到上市的水准。 深度神经网络的潜能还远远没有被人类完全挖掘出来,或许几十年甚至几年后的 AI 作曲和现在相比将完全是另一幅光景。 不过, AI 作曲距离完全自动化还有很长的一段路要走。目前的研究大多数仍然仅限于处理音高、节奏,以及每个音符的时长和音符之间的休止。而完成一首成品还有大量的后期编排工作,如钢琴曲则还需要力度、速度、踏板以及音色、混响等,流行乐曲则需要多音轨、多乐器、后期混排、以及歌词、人声等等,这些仍需要人为完成。此外,旋律和和声的部分也不能说是尽善尽美,目前的研究仍然只针对相对较短的乐句或乐段进行生成,时间一长很容易显得单调、随机,难以被应用在故事性强的乐曲需求上。 生成结果 可能 过拟合到训练集中已有的音乐, 导致 这类侵权风险 或许不久的将来, AI 作曲会被应用在各种烘托气氛的场景上,例如游戏或视频背景音乐,届时只需要调整几个需求参数便可完成定制。而专注于音乐本身、对音乐性有极高要求的场景,如演唱会、唱片专辑等, AI 作曲最终能否完全取代人类作曲家仍然值得怀疑,不过接下来很长一段时间内发生的可能性很小。 AI 作曲将会是人类改变音乐市场秩序的工具之一,而音乐的终极灵感将仍旧掌握在人类自己手中。

15.参考文献 – I [1] Jean-Pierre Briot , Gaëtan Hadjeres , and François Pachet . Deep Learning Techniques for Music Generation - A Survey, Sep 2017. arXiv:1709.01620. [2]Jose David Fernandez and Francisco Vico . AI Methods in Algorithmic Composition: A Comprehensive Survey, Feb 2014. arXiv:1402.0585. [3]Michael C. Mozer . Neural network composition by prediction: Exploring the benefits of psychophysical constraints and multiscale processing. Connection Science, 6(2–3):247–280, 1994. [4]Roger N. Shepard. Geometric approximations to the structure of musical pitch. Psychological Review, (89):305–333, 1982. [5]Daniel Johnson. Composing music with recurrent neural networks, August 2015. http:// www.hexahedria.com /2015/08/03/composing-music-with-recurrent-neural-networks/. [6]Sepp Hochreiter and Jürgen Schmidhuber . Long short-term memory. Neural Computation, 9(8):1735–1780, 1997. [7]Douglas Eck and Jürgen Schmidhuber . A first look at music composition using LSTM recurrent neural networks. Technical report, IDSIA/USI-SUPSI, Manno , Switzerland, 2002. Technical Report No. IDSIA-07-02.

16.参考文献 – II [8] Gaëtan Hadjeres , François Pachet , and Frank Nielsen. DeepBach : a steerable model for Bach chorales generation, June 2017. arXiv:1612.01010v2. [9]Bob L. Sturm, João Felipe Santos, Oded Ben-Tal, and Iryna Korshunova . Music transcription modelling and composition using deep learning, April 2016. arXiv:1604.08723v1. [10] Dimos Makris , Maximos Kaliakatsos-Papakostas , Ioannis Karydis , and Katia Lida Kermanidis . Combining LSTM and feed forward neural networks for conditional rhythm composition. In Giacomo Boracchi , Lazaros Iliadis , Chrisina Jayne, and Aristidis Likas , editors, Engineering Applications of Neural Networks: 18th International Conference, EANN 2017, Athens, Greece, August 25–27, 2017, Proceedings, pages 570–582. Springer, 2017. [11]Felix Sun. DeepHear – Composing and harmonizing music with neural networks, Accessed on 13/1/2018. https:// fephsun.github.io /2015/09/01/neural- music.html . [12]Mason Bretan , Gil Weinberg, and Larry Heck. A unit selection methodology for music generation using deep neural networks, December 2016. arXiv:1612.03789v1. [13]Li-Chia Yang, Szu -Yu Chou, and Yi- Hsuan Yang. MidiNet : A Convolutional Generative Adversarial Network for Symbolic-domain Music Generation, March 2017. arXiv:1703.10847v2. [14]Geoffrey E. Hinton and Ruslan R. Salakhutdinov . Reducing the dimensionality of data with neural networks. Science, 313(5786):504–507, 2006.

17.参考文献 – III [15]Stefan Lattner , Maarten Grachten , and Gerhard Widmer . Imposing higher-level structure in polyphonic music generation using convolutional restricted Boltzmann machines and constraints, December 2016. arXiv:1612.04742v2. [16]Ian J. Goodfellow , Jean Pouget-Abadie , Mehdi Mirza, Bing Xu, David Warde -Farley, Sherjil Ozairy , Aaron Courville , and Yoshua Bengio . Generative adversarial nets, June 2014. arXiv:1406.2661v1. [17] Hao -Wen Dong, Wen-Yi Hsiao, Li-Chia Yang, and Yi- Hsuan Yang. MuseGAN : Symbolic-domain Music Generation and Accompaniment with Multi-track Sequential Generative Adversarial Networks, September 2017. arXiv:1709.06298v2. [18]Martin Arjovsky , Soumith Chintala , Léon Bottou . Wasserstein GAN, Jan 2017. arXiv:1701.07875. [19]Ishaan Gulrajani , Faruk Ahmed, Martin Arjovsky , Vincent Dumoulin , Aaron Courville . Improved Training of Wasserstein GANs, Mar 2017. arXiv:1704.00028. [20]Jian Wu, Changran Hu, Yulong Wang, Xiaolin Hu, and Jun Zhu. A Hierarchical Recurrent Neural Network for Symbolic Melody Generation, Dec 2017. arXiv:1712.05274. Elliot Waite. Generating Long-Term Structure in Songs and Stories, Jul 15, 2016. https:// magenta.tensorflow.org /2016/07/15/lookback- rnn -attention- rnn