Vedant’s status report 4/29/2023

What did you personally accomplish this week on the project? Give files orphotos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

This week I was helping Sachit get the web application working. We decided to work on it together since I have prior experience with Django and this would probably make integration easier.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

Our progress is on track to be done by the demo

What deliverables do you hope to complete in the next week?

In the next week, I hope to integrate my generative music model with the web app interface

Vedant status report 04/23/2023

What did you personally accomplish this week on the project? Give files orphotos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

This week a lot of time and effort was put into pivoting the implementation of the generative music model. After training a transformer model from scratch I quickly realized that given the time and resources I wouldn’t be able to get the results I need training a model from scratch. Following this I decided to use a pretrained model as a starting point and finetune that model for the different genres we presented in our use case requirements. I decided to use the pop music transformer (https://github.com/YatingMusic/remi) as a starting point and fine tune this model with files from the Lakh MIDI dataset segmented by genre.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

I feel that my progress is on track, using a pretrained model means that models would need far lesser training time which makes up for this pivot.

What deliverables do you hope to complete in the next week?

Fine tune the model on the different datasets for the different genres.

Vedant’s status report 04/08/2023

  • What did you personally accomplish this week on the project? Give files orphotos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

I met my goal for the interim demo which was to have an end-to-end pipeline working for music generation. Training the model took a long time, and I was listening to output samples to see what the model did well and what it didn’t.

  • Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

Progress is on schedule, now that I have a working pipeline, I need to train three different models for the three different genres.

  • What deliverables do you hope to complete in the next week?

I plan to discuss possibly fine-tuning a pre trained model with Professor Sullivan, and based on that finding techniques to have the model perform better than it currently is.

  • Now that you are entering into the verification and validation phase of your project, provide a comprehensive update on what tests you have you run or are planning to run. In particular, how will you analyze the anticipated measured results to verify your contribution to the project meets the engineering design requirements or the use case requirements?

This is something I have recently been doing research on, initially, the plan was to use metrics such as tonal distance between the generated MIDI and input MIDI, and the percentage of empty bars generated. But I recently came across a research paper that explored other metrics. I will discuss with Professor Sullivan before finalizing

Vedant’s status report 4/1

 

  • What did you personally accomplish this week on the project? Give files orphotos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).
  • Built on the notebook I had in place from last week. Included data loading and processing and currently working on having the model trained by the interim demo on a smaller dataset
  • Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule? 
    • Progress is on schedule. Once the end to end workflow is completed for the interim demo the same will have to be repeated for the different genre datasets
  • What deliverables do you hope to complete in the next week?
    • Aim to train the model on one genre to have it working by the interim demo

Vedant status report 3/25

  • What did you personally accomplish this week on the project? Give files orphotos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).
    • Completed a jupyter notebook with a complete model declaration, optimizer set up and training loop
  • Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule? 
    • Progress is on schedule but the dataset is proving a little difficult to work with
  • What deliverables do you hope to complete in the next week?
    • Aim to train the model on one genre to have it working by the interim demo

Vedant Status Report 03/18/2023

What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

I’ve been working on completing a complete project workflow in a jupyter notebook. I have downloaded the dataset and have been conducting EDA (Exploratory Data Analysis). Have installed and imported all the libraries necessary to preprocess the data. Will work on segmenting the dataset into different genres using the metadata files. Mainly been working with pandas and the dataset.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule.

My progress is on schedule

 

What deliverables do you hope to complete in the next week?

I aim to have a complete workflow set up, and a first attempt at training the model

 

Vedant’s status report for 03/11/2023

What did you personally accomplish this week on the project? Give files orphotos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

This week was mainly spent working on the design report. working on getting the design report as polished as possible took most of my time this week

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

The design report took more time than I had anticipated, and I was busy with other work during the break so I was unable to catch up. I believe I am about a week behind schedule. The coming week is pretty light in terms of work so I plan to catch up.

What deliverables do you hope to complete in the next week?

The main deliverable I want to achieve next week is having an end-to-end workflow ready using a pre-built GPT

Vedant’s status report for 02/25/2023

  • What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

This week I consolidated resources for building a GPT from scratch. These include:

  • This video by Andrej Karpathy:  https://www.youtube.com/watchv=kCc8FmEb1nY&ab_channel=AndrejKarpathy
  • This article with code and theory:  https://habr.com/en/company/ods/blog/708672/
  • This Jupyter notebook implements a similar workflow as a reference, I will follow a similar process for experimentation and prototyping:  https://github.com/Natooz/MidiTok/blob/main/colab-notebooks/Full_Example_HuggingFace_GPT2_Transformer.ipynb
  • Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

I feel that this week I am a little behind schedule due to midterms and other work that was brought forward. This next week will be relatively light and I intend to put more time into the project implementing an end-to-end workflow.

  • What deliverables do you hope to complete in the next week?

The main deliverable I want to achieve next week is having an end-to-end workflow ready using a pre-built GPT

Vedant’s status report for 02/18/2023

Please list the particular ECE courses (if any) that covered the engineering science and mathematics principles your team used to develop your design? If there are no courses please tells us how you learned those principles over the last week?

They aren’t specifically ECE courses but 11-785 (intro to deep learning) and 10-301 (intro to machine learning) covered the engineering principles I’m using in my project.

\What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

Since finalizing  the model last week, I have been researching other aspects of the optimization set up that could help our generative music model perform well. I discovered a new optimizer called Lion (EvoLved Sign Momentum) Published in a paper by Google and UCLA researchers less than a week ago The paper is linked Here.  Apart from this I also found libraries that can tokenize the MIDI files which our model takes as input, these tokenized inputs can better facilitate the learning of the generative model here.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

I feel that I am on track. I have a good idea of the model I want to implement and how I’m going to implement it.  I have also found a bunch of helpful resources which would provide guidance in design choices

What deliverables do you hope to complete in the next week?

In the coming week I hope to accomplish the following things:

  • Read about different tokenization strategies for MIDI files and the different advantages/disadvantages for each.
  • Understand the LakhMIDI dataset better to understand ways in which I can employ feature engineering to enhance the model
  • Experiment with a pre-built transformer to see the kind of results we can acheive

Vedant’s Status Report for 02/11/23

What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours).

This week for me, was centered around research. The key takeaway from our discussions with faculty were that we need to make our product more interactive for our user. Since I am responsible for the development of the generative model, the interactivity is defined by what the model can take as input and how that can affect the output. The previous model I had decided on (GAN) does not really offer much interactivity for the user. Therefore I researched a variety of different approaches and compiled a document summarizing the strengths and weaknesses of different models, after a team meeting we finalized the approach to move forward with.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

Due to the fact that we had to modify our idea, I believe that we are about a week behind schedule. However now that we have a clear vision and purpose for the project I believe we will make up ground quickly and will be back on track by the design review.

Now that we have a model and use case finalized I can start developing prototypes and solidify the workflow. In the next few weeks my plan is to import a transformer model and develop an end-to-end workflow which includes everything from data processing to inference. Once I am confident in the workflow I will move on to model development and experiment with different hyperparameters. right now I am planning to have a workflow ready by spring break, and use the break for model development.

What deliverables do you hope to complete in the next week?

In the coming week I hope to accomplish the following things:

  • Work with magenta API to better understand the flow of data through a transformer based generative model
  • Read the 2018 research paper by Huang et. al which describes the chosen model, and design choices
  • Design and code a simple, basic transformer in pytorch to understand the inner workings of the model