Paul

Unknown's avatar

I'm the Director of Developer Community at The Echo Nest, a research-focused music intelligence startup that provides music information services to developers and partners through a data mining and machine listening platform. I am especially interested in hybrid music recommenders and using visualizations to aid music discovery.

Echo Nest Remix at the Boston Python Meetup Group

Next week I’ll be giving a talk about remixing music with Echo Nest remix at the Boston Python Meetup Group.  If you are in the Boston / Cambridge area next week, be sure to come on by and say ‘hi’.  Info and RSVP for the talk are here:  The Boston Python Meetup Group on Meetup.com

Here’s the abstract for the talk:

Paul Lamere will tell us about Echo Nest remix. Remix is an open source Python library for remixing music. With remix you can use Python to rearrange a track, combine it with others, beat/pitch shift it etc. – essentially it lets you treat a song like silly putty.

The Swinger is an interesting example of what it can do that made the rounds of the blogosphere: it morphs songs to give them a swing rhythm.

For more details about the type of music remixing you can do with remix, feel free to read: http://musicmachinery…

, ,

Leave a comment

Some NameDropper stats

The NameDropper has been live for less than a day and already I ‘ve collected some good data from the game play.   Here are some stats:

Total games played:  1841
Total unique players:  462
Total play time:  30hrs, 20mins, 36 seconds

The artists that were most frequently confused with fake artists were:

93 Erik Satie
82 Ennio Morricone
66 Edvard Grieg
49 Nightwish
46 Yann Tiersen
40 Maurice Ravel
35 Porcupine Tree
34 Felix Mendelssohn
32 Dinah Washington
30 Antonio Vivaldi
This is showing that the game (and the underlying familiarity algorithm that drives it) may have a bias toward classical musicians.  One of the knobs we have in our familiarity algorithm is a boost for age of the artist (even though Beethoven doesn’t get played on the radio very often, most people have heard of him, so he gets a boost for being old).  But this early data suggests that we are giving a bit too much of an age boost.  Ideally, the most frequently confused artists would be spread evenly across genre. The fact that there are no Hip-Hop or Pop artists on this list suggests that our familiarity algorithm skews away from those artists.  Looks like we’ll have a few knobs to tweak.
Game-with-a-purpose are a great way to get data from humans that would otherwise be difficult to get.  The challenge in creating such a game though is to make one that is actually fun to play.  If your game is no fun, you won’t get any data at all.   Looking at player stats can give us an idea of how fun the game is.    Some NameDropper player stats:

Games per player:
Average:  4
Median: 2
Max: 182    (woah, someone played 182 times!)
Time spent playing:
Average: 236 secs
Median: 90 secs
Max:  10,995 secs (over 3 hours)
Scores:
Average: 9139
Median: 4054
Min: -4656
Max: 54671

Yep, someone scored -4656 points.  If you take too long to answer you get dinged (to avoid the Wikipedia winner).
I was a bit concerned as to whether or not someone could ‘learn’ the game (my daughter Cari suggested as much), so I looked at the scores over time of one of the frequent players to see if the score trended upwards.
There doesn’t seem to be any noticeable trend for this user, so it seems that the game is perhaps a good measure of general music knowledge and not a measure of how may times you’ve played the game.  People are still playing the game – and there seems to be a good fight for the top spot on the leaderboard which means that I should continue to get good data.  Next step is to tweak the familiarity knobs based on the data collected so far and update the game to see if the average scores go up.

, ,

6 Comments

The Name Dropper

[tweetmeme source= ‘plamere’ only_single=false]

TL;DR;  I built a game called Name Dropper that tests your knowledge of music artists.

One bit of data that we provide via our web APIs is Artist Familiarity.  This is a number between 0 and 1 that indicates how likely it is that someone has heard of that artists.    There’s no absolute right answer of course – who can really tell if Lady Gaga is more well known than Barbara Streisand or  whether Elvis is more well known than Madonna. But we can certainly say that The Beatles are more well known, in general, than Justin Bieber.

To make sure our familiarity scores are good, we have a Q/A process where a person knowledgeable in music ranks our familiarity score by scanning through a list of artists ordered in descending familiarity until they start finding artists that they don’t recognize.  The further they get into the list, the better the list is.  We can use this scoring technique to rank multiple different familiarity algorithms quickly and accurately.

One thing I noticed, is that not only could we tell how good our familiarity score was with this technique, this also gives a good indication of how well the tester  knows music.  The further a tester gets into a list before they can’t recognize artists, the more they tend to know about music.   This insight led me to create a new game:  The Name Dropper.

The Name Dropper is a simple game.  You are presented with a list of dozen artist names.  One name is a fake, the rest are real.

If you find the fake, you go onto the next round, but if you get fooled, the game is over.    At first, it is pretty easy to spot the fakes, but each round gets a little harder,  and sooner or later you’ll reach the point where you are not sure, and you’ll have to guess.  I think a person’s score is fairly representative of how broad their knowledge of music artists are.

The biggest technical challenge in building the application was coming up with a credible fake artist name generator.  I could have used Brian’s list of fake names – but it was more fun trying to build one myself.  I think it works pretty well.  I really can’t share how it works since that could give folks a hint as to what a fake name might look like and skew scores (I’m sure it helps boost my own scores by a few points).  The really nifty thing about this game is it is a game-with-a-purpose.  With this game I can collect all sorts of data about artist familiarity and use the data to help improve our algorithms.

So go ahead, give the Name Dropper a try and see if you can push me out of the top spot on the leaderboard:

Play the Name Dropper


, , , , ,

6 Comments

Some preliminary Playlist Survey results

[tweetmeme source= ‘plamere’ only_single=false] I’m conducting a somewhat informal survey on playlisting to compare how well playlists created by an expert radio DJ compare to those generated by a playlisting algorithm and a random number generator.  So far, nearly 200 people have taken the survey (Thanks!).     Already I’m seeing some very interesting results. Here’s a few tidbits (look for a more thorough analysis once the survey is complete).

People expect human DJs to make better playlists:
The survey asks people to try to identify the origin of a playlist (human expert, algorithm or random) and also rate each playlist.  We can look at the ratings people give to playlists based on what they think the playlist origin is to get an idea of people’s attitudes toward human vs. algorithm creation.

  Predicted Origin  Rating
  ----------------   ------
  Human expert      3.4
  Algorithm         2.7
  Random            2.1  

We see that people expect humans to create better playlists than algorithms and that algorithms should give better playlists than random numbers.  Not a surprising result.

Human DJs don’t necessarily  make better playlists:
Now lets look at how people rated playlists based on the actual origin of the playlists:

  Actual Origin     Rating
  -------------     ------
  Human expert      2.5
  Algorithm         2.7
  Random            2.6 

These results are rather surprising.  Algorithmic playlists are rated highest, while human-expert-created playlists are rated lowest, even lower than those created by the random number generator.  There are lots of caveats here, I haven’t done any significance tests yet to see if the differences here really matter, the survey size is still rather small,  and the survey doesn’t present real-world playlist listening conditions, etc. Nevertheless, the results are intriguing.

I’d like to collect more survey data to flesh out these results.  So if you haven’t already, please take the survey:

The Playlist Survey

Thanks!

, , ,

1 Comment

The Playlist Survey

[tweetmeme source= ‘plamere’ only_single=false] Playlists have long been a big part of the music experience.  But making a good playlist is not always easy.  We can spend lots of time crafting the perfect mix, but more often than not, in this iPod age, we are likely to toss on a pre-made playlist (such as an album),  have the computer generate a playlist (with something like iTunes Genius) or (more likely) we’ll just hit the shuffle button and listen to songs at random.   I pine for the old days when Radio DJs would play well-crafted sets – mixes of old favorites and the newest, undiscovered tracks – connected in interesting ways.  These professionally created playlists magnified the listening experience.   The whole was indeed greater than the sum of its parts.

The tradition of the old-style Radio DJ continues on Internet Radio sites like Radio Paradise. RP founder/DJ Bill Goldsmith says of   Radio Paradise: “Our specialty is taking a diverse assortment of songs and making them flow together in a way that makes sense harmonically, rhythmically, and lyrically — an art that, to us, is the very essence of radio.”  Anyone who has listened to Radio Paradise will come to appreciate the immense value that a professionally curated playlist brings to the listening experience.

I wish I could put Bill Goldsmith in my iPod and have him craft personalized playlists for me  – playlists that make sense harmonically, rhythmically and lyrically, and customized to my music taste,  mood and context . That, of course, will never happen. Instead I’m going to rely on computer algorithms to generate my playlists.  But how good are computer generated playlists? Can a computer really generate playlists as good as Bill Goldsmith,  with his decades of knowledge about good music and his understanding of how to fit songs together?

To help answer this question,  I’ve created a Playlist Survey – that will collect information about the quality of playlists generated by a human expert, a computer algorithm and a random number generator.   The survey presents a set of playlists and the subject rates each playlist in terms of its quality and also tries to guess whether the playlist was created by a human expert, a computer algorithm or was generated at random.

Bill Goldsmith and Radio Paradise have graciously contributed 18 months of historical playlist data from Radio Paradise to serve as the expert playlist data. That’s nearly 50,000 playlists and a quarter million song plays spread over nearly 7,000 different tracks.

The Playlist Survey also servers as a Radio DJ Turing test.  Can a computer algorithm (or a random number generator for that matter) create playlists that people will think are created by a living and breathing music expert?  What will it mean, for instance, if we learn that people really can’t tell the difference between expert playlists and shuffle play?

Ben Fields and I will offer the results of this Playlist when we present Finding a path through the Jukebox – The Playlist Tutorial – at ISMIR 2010 in Utrecth in August. I’ll also follow up with detailed posts about the results here in this blog after the conference.  I invite all of my readers to spend 10 to 15 minutes to take The Playlist Survey.  Your efforts will help researchers better understand what makes a good playlist.

Take the Playlist Survey

, , , , , ,

5 Comments

MeToo – a scrobbler for the room

[tweetmeme source= ‘plamere’ only_single=false] One of the many cool things about working at the Echo Nest is that we have  an Sonos audio system with  single group playlist for the office. Anyone from the CEO to the greenest intern can add music to the listening queue for everyone to listen to. The office, as a whole has a rather diverse taste in music and as a result I’ve been exposed to lots of interesting music.   However, the downside of this is that since I’m not listening to music being played on my personal computer, every day I have 10 hours of music listening that is never scrobbled, and as they say, if it doesn’t scrobble, it doesn’t count.   Sure the Sonos system scrobbles all of the plays  to the Echo Nest account on Last.fm but I’d also like it to scrobble it to my account so I can use nifty apps like  Lee Byron’s Last.fm Listening History or  Matt Ogle’s Bragging Rights on my own scrobbles.

This morning while listening to that nifty Emeralds album,  I decided that I’d deal with those scrobble gaps once and for all.  So I wrote a little python script called MeToo that keeps my scrobbles up to date.  It’s really quite simple. Whenever I’m in the office, I fire up MeToo.  MeToo watches the most recent tracks played on The Echo Nest account and whenever a new track is played, it scrobbles it to my personal account. In effect, my scrobbles will track the office scrobbles.  When I’m not listening I just close my laptop and the scrobbling stops.

The script itself is pretty simple – I used pylast to do interfacing to Last.fm –  the bulk of the logic is less than 20 lines of code.   I start the script like so:

% python metoo.py TheEchoNest lamere

when I do that, MeToo will continuously monitor most recently played tracks on TheEchoNest and scrobble the plays on my account. When I close my laptop, the script is naturally suspended – so even though music may continue to play in the office, my laptop won’t scrobble it.

My scrobbles and Echo Nest scrobbles

I suspect that this use case is relatively rare, and so there’s probably not a big demand for something like MeToo, but if you are interested in it, leave a comment. If I see some interest, I’ll toss it up on google code so anyone can use it.

It feels great to be scrobbling again!

,

5 Comments

We swing both ways

Perhaps one of the most frequently asked questions about Tristan’s Swinger is whether it can be used to ‘Un-swing’ a song.  Can you take a song that already swings and straighten it out? Indeed, the answer is yes – we can swing both ways  – but it is harder to unswing than it is to swing.  Ammon on Happy Blog, the Happy Blog has given de-swinging a go with some success with his de-swinging of Revolution #1.   Read his post and have a listen at Taking the swing out of songs.   I can’t wait for the day when we can turn on the TV to watch and listen to  MTV-Unswung.

, , , , ,

Leave a comment

Frasier does Nine Inch Nails

Oh My –  Musician Josh Millard  has recreated The Downward Spiral using nothing but audio from the NBC sitcom Frasier. So wrong, and yet, so right.  Josh has the whole remixed album plus a video on his blog:

Nine Inch Niles – The Seattleward Spiral

, ,

1 Comment

Is Music Recommendation Broken? How can we fix it?

Save the date: 26th September 2010 for The Workshop on Music Recommendation and Discovery being held in conjunction with ACM RecSys in Barcelona, Spain.  At this  workshop, community members from the Recommender System, Music Information Retrieval, User Modeling, Music Cognition, and Music Psychology can meet, exchange ideas and collaborate.

Topics of interest

Topics of interest for Womrad 2010 include:

  • Music recommendation algorithms
  • Theoretical aspects of music recommender systems
  • User modeling in music recommender systems
  • Similarity Measures, and how to combine them
  • Novel paradigms of music recommender systems
  • Social tagging in music recommendation and discovery
  • Social networks in music recommender systems
  • Novelty, familiarity and serendipity in music recommendation and discovery
  • Exploration and discovery in large music collections
  • Evaluation of music recommender systems
  • Evaluation of different sources of data/APIs for music recommendation and exploration
  • Context-aware, mobile, and geolocation in music recommendation and discovery
  • Case studies of music recommender system implementations
  • User studies
  • Innovative music recommendation applications
  • Interfaces for music recommendation and discovery systems
  • Scalability issues and solutions
  • Semantic Web, Linking Open Data and Open Web Services for music recommendation and discovery

More info:  Wormrad 2010 Call for papers

,

1 Comment

What is the longest path though Six Degrees of Black Sabbath?

[tweetmeme source= ‘plamere’ only_single=false] @meekles tweeted yesterday that he had found a 25 step path through Six Degrees of Black Sabbath and challenged anyone to find a longer path that his Path from Arthur to Eivind Fjoseide.

To sweeten the challenge, I’ll offer a prize of a coveted Echo Nest Tee Shirt for each new longest path found.  Here are the rules:

  • When you find a path that you think is longer than any found so far, tweet the path with its length and the hashtags #6dobs and #longest. For example:  I made a 25 step path from arthur to Eivind Fjoseide #6dobs #longest http://bit.ly/9DANCk
  • No skipping allowed in longest paths
  • Only one tee-shirt given per milestone – so if 5 people find a 27 step path, only the first who finds it gets the tee-shirt
  • Only one tee-shirt per person
  • You are not eligible if you work for the Echo Nest, or if your name is Kurt Jacobson

The Echo Nest tee-shirt will turn you into a music metadata superhero

Have fun finding those paths!

Six Degrees of Black Sabbath

Update: Great work finding paths of at least 40 artists long.  Tee-shirt give away ends tonight (May 25) at midnight EDT!

, , ,

22 Comments