scroll and skip down for music

What is this?

Another neural network that generates music. While the output does not generally sound “like” the song that was fed to the network, each input song tends to produce its own ambient signature. The network is therefore both songeater and SONGSHTR.

AKA…

An LSTM+VAE neural network implemented in Keras that trains on raw audio (wav) files and can be used to generate new wav files. Like char-rnn for music.

Hasn’t this been done before?

Yes. Karpathy came first.

My model feeds on raw audio (as opposed to MIDI files or musical notation)… so GRUV would be the closest comparison. Since GRUV was written in Python/Keras, I was able to borrow liberally from the code, especially the processing and backend stuff (although I never actually got the program to run… py 2 v 3 issues I believe). Thank you to Matt & Aran.

This is a summary of other things that are out there.

So what’s new?

Two major changes to the char-rnn/GRUV type models:

In addition, there was a lot of hyper-parameter tweaking. Since the aim of this exercise was to create aesthetically pleasing sounds, I couldn’t really test by quantitatively (eg. validation loss or perplexity). All tweaking subjective.

All right, show us what we’ve got here…

Ambient is one description of it. Which is another way of saying the compositions are slow-building - best if you have some time to just let them be. Brian Eno, this is not. Also headphones recommended.