This chapter deals with implementing recommendation engines using MapReduce algorithms.
If you are a frequent user of Amazon.com, you are probably familiar with the lists of related products (books, CDs, etc.) the site features to help customers find what they are looking for. Amazon.com presents several such lists on every page, including “Frequently Bought Together” and “Customers Who Bought This Item Also Bought.” These features have roots and solutions in recommendation engines and systems. Typically, recommendation engines and systems enhance the user experience in the following ways:
They assist users in finding information.
They reduce search and navigation time.
They increase user satisfaction and encourage users to return to the site frequently.
The purpose of a recommendation engine or system is to predict or recommend:
Items that the user has not rated, bought, or navigated to yet
Movies or books that a user has not yet considered
Restaurants or locations that a user has not visited
Recommendation systems have become extremely common in recent years. A few examples of such systems are:
Amazon.com and MyBuys.com, which provide recommendation systems for similar items that a user might purchase—in other words, when a user views what other shoppers bought along with the currently selected item
Tripbase.com, a travel website that recommends travel/vacation packages based on a user’s input or preferences ...