Info

This was a project that was built for HackCU 2016.

The source code is available on Github here.


Story

This project started much like any other good hackathon project starts, with a handful of people and a stupid idea. In this case, we all wanted to know about machine learning and nobody knew anything about machine learning, so the best course of action was to do a machine learning project in 48 hours. In general, it's best to do quick hackathon projects with concepts you're already knowledgable about, but we went to HackCU to learn not to win. The project we settled on was to throw a bunch of music into a neural network and attempt to get different (machine generated) music out.

So we set to work, and the first night consisted of learning about neural networks. I quickly realized that in order to train our network, we needed something to convert the data into a more machine-readable format. This is what I spent the majority of my time on. In the end, I was able to convert WAV files into simple CSV data, which could then be quickly processed and analyzed. This was my main contribution to the project, and ended up being quite successful.


outcome

Overall, the project was not successful, but that doesn't mean I didn't learn anything. In this case, I was really glad that my team tackled something we didn't have experience with, something completely new. It's super exciting to exercise the "wouldn't it be cool if..." philosophy, and it's completely acceptable that the answer in this case was "no, no it would not be cool."

From a technical standpoint, I learned a ton about the preprocessing that has to go into machine learning. There's great resources out there for machine learning, and a lot of the complicated stuff is handled through open source libraries that researchers assemble. The hard part is providing the library with meaningful data. This is something that I had difficulty with, and settled with providing the library with just some data. Part of this is just lack of experience on my end, and if I tried this project again, I would be excited to exercise some of the techniques I learned from my signal processing final project.