LSTM机器学习生成音乐
LSTM机器学习生成音乐
在网络流量预测入门(二)之LSTM介绍中对LSTM的原理进行了介绍,在简单明朗的 RNN 写诗教程中介绍了如何使用keras构建RNN模型,然后生成五言唐诗。因此,如果对LSTM不了解,建议想去看一看LSTM相关的文章。
在这篇博客中,将介绍如何使用keras构建lstm模型,然后自动生成音乐。(当然这些音乐只是简单的纯音乐)
代码地址:lstm-music:https://github.com/xiaohuiduan/lstm-music
生成的音乐:auto_music:https://github.com/xiaohuiduan/lstm-music/blob/main/auto_music.mid
实际上,使用LSTM生成音乐,与RNN生成诗词并没有什么很大的不同,原理都是相通的,而在简单明朗的 RNN 写诗教程中,详细的介绍了代码的执行流程,感兴趣的可以借鉴参考。
下面关于音乐(或其组成)的解释,并不是很
严谨(甚至可能是错误的),不过,在这篇博客的目的并不是为了来介绍音乐的组成以及原理,主要是为了使用LSTM,望勿怪。
数据集介绍
数据集来自Classical-Piano-Composer。部分数据如下所示,一共有92首音乐。
音乐是mid类型的文件,关于具体说明,参见How to Generate Music using a LSTM Neural Network in Keras。
去繁化简,从最简单的角度来说,我们可以理解为音乐都是由音符(note)组成的就