Publication:
A Deep Learning Approach to generate Beethoven's 10th Symphony

Research Projects
Organizational Units
Journal Issue
Abstract
Luidwig van Beethoven composed his symphonies between 1799 and 1825, when he was writing his Tenth symphony. As we dispose of a great amount of data belonging to his work, the purpose of this project is to work on the possibility of extracting patterns on his compositional model and generate what would have been his last symphony, the Tenth. Computational creativity is an Artificial Intelligence field which is still being developed. One of its subfields is music generation, to which this project belongs. Also, there is an open discussion about the belonging of the creativity, to the machine or the programmer. Firstly we have extracted all the symphonies' scores information, structuring them by instrument. Then we have used Deep Learning techniques to extract knowledge from the data and later generate new music. The neural network model is built based on the Long Short-Therm Memory (LSTM) neural networks, which are distinguished from others since these ones contain a memory module. After training the model and predict new scores, the generated music has been analyzed by comparing the input data with the results, and establishing differences between the generated outputs based on the training data used to obtain them. The result's structure depends on the symphonies used for training, so obtained music presents Beethoven's style characteristics.
Luidwig van Beethoven compuso sus sinfonías entre 1799 y 1825, cuando estaba componiendo su décima sinfonía. Como disponemos de una gran cantidad de datos provenientes de su obra, el objetivo de este proyecto es investigar en la posibilidad de extraer patrones en su modelo composicional y generar lo que hubiese sido su última sinfonía, la Décima. La creatividad computacional es un campo de la Inteligencia Artificial que se encuentra todavía en desarrollo, uno de los campos que abarca la creatividad computacional es la generación de música, en el que se encuentra este proyecto. Además, existe un debate abierto sobre si las máquinas pueden llegar a ser creativas, o el mérito debe atribuirse al programador. En primer lugar hemos extraído la información de las partituras de todas sus sinfonías, estructurándolas por instrumento. A continuación hemos utilizado técnicas de aprendizaje automático para extraer conocimiento de los datos y posteriormente predecir música. El modelo neuronal se ha basado en las redes neuronales LSTM (Long Short-Therm Memory), que se diferencian del resto dado a que disponen de memoria. Tras entrenar el modelo y predecir nuevas partituras, la música generada ha sido estudiada comparando los datos de entrada con dichos resultados, y estableciendo diferencias entre los resultados obtenidos dependiendo de los datos usados para generarlos. La estructura de los resultados depende de las sinfonías que se han usado para aprender de ellas, por lo que la música obtenida presenta características reconocibles del estilo de Beethoven.
Description
Trabajo de Fin de Grado, Facultad de Informática UCM, Departamento de Ingeniería del Software e Inteligencia Artificial, Curso 2019/2020
Unesco subjects
Keywords
Citation