Bach 2.0

This is part of my research in the field of Deep Learning. We employ a 3-layer GRU Recurrent Neural Network and, based on the assumption that musical units are equivalent to words in Natural Language Processing, we train our network on a manually-transcribed database, originally composed by Johann Sebastian Bach. For the internal representation, we used NoteWorthy Composer’s NWCTXT format. The visualization below was generated using Stephen Malinowski’s excellent application, Music Animation Machine. We have submitted a research paper to the European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning (ESANN 2019).

One can find below a detailed description of the data we used for training our network:

Suite II for solo cello in D minor BWV 1008: Prelude, Allemande, Courante, Sarabande, Menuett, Gigue
Partita in A minor for solo flute BWV 1013: Courante
Suite in E minor for lute BWV 996: Courante, Sarabande
Suite in A minor for lute BWV 995: Gigue
Sonatas and partitas for solo violin:
Sonata I in G minor: Siciliano, Presto
Partita I in B minor: Corrente, Double, Sarabande
Sonata II in A minor: Andante
Partita II in D minor: Courante, Sarabande, Gigue, Chaconne

All compositions have been transposed in G minor.