Teaching Deep Networks to Improvise Jazz

Algorithmic musical composition is the process of composing music automatically by a computer.
This task, dating back to the 1950s, has been broadly studied using several methods, including Grammar (musical rules), Markov-Chains (note to note predictor), Evolutionary methods and Deep learning (Deep Neural Networks, LSTMs).
In this project, we shall use LSTM Neural Networks to generate jazz improvisation, based on great jazz musicians: Charlie Parker, Cannonball Adderley, Sonny Stitt and Phil Woods.
Using Rejection Sampling, we shall improvise unique jazz composition that incorporate the user’s musical taste.
This project characterize the user’s musical taste, that conveys a preference for certain musical features of jazz improvisation, and generate musical improvisations that match those features.