Inspiration

We have a strong passion for music in some genres such as epic music or classical music. We would love to expand such genres by contributing to them some of our own pieces. However, we know nothing about music theory to compose anything. That's when we thought why don't we use what we actually know to make music. The idea of an AI creating music is not something too new, but it's also not something that was very heavily invested on. DeepComposer is our own better version of another music making program that we based our code on with new data of two different corpuses of music. We also experiment with its ability to do transfer learning across datasets

What it does

DeepComposer is a Deep Learning based music generation model based on Neural Network. Our aim is to make it generate lively music

How I built it

We applied Tensorflow Deep Learning of Google with Python to develop a music composer

Challenges I ran into

The code we relied on used old version of tensorflow so we have to make changes in order for it to work. The amount of time to code and debug also took longer than expected, leading to the case that we don't have time to make an application for users.

Accomplishments that I'm proud of

Finishing the code and testing the models ourselves. There are many cases which the network fails to make exact pieces but we see the model can transfer across two datasets

What I learned

Team work in a project, coding in tensorflow

What's next for DeepComposer

We analyzed and come to an conclusion that in order for DeepComposer to compose more lively music, we need:

-More data in the future

-Extract more music feature in the process of encoding midi file for the network to learn better

-We planned to make a network which is not only invariant in time, but also invariant in notes using

ConvolutionalLSTM Network. But we failed to make and debug that model because of time limitation, so we decided to stick with the old version and believe in the future, it will be a good direction to try

Built With

  • tensorflow
Share this project:

Updates