September 14th, 2005
Which Movie to Watch? An Overview of Recommendation Systems
During lunch at work one day this week we were talking about movies, one of our favorite topics. Both Jared and Christine suggested watching the new Val Kilmer movie: Kiss Kiss, Bang Bang. They said it was quirky, funny, clever, and just a great story. They highly recommended it.
But I got to thinking. Why is their recommendation powerful? Is it because they are two people whose opinion I trust, or because nothing else was recommended to me? What if, for example, someone else whose opinion I value recommends a different movie as highly as Kiss Kiss, Bang Bang? What should I do then?
MovieLens, a Movie Recommendation Tool
So I turned to my new movie recommendation engine called MovieLens, created by some fine folks at University of Minnesota. They are members of GroupLens Research, and have been working on recommendation systems for over a decade. To make its predictions, MovieLens uses a technique called “collaborative filtering”, which takes actions by both me and others to produce a set of recommendations for movies I should see. They explain more about the service on their about MovieLens page.
Unfortunately, Kiss Kiss, Bang Bang was not in their database yet, as it hasn’t even been released. (Jared and Christine belong to some sort of movie club that often gets to view movies ahead of release).
But it did have recommendations for me. Since I started using it, I’ve entered ratings for over 100 movies in MovieLens, and it has enough information to recommend hundreds of other titles. By combining my ratings of movies with ratings from thousands of other people who have seen the movies I haven’t, the number one recommended movie for me at the present moment is: Dear Frankie, a drama.
Now I have a choice: Kiss Kiss, Bang Bang or Dear Frankie?
There are many movie recommendation systems like MovieLens. People adore the recommendations of the Netflix web site. Blockbuster has one. Walmart suggests movies to watch. Who needs Ebert when we’ve got systems like these?
Recommendation Systems Everywhere
Recommendation systems are a growing trend, perhaps you’ve seen some of these:
- iTunes “Top Songs”
- Amazon “people who bought this also bought…”
- Bloglines “similar blogs”
- Del.icio.us “most popular” bookmarks
- NYTimes “most emailed articles”
Just to name a few. As Movielens demonstrates, recommendation systems are systems that recommend content for us by looking at certain factors including what other people are doing as well as what we are doing. The basic algorithm of collaborative filtering is to compare the trends in how I rate movies to those of other people. If other people rate movies similar to me, then they become part of my “neighborhood” of like-minded users. The movies that get recommended to me will be the ones that my neighborhood rates highly that I haven’t seen yet.
Recommendation Systems are User-Focused
Up until recently, recommendations from friends have been the most helpful way for us to find out about new things. In the future, recommendations will come from computer systems like Movielens in addition to friends. They will further infiltrate our daily lives, and I think we’ll be happy about it.
There is a lot of room for improvement in recommendation systems. Right now most of our systems prioritize content based solely on time: newest at the top, oldest at bottom. We see ads for new movies in a much higher proportion than we do old movies, even though old movies might be just as good or as important to us as the new ones.
The prioritization, of course, isn’t ours. It’s the prioritization of movie studios or distributors or whomever is trying to make money on the release of the movie. Since the prioritization isn’t ours, the relevance is not, either. This is why Netflix has grown so quickly, because it is using collaborative filtering to prioritize users over the movies.
The following list is a few ways how recommendation systems could prioritize content more helpfully. Some of these are similar to Movielens, while others are based more on other ways in which we prioritize information in our daily lives.
Ways to Prioritize
- Newness: This is how most systems prioritize things, by how new they are. New information has a higher potential of being great than old information, and therefore it is highly interesting.
- Time-sensitivity: Prioritized by whether something needs attention now vs. later. The flight status of your plane trip tomorrow would be very important. A month away…probably not.
- Popularity: Prioritized by how many other people are paying attention to it. So, anything that is getting attention now will be quickly routed your way. Anything that doesn’t won’t be seen until you get to it.
- Personal Relevance: Prioritized based on some criteria that you deem relevant. This could be your line of work, your interests, your hobbies, your family members.
- Social Network Relevance: Prioritized based on whether or not it is recommended by someone in your personal network. If someone you know (or someone close to someone you know) recommends something, that gets priority over anybody who you don’t know.
- Authority-based: Prioritized based on some metric of authority, which would take into consideration many other user’s actions. This would have to be based on some metric over time: those outlets that are most visited or referred to are given the most authority. Roger Ebert, for example, is not just the most popular movie reviewer. He’s the most authoritative movie recommender.
- Collaborative: Prioritized based on your own actions compared with others. Whereas prioritization by personal relevance would be based on some criteria you choose, collaborative-based prioritization would be based on some algorithm outside of your direct manipulation. This is what Movielens does.
By combining these various prioritization schemes, recommendation systems could make intelligent decisions about which bits of content to show us now and which we should pay attention to that we already aren’t.
We will soon see recommendation systems everywhere, and start desiring them in parts of our lives that don’t have them yet. For example, I would love to have a great recommendation system for blogs. I’ve used Bloglines, which is decent, but its not my primary blog reader and I find that most of the recommendations are for similar blogs, not just blogs of similar quality. I want to read blogs about all sorts of topics, not just about web design. Way back in November I emailed the folks building Rojo and suggested that their recommendations feature has the potential to be the #1 feature of their software. I think this is still true.
Always showing the latest things can be valuable for people. Avid moviegoers want to see what’s latest, because they’ve seen most of the old movies. On the whole, however, we don’t judge quality by equating it to newness. We judge it on other criteria, be it authority, our social network, or personal interest. Old things are sometimes even better. In fact, many people sadly say that the Golden Age of film has already passed.
The Golden Age of Recommendation Systems, however, has just begun.
Previous
John Battelle’s “The Search”
Links to this Post
Comments
1. Jared Spool 12:03pm, Wed 14th, 2005
For the record, Christine & I saw the film at the Boston Film Festival. It was very cool.
You asked what we need Ebert for? I haven’t used MovieLens (will very soon
), but I regularly use Netflix and, while it’s recommendations are very interesting, it doesn’t say why a movie is recommended. Ebert tells me what he liked or disliked about it and, based on what he says, I’ll decide whether I like his recommendation or not.
This brings us to the value of things like MetaCritic and Rotten Tomatoes which provide calculated scores based on collections of critics. (On Rotten Tomatoes, you can subset critics you find especially match your tastes and get their score in addition to the score of the “cream of the crop” — RT’s own special picks — and the overall score.)
Netflix also lets you separate out the recommendations of the entire Netflix user base from those of your “friends” — the folks you’ve entered into their social networking functionality. This gives additional information.
I guess what I’m trying to say is that there are flavors of recommendations…
oh, and Kiss Kiss Bang Bang was a complete hoot! I highly recommend it.
2. Josh 12:39pm, Wed 14th, 2005
You mean that Roger Ebert is more than “thumbs up” or “thumbs down”?
I like how you mention that you decide whether you like his recommendation or not, it gets into recommending recommenders…which is kind of like what Rotten Tomatoes does. They show you what A.O Scott says about each movie, which is informative if you know who he is. For me, Rotten Tomatoes and Metacritic have become a place where I get a sort of “thumbs up or down” idea of whether it is good or not. They are clearly shooting for “authority” side of things, with a score of 10 presumably being the ultimate recommendation.
On the other hand, imdb.com seems more like a popularity-based rating scheme, because we have no idea who the judgments are coming from.
I think it will be interesting to see if one of these types of systems rises to the top in terms of quality of recommendations, or if we will continue to need lots of recommendation sources to find the really great stuff.
3. Jared Spool 11:20am, Thu 15th, 2005
imdb.com also has the downside that it can be gamed. It wouldn’t be long until a over-zealous movie executive decides to hire a bunch of college kids (or some other source of cheap labor) to repeatedly give 5 star ratings to a new release that everyone else hates.
It’s harder to game Rotten Tomatoes or Netflix.
4. Daren 7:19pm, Wed 28th, 2005
I think “the Golden Age of Recommendation Systems has just begun…” because the web has enabled an efficient, scalable means to reach people on a 1:1 basis. It is meaningful to distinguish “recommendation systems” that try to deliver personalization to each user based on information about that user, from systems that deliver ‘one size fits all’ recommendations based on editorial judgment (Ebert), analysis of editorial judgments (MetaCritic, Rotten Tomatoes), or overall popularity (Top Songs, Most Emailed Articles, etc.). It’s the 1:1 recommendation systems that are truly new and exciting in the new user-centric paradigm — especially when these systems can push personally relevant content to each user without requiring exhausting customization.
In the interest of full-disclosure, I work for ChoiceStream, which powers the movie recommendations on Yahoo!. Interestingly, ALL of the “ways to prioritize” listed in the post are used by the ChoiceStream engine (along with a host of other attributes) to deliver movies based on “personal relevance”.
5. ultraBoy 3:19pm, Tue 12th, 2006
A new one recommendation system – like-i-like.org. Be sure to check it out.
6. MovieFreak 9:56pm, Fri 22nd, 2006
I started a movie recommendation Web site about a year ago (http://www.moviefreak.org), mostly because I wasn’t getting good results from the other sites but also because I wanted a fun side project to collect and rate all the movies I’d seen.
It uses a fairly simple recommendation algorithm based on finding users who rate movies most similarly to yourself (among movies you’ve seen in common) and recommending movies they have rated highly that you haven’t seen yet. It’s free, has no ads, isn’t very flashy and continues as a work in progress.
7. Liezie 3:08pm, Tue 16th, 2007
So, did you like the “Dear Frankie” movie?
8. Josh 3:20pm, Tue 16th, 2007
Liezie…I did very much!
This sounds funny…but I do recommend it. Very heart-warming.
9. Pozycjonowanie 12:09pm, Tue 20th, 2007
On the other hand, imdb.com seems more like a popularity-based rating scheme, because we have no idea who the judgments are coming from.
10. equipment 3:13pm, Wed 21st, 2007
Workout music to get pumped up
11. Pinoy 1:47pm, Sat 31st, 2007
I personally don’t find the “imdb like” movie ratings appropriate. I mean the one with a scale from 1 to 10 without any further details. How could I possibly know whether a 9-rated movie is really good for me when I don’t know based on what factors it has been rated that high. After all the drama fans for example may have rated the movie high but if I don’t like dramas I would be very disappointed if I chose to watch it based on such “recommendations”. So when I see a specific rating I would like to know the factors on which it is based.
On the other hand, recommendation systems where you can read the reasons for every vote is also unappropriate when you have hundreds or thousands of votes.
So what I find best for me is a “rotten-tomatoes like” rating system where you have the opportunity to read different critics opinions and read exactly why they think the movie is good or bad.
12. you tube 1:26pm, Mon 2nd, 2007
I usually talk with friends… also read some forums and opinions!
Mark
13. New Net Articles 6:23am, Fri 13th, 2007
Very interresting article. Can I translate it and insert into my webpage?
14. RedSheik 8:44am, Tue 17th, 2007
What about http://www.movies.monigo.com ? Can you give your opinion on that system ?
15. John 5:57am, Fri 18th, 2007
I am starting to like movie recommendation systems. I had never used them before. Thanks for the information!
John
16. podnośniki 8:17am, Tue 12th, 2007
its good to read review of movies
17. Alex 10:51pm, Tue 21st, 2007
I took a look at your tool. It is a great tool. But, another way to really delve into non computer generated recommendations is through social movie networks. Based on user generated FilmCrave has created a site that is both socialiable and centered around movies. They have also incorporated some really nice easy to use features – like instant search and drag and drop to really make it an easy experience to get it started. It is highly addictive to say the least. Now this does not directly solve your recommended movie problem, the site does encourage friends and is soon to come up with a “friend movie activity feed.” This is similar to facebooks feed, but hopefully more useful and less obnoxious.
18. kata 4:16pm, Thu 4th, 2007
All movie rating websites with specific rating are normally very useful for the users.
Thats the reason why I’m not using for e.g. imdb, because there it’s only possible to rate a movie with numbers from 1 to 10.
But for me and many other users too it’s important to know why another user rated a movie with a specific number. So details are important.
19. Daphne 3:29am, Tue 6th, 2007
I always read recommendations for movies, and if a movie has more good recommendations – I’m watching it, and it ends with a relly good movie…so I think that all this systems helps people in making a good choice for them
20. Kris Colvin 11:22am, Sat 26th, 2008
This offers some great insight into the issues with recommendation systems whose design is driven by marketing as opposed to a user experience evangelist. I recently asked the question, Are Recommendations Engines Circumventing User-Focused Design? because we are going to see more and more recommenders whether we want to as users or not. If they are user-focused, they are infinitely more valuable and less intrusive. I am relieved to see other people pondering this issue.
21. Kyle 5:39pm, Fri 12th, 2008
There’s a new movie recommendation tool called FilmSuggest, which uses user-recommendations, IMDb, and Amazon to generate customized movie recommendations. The tool is a hybrid of of some of the other engines out there. I thought this was apropos
22. Will Callou 1:29pm, Sat 28th, 2009
MovieLens – a great tool. I should be skimming university sites more often. Read this article with great interest and always like to discover new video tools, gadgets, social gauges and such. Thanks for the info.