Project Name: Exploring Generative Models For Creating Chord Progressions
Role: Programmer (Machine Learning, Python)
Paper: Exploring Generative Models For Creating Chord Progressions
The project was developed in the “DT2313 Musical Communication and Music Technology” course at KTH Royal Institute of Technology, Stockholm, Sweden, Spring 2017 by Jonathan Adam and Adrian Latupeirissa under the supervision of Kjetil Falkenberg Hansen.
We explore various approaches to generating chord progressions using methods involving generative models. With a dataset of compositions from Bach and his contemporaries, we train a series of hidden Markov models of various orders. We use these HMMs to harmonize an unﬁgured bass, both in real time (in collaboration with a player) or with knowledge of the full bass line. The voice leading is performed through an ”expert system” algorithm based on music-theoretical constraints. We also attempt to train a LSTM recurrent neural network on the raw data, to see whether this strategy can simultaneously track harmonic and melodic issues.