Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I've definitely considered it, but so far I haven't found many single-composer datasets that are large enough to train with. I also think it would be pretty cool to try training it with music from specific musical periods.


I've wondered if it is possible to teach such subdivisions by simply including them as metadata and then using the same metadata as primes. So for example, you'd train your RNN on a big dataset of Bach, Mozart, etc, where each line of music is prefixed "BACH |" and then when you went to generate samples, you'd pass in as initial state "BACH |". Presumably the RNN would gradually learn that "BACH |" samples sound different from "MOZART |" samples and would adjust the conditional probabilities appropriately. Similarly if you wanted specific time periods. (And if the style metadata tends to be forgotten even with the LSTM, the metadata tag could be reinjected every _n_ steps.)


(The nice thing about this metadata hack, if it worked, is that you could deploy variants of it without having to rewrite or modify your existing RNNs, necessarily. For example, you could do this easily with 'char-rnn' by simply using 'paste' or 'sed' to prefix some metadata to each line of the input file, without any changes to 'char-rnn' itself, since it already reads in files and has a '-primetext' option in generating samples. I've been meaning to try this out.)


bach doesn't have enough music? it seems like his music would be particularly suited, based on the results i listened to


I was able to find quite a bit of Bach music, actually, and I used it when I was first experimenting with this idea. At the time, I hadn't added dropout, so the output wasn't as interesting. I'll definitely try retraining the updated network with Bach.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: