第9章 深度学习在信号处理中的应用

本章将介绍使用生成式建模技术(如RBM)创建新音符的案例研究。在本章中,我们将介绍以下主题:

  • 介绍并预处理音乐MIDI文件;
  • 建立RBM模型;
  • 生成新的音符。

在本节中,我们将读取乐器数字接口(Musical Instrument Digital Interface,MIDI)文件库,并将它们预处理为适合RBM的格式。 MIDI是存储音符的格式之一,可以将其转换为其他格式,如.wav、.mp3、.mp4等。MIDI文件格式存储各种类型的事件,如音符开始(Note-on)、音符结束(Note-off)、节奏(Tempo)、拍号(Time Signature)、曲目结束(End of track)等。但是,我们主要关注音符的类型——何时开始以及何时结束。

每首歌都被编码成一个二进制矩阵,其中行代表时间,列代表开始和结束音符。在每个时间点,开始一个音符并结束同一个音符。假设在n个音符中,音符i在时间点j开始并结束,位置\boldsymbol{M}_{ji}=1\boldsymbol{M}_{j}(n+i)=1,其余的。

所有的行一起组成一首歌。目前,在本章中,我们将利用Python代码将MIDI歌曲编码为二进制矩阵,之后可以在受限玻尔兹曼机器中使用该矩阵。

我们来看看预处理MIDI文件的先决条件。 ...

Get 深度学习实战手册(R语言版) now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.