Friday, 31 August 2007

Researchers far ahead of industry

Delete the filter and other playlist generation tools you might have installed on your system, here comes Dominik's open source solution.

Thanks Klaas for the link!


jeremy said...

I dunno, I have heard multiple folks in industry, from companies like Pandora and Gracenote, claim that industry is far ahead of researchers.

I think each is ahead of the other, but each in their own slightly different arenas, with slightly different focuses.

Elias said...

I agree. Pandora got some really good radio stations, and Gracenote got lots of metadata... but they don't have an open source plugin for a popular audio player to easily generate playlists from personal music collections using content based similarity ;-)

jeremy said...

Exactly. In fact, the whole idea of content-based similarity, as algorithmically determined (rather than Pandora's human determined, inflexibly fixed-category, non-scaleable approach) was something that academia pioneered long before industry, and is currently pushing much further than anything I see in industry.

So, each side has strengths and weaknesses.

See you in a few weeks!

vegard said...

I haven't tried this plugin (I use Amarok), but I guess it has the usual short-comings of client-side content-based recommendation systems:
1) long indexing time, since all analysis data is computed from scratch (need fingerprints)
2) not-so-obvious similarity relationships
3) no means to filter selection based on metadata like artist, genre, year etc.

I like open source, though:-)

Elias said...


1) is solvable even for millions of songs (although it's not as easy as running a Matlab script). I'm not sure how Dominik implemented it though, there's probably still room for improvements in his code.

2) but it's still a lot better than random shuffle :-)

3) I really like the simplicity of the interface Dominink implemented. I think it's actually an advantage and not a disadvantage.

Vegard said...

Hi Elias,

1) I'm just suggesting that any recommender system that has to spend several hours analyzing a music collection before serving any recommendations, will never acquire a large mass of users. is excellent in that way, instant recommendations from you listening history.

2) I enjoy shuffle, but I may be the odd one:-) I like everything on my ipod, and find the randomness quite refreshing, especially when I feel uninspired.

3) Simplicity is good, but it shouldn't be confused with usability. Yo want the right functionality with an intuitive interface. I can't say anything about this plugin, though.

Congrats with your job at btw!

Elias said...


1) I think it's important to distinguish between playlist generation from your personal music collection and music recommendation. Anyway, it will be interesting to see if you are right and computation hours are an insurmountable barrier into the mainstream for content-based playlist generators. I doubt it :-)

2) I'm sure you are not the only one who is happy with random shuffle. As long as the skip button is easily accessible, and the music collection from which the samples are drawn consists of mostly good music with respect to your current mood ...

3) I haven't tried it, so there is not much I can say about it either. As far as I can tell you drag & drop a seed song onto the playlist generator and get a playlist consisting of similar songs. I see no usability problems there.

> Congrats with your job at btw!

Thanks :-)

Daniel said...

One must not forget that music analysis happens only once. As soon as it is done, recommendations (from in that case the own music collection) can be given quickly. So if for example, playlist generation would included in a Windows Update, and the analysis would be performed while ideling (maybe during reading this blog), before the playlist generation functionality is announced by Windows, recommendations could be given imediately, when the user finds out about this new functionality.

Also for recommendation services with probably millions of songs, content-based recommendations could be done - if everything is computed in advance (well, adaptive recommendations might be a problem then ...).

By the way, I had some very interesting experience with the content-based similarity playlists of, on a very homogenious rap music collection of 14.000 songs :-)

Vegard said...

I could actually do without "smart" playlist generation altogether if I could have the right kind of shuffle on my ipod. Don't misunderstand me, I love music recommendation as much as an mir researcher:-)

Starting with a basic random shuffle, I get a random plylist with a wide variety of genres and moods. Once I find a song that inspires me, I want a button that says "One more song from this artist" or "One more song from this album". This would just insert one more song into the random playlist.

I could do this several times over, and once I get tired of the artist/album, my ipod would once again start throwing random stuff at me.

Now why didn't Apple make this? I soo want one of the new rumored ipods based on mac os x. Then maybe I can make it myself:-)


Elias said...

@ Daniel, I fully agree. Btw, thanks for that link. I didn't realize Fraunhofer is also developing a content based playlist generation product. And sounds like they are about to launch a social music recommendation platform as well.

@ Vegard, Paul already pointed out how disappointing it has been to not see Apple do anything in that direction already last year. However, if you stay tuned to you might notice how the radio stations are gradually improving and eventually they might do exactly what you want them to :-)

Vegard said...

To Elias:
Yeah, I liked his observation of the long tail of the ipod too.

To Daniel:
With fingerprinting and a large enough descriptors webservice you don't have to do the analysis even. Wonder how much data MusicIP gathered from their music mixer app?

Daniel said...

@ Vegard: Yes, but social recommendation webservices can only give good recommendations if they collected enough statistics about their songs.

So for my taste of music, popularity of a song is not important, but to get a song recommended from a social recommender, it has to be at least a litte popular.

The computation of the fingerprints is time-consuming analysis, too. And you have to compute fingerprints for all your data if you want to get playlist-recommendations.