Recommender systems are one of the most successful and widespread application of machine learning technologies in business. The main goal of a recommender system is to provide users with the most useful items according to their interests, by filtering and suggesting relevant items taking into account or inferring the users’ preferences (i.e., tastes, interests, or priorities).

Three types of recommender systems are commonly recognised according to how recommendations are made, namely content-based filtering (CBF), collaborative filtering (CF), and social filtering (SF) systems:

  • CBF system: Content-Based Filtering algorithm builds a user’s profile based on the features of the objects rated by the user, which are assumed to reflect the user’s content-based interests. In general, a CBF technique can be classified according to whether a model is built from underlying data, commonly based on Machine Learning techniques, or use a heuristic function to compute item scores, mainly inspired on Information Retrieval methods.
  • CF system: Collaborative Filtering technique matches people with similar preferences, or items with similar choice patterns from users, in order to make recommendations. Unlike CBF, CF method aims to predict the utility of items for a particular user according to the items previously evaluated by other like minded users. These methods have the interesting property that no item descriptions are needed to provide recommendations, since the methods merely exploit information about past ratings. Compared to CBF approaches, CF also has the salient advantage that a user may benefit from other people’s experience.
  • SF system: Social Filtering approach has the interesting property that it is generally easier to explain than user-based CF approaches. Recommendations through friends are indeed easy to interpret by end-users. It also helps dealing with the cold start problem, where new users are more difficult to provide recommendations for as long as it is not possible to reliably compute their similarity with other users for lack of data.

Each of these types of recommendations has its own strengths and weaknesses:

  • Restricted content analysis: items to be recommended must have available data related to their features. This data is often unavailable or incomplete. (CBF)
  • Over-specialization:  all the recommended items are similar to those already rated (CBF)
  • New user: when a new user enters into the system she has no ratings (CBF – CF)
  • New item:  recently incorporated items have none or insufficient ratings (CF)
  • Rating data sparsity: the number of available ratings is usually small (CF)
  • Social sparsity: the number of connections per user may be small (SF)
  • Social similarity: two users socially connected may or may not have  interests in common (SF)

In order to address and compensate particular shortcomings, combinations of different recommendation approaches are usually developed, forming the so called hybrid filtering (HF) systems.