Live data from Hacker News

Finding Similar Music Using Matrix Factorization

benfrederickson.com

21–30 of 30 posts

Re: Finding Similar Music Using Matrix Factorization

#22

Personally to me, these methods of finding music don't work. I believe it's because most people tend to listen to music in a genre. Because the above method doesn't work, I have done correlations between different artists I like and the music recommended for that artist. (Example Arists A: Similar B C D; Artists E: Similar C D, then it would recommend C=4 point, D=4 points, B=2 point) This method sort of works, but i…

I think Spotify's "Discover Weekly" playlists get pretty close to this. I really, really look forward to each week's new playlist. I listen to a wide range of genres, and completely agree with you that most discovery tools try to pigeon hole you into one or two. Spotify seems to pick up on other associations. I wonder how much neural net stuff they're doing with their big data.

EDIT: Oops, somehow missed that The Verge article on how Discover Weekly works had already been posted! It works on a variation of PageRank, where instead of links on pages, it uses songs in saved playlists. (If you have a playlist with lots of songs similar to someone else's playlist, you might like the songs in their playlist too. If a song is on lots of playlists, it's probably noteworthy, etc.)

Re: Finding Similar Music Using Matrix Factorization

#23

Personally to me, these methods of finding music don't work. I believe it's because most people tend to listen to music in a genre. Because the above method doesn't work, I have done correlations between different artists I like and the music recommended for that artist. (Example Arists A: Similar B C D; Artists E: Similar C D, then it would recommend C=4 point, D=4 points, B=2 point) This method sort of works, but i…

That sort of describes the Pandora approach. Each song has a set of "genes" that describe its tone, musical instrumentation, key signature, time signature, rhythmic syncopation, etc. these genes are then used to find similar music. I've found it to be quite pleasing to discover new music when it's seeded with a relatively uncommon song that I like.

For instance, I added "Going Through Changes" by "Army of Me", and its recommendations included songs from bands I'd never heard of and actually enjoyed, like Radford, Red (a Christian band, one, as an atheist, I wouldn't ever have browsed on my own, but ended up really enjoying), Maxeen, Black Lab, and Brand New. Each had "genes" that made their algorithm align them with the seed song.

I don't use it much right now - I find myself in a cycle of discovery and then stubborn re-listening of the same four or five albums - but I expect I'll go back to it the next time I'm back in that exploratory mood.

Re: Finding Similar Music Using Matrix Factorization

#25
I often find that artists who I like tend to work together (this is especially true in hip-hop and electronica, but also in rock music as well through side projects). I've found some of my favorite albums this way; and it's weird esoteric stuff that other people tend to like (just harder to find unless you know to look for it).

Is there an algorithm that suggests music based on the degrees of connectedness to the individuals who made the music? I discovered Kanye West long, long before he made it big because he did a guest track on a label-produced mixtape. I said "man this shit is dope" and tried to track him down, but was only able to find other guest tracks on like a Mos Def album and a Common album (this was in like 1998, 5 years before he released a solo album).

I really miss that way of finding music, because it introduced me to a lot of artists who were similar enough I would like them, but different enough that genres started to morph into one another. A good example there would be Nine Inch Nails vs. How To Destroy Angels - Trent Reznor is behind both of them, but HTDA has a much more haunting, ambient sound compared to the sharp edges and distorted beats of NIN.

Re: Finding Similar Music Using Matrix Factorization

#26
post #25

I often find that artists who I like tend to work together (this is especially true in hip-hop and electronica, but also in rock music as well through side projects). I've found some of my favorite albums this way; and it's weird esoteric stuff that other people tend to like (just harder to find unless you know to look for it). Is there an algorithm that suggests music based on the degrees of connectedness to the ind…

PageRank is analogous to this type of music discovery if you created a graph based on artists who have collaborated together. It'd be about the same as having a teleportation vector that always restarts the random walk back at the artist you're wanting to explore around.

Re: Finding Similar Music Using Matrix Factorization

#27

Personally to me, these methods of finding music don't work. I believe it's because most people tend to listen to music in a genre. Because the above method doesn't work, I have done correlations between different artists I like and the music recommended for that artist. (Example Arists A: Similar B C D; Artists E: Similar C D, then it would recommend C=4 point, D=4 points, B=2 point) This method sort of works, but i…

That sort of describes the Pandora approach. Each song has a set of "genes" that describe its tone, musical instrumentation, key signature, time signature, rhythmic syncopation, etc. these genes are then used to find similar music. I've found it to be quite pleasing to discover new music when it's seeded with a relatively uncommon song that I like. For instance, I added "Going Through Changes" by "Army of Me", and it…

The idea behind Pandora is neat, but I've unfortunately found its actual dimensions insufficient. It always ends up drifting towards mediocre generic pop crap, no matter how far away I start or how carefully I curate. And it doesn't account well for complexity or mood.

Re: Finding Similar Music Using Matrix Factorization

#28

Personally to me, these methods of finding music don't work. I believe it's because most people tend to listen to music in a genre. Because the above method doesn't work, I have done correlations between different artists I like and the music recommended for that artist. (Example Arists A: Similar B C D; Artists E: Similar C D, then it would recommend C=4 point, D=4 points, B=2 point) This method sort of works, but i…

The approach you describe is one of many. Traditional collaborative filtering using matrix factorization will "discover" the features you listed, or other non-intuitive features, from patterns in the data. They don't always need to be listed explicitly, and training individual asymmetric models (like your one NN per person) isn't always ideal. Per person models won't make a lot of sense unless each person has rated a…

>Traditional collaborative filtering using matrix factorization will "discover" the features you listed, or other non-intuitive features, from patterns in the data.

I don't think that has turned out to be the case. Most people's listening habits follow genre, and just don't have that much latent structure to extract.

Re: Finding Similar Music Using Matrix Factorization

#29

Personally to me, these methods of finding music don't work. I believe it's because most people tend to listen to music in a genre. Because the above method doesn't work, I have done correlations between different artists I like and the music recommended for that artist. (Example Arists A: Similar B C D; Artists E: Similar C D, then it would recommend C=4 point, D=4 points, B=2 point) This method sort of works, but i…

I've long wondered about other psychological favtors that come into play as well. I wonder if each time I give a song a thumbs up, say, during radio play, they record features like day of the week, month of the year, season, the weather that day, time of day, maybe a geographic classifier like city/suburb/wilderness. These are all things that could be used to make localized, time dependent and situational recommendat…

I like the Songza (rolled into Google Play Music) themed playlists, eg "It's Tuesday Morning , play something for focusing/working out/spring cleaning". Usually there is something within one of the suggested categories I'll listen to.

Re: Finding Similar Music Using Matrix Factorization

#30
post #25

I often find that artists who I like tend to work together (this is especially true in hip-hop and electronica, but also in rock music as well through side projects). I've found some of my favorite albums this way; and it's weird esoteric stuff that other people tend to like (just harder to find unless you know to look for it). Is there an algorithm that suggests music based on the degrees of connectedness to the ind…

A class I took this fall covered recommendation on attributed graphs. On of the research papers on the reading list for the topic was very interesting: it extends the matrix factorization algorithm on a bipartite graph (of users and soundtracks, for eg.) to more general graph structures (which could include soundtracks, artists). I think this exploits local connectivity between artists much better than the vanilla matrix factorization algorithm.

[1] Yu, X., Ren, X., Sun Y., Gu, Q., Sturt, B., Khandelwal, U., Norick, B., Han, J. (2014) Personalized entity recommendation: A heterogeneous information network approach. in J Proc. 2014 ACM Int. Conf. on Web Search and Data Mining (WSDM’14)

Post reply on HN