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
Log in or sign up for Devpost to join the conversation.