This week, Greg Linden noticed a conference paper that reveals that YouTube is using Amazon.com‘s recommendation engine to power its own recommendations. Last week, Fast Company ran an article about how a former Amazon.com engineer is trying to help discover a better recommendation engine than his former employer. And we rediscovered a tutorial from way back in December of 2010 on how to get your hands dirty building your own recommendation system using NumPy.
YouTube uses Amazon’s recommendation algorithm
Linden writes that YouTube is using Amazon.com’s algorithm, developed in 1998, to power its recommendation system:
To be clear, this was not intended as an attack on Google in any way. Googlers built on previous work, as they should. What is notable here is that, despite another decade of research on recommender systems, despite all the work in the Netflix Prize, YouTube found that a variant of the old item-to-item collaborative filtering algorithm beat out all others for recommending YouTube videos. That is a very interesting result and one that validates the strengths of that old algorithm.
Beyond Amazon: How to Make Recommendations Smarter
Former Amazon.com engineer and current RichRelevance chief scientist Darren Vengroff wants to help discover a better system than Amazon.com’s 13 year old algorithm. But he’s not trying to discover it himself. Instead, according to Fast Company, he’s trying to enable researchers in mathematics departments around the world to do better prediction engine research by providing them with real-world data:
He’s created a “black box” of sorts with real-world data that researchers can use to run experiments on. Researchers won’t be able to look at the data, but they will be able to dump their algorithms in and have the box spit out results, which the researchers can then use to refine their hypotheses.
How To Build a Recommendation System with NumPy
If reading all this makes you want to play around with your own recommendation engine, then check out this Software Carpentry tutorial on building recommendation systems in NumPy. NumPy is a package for scientific computing for Python.
Our 2009 article5 Problems of Recommender Systems.