As you may have heard, we’ve been playing around with playlist recommendations as part of ListenBrainz. The first feature we decided to create is “daily-jams” – this playlist is designed to be a background playlist that covers music that you have been recently listening to and music that you might be interested in listening to. It only includes tracks that you’ve listened to before – the whole point is for you is to put the playlist on and have it provide a nice backdrop to your day.
As the name suggests, the playlist is updated daily at midnight (midnight according to your timezone setting in LB). Playlists can be listened on ListenBrainz directly or can be exported to Spotify automatically.
If you’re interested in having these playlists generated for you, follow these (cryptic) steps:
(a better UI for all of this will be coming in the next few weeks/months as we undergo a redesign of the LB pages.)
Then wait until the next day and a playlist should appear in your Recommendations tab. (Mine is here: User "rob" - ListenBrainz )
In the very near future, we’re going to turn this in a weekly feature – and when we do we will include a playlist for New Jams – tracks that we think you should listen, but haven’t listened to before, to based on your recent listening history.
If you start listening to your Daily Jams, I would very much love to hear from you!
I followed the bot a week or so ago and have received no recommendations yet. I didn’t set my time zone till today, but I assume that just affects when they’re generated?
Please make a copy of it for yourself using the duplicate feature, so I can delete it from my account. We’ll work out why you’re not getting daily-jams in the meantime.
Thank you for looking into this feature some more!
After my first daily jam at the 18th of February I never received a second one until the 4th of March. The daily jam playlist now can be found in Recommendations like you mentioned above and in Playlists - Collaborative.
About the recommendation in the first list I can say I didn’t use it as a playlist but looked through the recommendations and played those tracks I was interested in. For me this is an interesting feature because I am always looking for music I might like to listen to at the current moment.
The daily jam of the 4th of March contains an interesting recommendation. It is Mariah Carey’s All I Want for Christmas Is You.
I am listening to Christmas music a lot during the Christmas season but never during the rest of the year (one exception: Queen’s Thank God It’s Christmas ).
I would like a filter which eliminates these season specific tracks.
Yes, understood. This is one of the classical pitfalls for music recommendation systems, but sadly we don’t have a way to prevent this from happening. (Its not an easy fix, sadly).
I’ve had a few Daily Jams playlists generated for me and had them exported to Spotify. Problem here is that my taste is sufficiently exotic that Spotify does not contain all the tracks in the Daily Jams playlist, typically only about 30 out 50 make it (This is why I buy a lot of music, folks). Apart from that, the playlists are pretty good. That is, they are not too repetitive, although I suppose that depends on ones own diversity in music taste.
I am pretty excited about the New Jams feature. Will definitely give that a spin once it is launched.
There is no pain! I really appreciate your efforts in this field.
Just a remark:
Looking at my charts this year (20230306) I have listened to 507 different artists with 2035 tracks in 827 albums. In the daily jam are recommended 50 tracks. At the 5th of March the tracks are from 36 different artists, 14 have a double entry. Only one artist is from my top 10 artists this year.
It is very much appreciated by me, the recommendation is not simply repeating my charts.
Since I like to use this list to look up an artist I want to listen to next, the double entries aren’t that helpful.
It seems to be very difficult to recommend music beyond Pop, Rock, RnB, and so on. My top artist this year at the moment is Tine Thing Helseth who plays baroque, classical, romantic, and so on pieces for trumpet but there is not one entry of baroque, classical, or romantic music and neither examples of trumpet concerts in this list. To have some of this music as well would be really nice!
Thanks for your feedback – especially the part about duplicated artists not being useful. For your use case where you are looking at it to find new artists, I can see that. But I think that for users who are actually listening to the playlists, the 2 tracks from the same artist can help give the user a feel for that artist.
I wonder if in the future there should be a feature that lists artists that a given user should listen to and in this case, there would be no duplicates.
Also, as far as the range of the music, I think that is because we have a limited number of people submitting their listens right now. If we can attract more people to the service, especially people with a more wide ranging music taste, the the recommendations can improve in breadth.
Also, we are working on artist similarity, recording similarity and popular recordings by an artist data sets – these datasets will make their first debut in the upcoming “Artist Radio” feature (like last.fm’s most popular recommendation feature). Except that for our setup a user will be able to give a number of seed artist MBIDs from which to make a playlist. I’ve got a very alpha version of this running in a troi branch and I am slowly working to make it better. (not that it sucks right now, but its not good enough yet).
General note to all: We were not super careful about taking Troi, which is a toolkit for creating and learning about recommendations, and the stuffing it into ListenBrainz. The Troi toolkit wasn’t really ready for production use and thus only a handful of people (read the LB team, who is monitoring everything, ironically) always got daily-jams, while other users down the list would often fail. We’re working on fixing this with proper rate limiting and code hardening as we speak.
Hopefully we can get this fix into production this week.
Comparing the last two troibot jams the Jam of the 19th March 2023 recommends exactly all the same tracks from the 18th March 2023. If this happened on Spotify, I would suspect them of promoting these artists. Here I think this to be a consequence of the significant difference between the huge number of tracks in the database of a user over the years and the listening habit of the last days which sum up only to a few hundred tracks at the most. If your recommendation tool is a static process across the complete user database, there is only very little movement in the recommendations even if this list is procuced only monthly.
So far my recommendations are tracks I listened to already. Looking at four different lists, a lot of tracks are repeated (Lana del Rey’s Born to Die is in all of them). Even if I listened to Argentinian Tango at the moment, I could appreciate a recommendation of US Country Music, classical symphonies, or Industrial Metal. I think some recommendations by chance would suit me the most.
The daily jams playlist is filled with rock music, which I don’t really listen to anymore. There is a lack of artists that I’ve been listening to recently (more into rap/hip-hop recently). Is there a way to have the recommendation engine recommend recent listens more compared to old scrobbles?
Right now it is being trained on the last 6 months of your listening data. Do the recommendations you get reflect what you’ve listened to in the last 6 months?
Sadly, changing the timeframe with which the model is trained isn’t something we can customize on a per user basis – that would be prohibitively expensive.
What is your username on LB? I’d like to have a look at your listens and your daily jams and see if I can learn anything.
That’s interesting! I send my listenings in parallel to ListenBrainz and Libre.Fm. Here are my top artists on Libre.Fm of the last 6 months as of the 22nd of March 2023:
You know, I like it the recommendations are not following any charts but you can see, I listened a lot to latin music (Paquita la del Barrio, Gloria Trevi, and José Alfredo Jiménez) and I can’t find in any of the jam lists one recommendation of latin music (and there is a vast stock of latin music). That’s strange, isn’t it?
My username on LB is ‘‘Justlistening’’. I do admit that I listened to Nirvana and Metallica relatively often last year (486 listens of mostly rock/grunge), but that is only for December of last year.
It could also be that I had imported my listens from libre.fm multiple times, which could’ve messed up the recommendation engine. That is also why there aren’t any listens for 2022, as I stopped scrobbling for that year.
At the 23rd of March 2023 there are two entries in my Jam list I appriciate a lot. First is Bob Dylan who was ignored up to now. The second is nvrmore who must have very little weight on MusicBrainz since there is only one release with just 6 tracks.
Does this mean the recommendation engine doesn’t weight the listenings of a single user solely to write the list but calculates also the behaviour of the users in total? (Something like 90% of all users are listening also to The Beatles, if they are listening to Queen. So if users are listening to Queen only they get recommendations of The Beatles as well.)
Another strange thing in my Jam lists is Cher who in all lists where she has an entry, is represented with the song ‘Believe’ only. There must be an interesting algorithm behind it that this title among the huge repertoire of Cher got the highest result always.
It may seem strange at first glance, but upon closer inspection and knowing our current community a bit, it makes more sense. Right now, we have a community of people who is skewed towards computer geeks and the music they listen to. E.g. I think Radiohead is close to our number #1 artist, which is not representative of the world.
Latin music is also not that well represented yet – and if there aren’t enough listeners of a style of music then the recommendation system cannot get enough data to be confidently recommend those tracks. The solution is to recruit other latin music lovers and get them to submit their listens as well. And I suspect that this is going to be the answer for a few of these questions.
Yes, very much so – that is the whole point.
There are however, problems with this approach and you’ve already hit on it. A lot of people like the Beatles, but they may simply not be one of their “characteristic artists”, but this still influences the outcome in that people will get too many Beatles tracks recommended to them. Except in our case, it is Radiohead – my feed is full of Radiohead, but since I hate Thom Yorke’s voice, I always skip the tracks, but since we cannot really tracks skips, it thinks I should listen to more Radiohead. Sigh.
We know the solution to this problem, but we haven’t gotten there to work on it yet. Partly, because I really wanted to understand how this system works before moving on.
It is less about “algorithm” in this case again. The algorithm itself (Apache Spark Collaborative Filtering which implements Matrix Factorization using the ALS algorithm) is data agnostic – no artist gets preferential treatements – which is the whole point of what we’re doing. We’re not going to bias it towards anything other than what your previous listens say you should listen to.
Again in this case, we may not have enough users listening to Cher for the algorithm to do a good job. I bet you know what comes next… Recruit more users!
Yea, I see what you mean – those recs are not great for what you’ve been listening to. Even in your case your music taste may be sufficiently different from other members in the community that the recommendation system can’t do a good job.
Though, I am less sure in your case. I’ll have to keep my eyes peeled here.
P.S. If you have friends with similar music tastes, invite them to use LB? More users, better recs!