My proposed product is to create a recommendation system that, given a list of songs that the patients liked (sang along) and a list of songs that the patients did not like (had no reaction), predicts new songs that patients would sing along to.
My hypothesis is that patients' reactions depend on their memories of the original recordings, not piano cover versions played at empathy recitals. There are factors I cannot control, but using original recordings should give the best estimate.
The first step is to create a candidate song list using release year and popularity from sources such as Spotify and Billboard APIs.
For evaluation, Spotify recommendation APIs are now too limited for this workflow, so I plan to use song embedding vectors from a music representation model. The model selected is Tencent's MuQ.
My initial approach was l2-normalized dot products between each candidate and both liked and disliked song sets, but comparison between those two scores is not straightforward. Instead, I will use Bayesian Paired Ranking (BPR) to learn a weight vector that favors liked songs over disliked songs, then rank candidates by dot product with that learned vector.