# observations.piano_midi_de

piano_midi_de(path)

Load the classical piano archive of piano-midi.de. It consists of 130 pieces randomly split into 92 training, 25 testing, and 13 validation pieces (Poliner & Ellis, 2007). Data is loaded in the piano-roll representation (Boulanger-Lewandowski, Bengio, & Vincent, 2012), i.e., a binary matrix specifying which notes occur at each time step.

#### Args:

• path: str. Path to directory which either stores file or otherwise file will be downloaded and extracted there. Filename is Piano-midi.de.pickle.

#### Returns:

list of x_train, x_test, x_valid, where each is a list of sequences. Each sequence is itself a list of time steps, and each time step is a list of the non-zero elements in the piano-roll at this instant (in MIDI note numbers, between 21 and 108 inclusive).

Boulanger-Lewandowski, N., Bengio, Y., & Vincent, P. (2012). Modeling temporal dependencies in high-dimensional sequences: Application to polyphonic music generation and transcription. In International conference on machine learning.

Poliner, G. E., & Ellis, D. P. (2007). A discriminative model for polyphonic piano transcription. EURASIP Journal on Applied Signal Processing, 2007(1), 154–154.