Earlier this week we posted a Guide to Recommender Systems, as part of our series on recommendation technologies. In this post we look at some of the challenges in building or deploying a recommender system. And yes, Napoleon Dynamite is one of them.

This week an event called Recked was held in Amsterdam, aimed at engineers interested in these systems. The event was hosted by Wakoopa and Strands (we've embedded the presentations below). In those presentations, there were some hints at the problems that these companies have to overcome to build an effective recommender system.

1. Lack of Data

Perhaps the biggest issue facing recommender systems is that they need a lot of data to effectively make recommendations. It's no coincidence that the companies most identified with having excellent recommendations are those with a lot of consumer user data: Google, Amazon, Netflix, Last.fm. As illustrated in the slide below from Strands' presentation at Recked, a good recommender system firstly needs item data (from a catalog or other form), then it must capture and analyze user data (behavioral events), and then the magic algorithm does its work. The more item and user data a recommender system has to work with, the stronger the chances of getting good recommendations. But it can be a chicken and egg problem - to get good recommendations, you need a lot of users, so you can get a lot of data for the recommendations.

2. Changing Data

This issue was pointed out in ReadWriteWeb's comments by Paul Edmunds, CEO of 'intelligent recommendations' company Clicktorch. Paul commented that systems are usually "biased towards the old and have difficulty showing new".

An example of this was blogged by David Reinke of StyleHop, a resource and community for fashion enthusiasts. David noted that "past behavior [of users] is not a good tool because the trends are always changing" (emphasis ours). Clearly an algorithmic approach will find it difficult if not impossible to keep up with fashion trends. Most fashion-challenged people - I fall into that category - rely on trusted fashion-conscious friends and family to recommend new clothes to them.

David Reinke went on to say that "item recommendations don't work because there are simply too many product attributes in fashion and each attribute (think fit, price, color, style, fabric, brand, etc) has a different level of importance at different times for the same consumer." He did point out though that social recommenders may be able to 'solve' this problem.

3. Changing User Preferences

Again suggested by Paul Edmunds, the issue here is that while today I have a particular intention when browsing e.g. Amazon - tomorrow I might have a different intention. A classic example is that one day I will be browsing Amazon for new books for myself, but the next day I'll be on Amazon searching for a birthday present for my sister (actually I got her a gift card, but that's beside the point).

On the topic of user preferences, recommender systems may also incorrectly label users - a la this classic Wall St Journal story from 2002, If TiVo Thinks You Are Gay, Here's How to Set It Straight.

4. Unpredictable Items

In our post on the Netflix Prize, about the $1 Million prize offered by Netflix for a third party to deliver a collaborative filtering algorithm that will improve Netflix's own recommendations algorithm by 10%, we noted that there was an issue with eccentric movies. The type of movie that people either love or hate, such as Napoleon Dynamite. These type of items are difficult to make recommendations on, because the user reaction to them tends to be diverse and unpredictable.

Music is full of these items. Would you have guessed that this author is a fan of both Metallica and The Carpenters? I doubt Last.fm would make that recommendation.

5. This Stuff is Complex!

We're stating the obvious here, but the below slide from Strands' presentation at Recked illustrates that it takes a lot of variables to do even the simplest recommendations (and we imagine the below variables only scratch the surface):

So far only a handful of companies have really gotten recommendations to a high level of user satisfaction - Amazon, Netflix (although of course they are looking for a 10% improvement on their algorithm), Google are some names that spring to mind. But for those select few success stories, there are hundreds of other websites and apps that are still struggling to find the magic formula for recommending new products or content to their users. Indeed we at ReadWriteWeb would love to get readers clicking around our site more to discover other content, and we've tried several plug-ins and methods to achieve this - but we're not satisfied yet.

What Have We Missed?

There are many other issues that can happen with recommender systems - some offer up too many 'lowest common denominator' recommendations, some don't support The Long Tail enough and just recommend obvious items, outliers can be a problem, and so on.

Let us know your thoughts and what other problems recommendation technologies face as they continue to ramp up.

ReadWriteWeb Resources for Recommendation Technologies

We also invite you to explore using our custom ReadWriteWeb Resources:

Also, we've embedded the three presentations (Strands, Wakoopa and Reccoon) from Recked below: