As mentioned last week, I spent the majority of this week working on the ML module. The main goal was to be able to generate song recommendations from a generated seed containing info about a song. I was able to build a Java module that communicates with the proper Spotify endpoints to do exactly this. Below is an example of the generated song recommendations for an input seed that represents: artist = The Beatles, song = Help!, genre = rock. This is the full output
As we can see it works amazingly which is very cool to see. The generated songs from such a simple query are already very relevant to the input song. This shows very promising results for how much we will be able to fine tune our results with much more complex input seeds based on the listening session data we obtain. The next steps for this will be to create a cleaner class for building seeds to input into the model.
In addition to this coding, I helped my team prepare for the design presentation by working on the slides and contributing some important things. Mainly, I created the block diagram which took a lot of thought and effort.
As we can see, our system design is really coming together which is fantastic to see.
In terms of schedule, I would say that we did a great job in catching up on schedule this week and getting some important things done. Once we are done with the design presentation, we will be able to really buckle down and grind out a lot of the critical models for the design.
Next week, I plan to continue with the ML development, and will hope to integrate communication between the two pi’s because this will be important for the actual lifecycle of adding a recommended song to the queue.