About
maryrosecook is involved in queer, anti-capitalist and DIY stuff.
She is a programmer. She lives in London. RSS,
Twitter, GitHub,
MetaFilter,
Last.fm,
Vimeo.
Projects:
- Playmary: your life in songs
- the perceptron: music recommendations
- We're Not The Cool Kids: experimental/pop band
- Ear Defender: decide what music to listen to
- Kisses: compare the magnitude of stuff
- Lollipops and Gumdrops - music recommendations
Projects:
- Playmary: your life in songs
- the perceptron: music recommendations
- We're Not The Cool Kids: experimental/pop band
- Ear Defender: decide what music to listen to
- Kisses: compare the magnitude of stuff
- Lollipops and Gumdrops - music recommendations
Newer posts are loading.
You are at the newest post.
Click here to check if anything new just came in.
Click here to check if anything new just came in.
October 05 2008
Creating a music recommendation engine
I have spent the last six weeks writing a music recommendation engine, theperceptron.com It was fun. From the user's perspective:
- Enter a band you like.
- Get recommendations for other bands you might also like.
- Test out the artists recommended by visiting their Myspaces and websites, reading their Wikipedia summaries and listening to sample tracks.
- Say whether you like or dislike your recommended bands.
- Add promising bands to your playlist so you can listen later.
- Suggest an artist or two that the site didn't recommended.
- Get on with your life.
- Recommendations made by actual humans: tinymixtapes.com and epitonic.com and users of the perceptron.
- Artist admiration: artists' top friends on Myspace.
- Artists on the same mixtape: muxtape.com
- Artists on the same record label: wikipedia.org
- Artists posted to the same mp3 blog: hypem.com
- Artists who have played gigs together: myspace.com
score = (source_points + connection_points) / num_source_connections
the perceptron’s algorithm is pretty obvious. What makes the site good is the choice of data sources. However, the algorithm does allow experimentation with adding data sources. If I add a bad one, the scores given to its recommendations drop very rapidly. It only took about 200 user rating actions to get the site's data source weights pretty good. Here is the current table (higher numbers are better):
| Source | Score |
| Epitonic similar artists | 0.439 |
| Tiny Mix Tapes similar artists | 0.316 |
| Myspace top friends | 0.128 |
| Mixtapes | 0.075 |
| Record labels | 0.020 |
| Epitonic other artists | 0.016 |
| MP3 blogs | 0.003 |
| Gigs | Score hasn't settled, yet. |
| the perceptron user recommendations | Score hasn't settled, yet. |
Why am I giving away my secrets?
- I would love to see people take my ideas and make them better, or apply them to something else.
- I'm a fucking genius. I'll have some even better ideas tomorrow.

