Details regarding timeline and progress in the project
- Completed basics of python videos on you tube and also started the libraries like numpy,panda,matplotlib.
- Started watching the TensorFlow Package on you Tube & also read about an article on how to perform automatic music generation.
- Completed Tensor Flow Package and the article.
- Learning and Understanding the code and applying some tweaks to see the results.
The aim of ths Project was to create new piece of music using Piano Notes
- Platform : Google Colab / Jupyter Notebook / Visual Studio Code
- Language : Python 3.8
- Libraries Used : Tensorflow, Music21, Keras, NumPy, Sklearn, tqdm
- Dataset : https://www.kaggle.com/datasets/soumikrakshit/classical-music-midi
- albeniz/ : This is the dataset folder containing various midi files of different composers.
- Code File for Musify.ipynb : In this file, we will build, train and test our model.
- MOD/ : This directory contains optimizer, metrics, and weights of our trained model.
- AI_composed_music.mid : This is a music file of predicted notes.
- Python basics and Libraries Practice Files/ : Contains various files related to python libraries and basics made while learning and practice.
- Tensor_Flow_basics_and_Regression.ipynb : Contains code related to Tensor Flow made while learning and practice.
- Musify Presentation.pptx : Final Presentation of the Project.
- Final Document SOC-Musify.docx
- Final Video SOC-Musify.webm
- STEP 1 : Download the files from the repository by clicking on Code button
- STEP 2 : Install Libraries using pip command (In Anaconda Prompt)
- STEP 3 : Open code.ipynb file using Jupyter Notebook / Visual Studio Code
- STEP 4 : Run all the cells one by one and check the output
- STEP 5 : Wait for the model training as it takes about 7-8 hours
- STEP 6 : Run the last cell and a file named as AI_composed_music.mid will be saved
- STEP 7 : Play the file AI_composed_music.mid
- STEP 8 : You have composed your own music by using AI. Some of the parameters can be tweaked in the code for different results.