Skip to content

Recommender Systems

Ishani Kathuria edited this page Dec 25, 2022 · 2 revisions

Recommender Systems (RS) are software tools and techniques that provide suggestions for items to be useful to a user. The suggestions relate to various decision-making processes, such as what items to buy, what music to listen to, or what online news to read.

There are recommendation techniques that are knowledge poor, i.e., they use very simple and essential data, such as user ratings/evaluations for items.

Table of Contents

  1. Fundamental Terms
  2. Types of RS
  3. Functions of RS
  4. Issues with recommender systems

Fundamental Terms

  • Items, i. Objects that are recommended. Users will always incur in a cost, which includes the cognitive cost of searching for the item and the real monetary cost eventually paid for the item.
    • low complexity and value are news, Web pages, books, CDs, movies, etc.
    • larger complexity and value are digital cameras, mobile phones, PCs, etc.
    • most complex items are insurance policies, financial investments, travel, jobs, etc.
  • Users, u. Person searching for items. Very diverse goals and characteristics.
  • Transactions. Recorded interaction between a user and the RS.
  • Feedback. Feedback from users – either explicit or implicit.
    • Explicit. Advantage of simplicity but increases the cognitive load on the user.
      • like/dislike
      • ratings
      • text comments
    • Implicit. Does not involve active user involvement. Includes if the user clicked on an item, how much time spent on the time, saving the item, etc.
  • Ratings.
    • Numerical ratings. eg. 1-5 stars
    • Ordinal ratings. eg. “Strongly agree, agree, neutral, disagree, strongly disagree”
    • Binary ratings. eg. good or bad.
    • Unary ratings. eg. the user has purchased an item or not.
  • Tags. eg. “Too long”, or “acting”.

Types of RS

  1. Content-based: recommend items that are similar to the ones that the user liked in the past. The similarity of items is calculated based on the features associated with the compared items.
  2. Collaborative filtering: recommends to the active user the items that other users with similar tastes liked in the past. calculated based on the similarity in the rating history of the users.
  3. Knowledge-based: based on specific domain knowledge.
    1. Case Based: a similarity function estimates how much the user needs (problem description) to match the recommendations (solutions of the problem).
    2. Constraint Based: predominantly exploit predefined knowledge bases that contain explicit rules about how to relate customer requirements with item features.
  4. Demographic: The assumption is that different recommendations should be generated for different demographic niches.
  5. Community-based: based on the preferences of the users’ friends or community.
  6. Hybrid: combinations of the above-mentioned techniques.

Functions of RS

Why Providers need a RS

  1. Increase the number of items sold. To be able to sell an additional set of items compared to those usually sold without any kind of recommendation.
  2. Sell more diverse items. Another major function of a RS is to enable the user to select items that might be hard to find without a precise recommendation
  3. Increase user satisfaction. A well-designed RS can also improve the experience of the user with the site or the application
  4. Increase user fidelity. A user should be loyal to a Web site that, when visited, recognizes the old customer, and treats him as a valuable visitor.
  5. Better understand what the user wants. The description of the user’s preferences, either collected explicitly or predicted by the system (implicitly).

Why Users need a RS

  1. Find Some Good Items. Recommend to a user some items as a ranked list along with predictions of how much the user would like them.
  2. Find all good items. Recommend all the items that can satisfy some user needs.
  3. Annotation in context. Given an existing context, e.g., a list of items, emphasize some of them depending on the user’s long-term preferences. Ex: TV shows descriptions
  4. Recommend a sequence. Instead of focusing on the generation of a single recommendation, the idea is to recommend a sequence of items that is pleasing as a whole. Ex: TV series
  5. Recommend a bundle. Suggest a group of items that fit well together. Ex: travel plan including various attractions, destinations, and accommodation services.
  6. Just browsing. The user browses the catalogue without any imminent intention of purchasing an item. The task of the recommender is to help the user to browse the items that are more likely to fall within the scope of the user’s interests.
  7. Find a credible recommender. Some users do not trust recommender systems thus they play with them to see how good they are in making recommendations.
  8. Improve the profile. This relates to the capability of the user to provide (input) information to the recommender system about what he likes and dislikes.
  9. Express self. Some users may not care about the recommendations at all. Rather, what it is important to them is that they be allowed to contribute with their ratings and express their opinions and beliefs.
  10. Help others. Some users are happy to contribute with information, e.g., their evaluation of items (ratings) because they believe that the community benefits from their contribution.
  11. Influence others. In Web-based RS, there are users whose main goal is to explicitly influence other users into purchasing particular products.

Issues with recommender systems

  1. Scalability of the algorithms with large and real-world datasets.
  2. Proactive recommender systems, i.e., recommenders that decide to provide recommendations even if not explicitly requested.
  3. Privacy-preserving recommender systems.
  4. Diversity of the items recommended to a target user.
  5. Integration of long-term and short-term user preferences in the process of building a recommendation list.
  6. Generic user models and cross-domain recommender systems are able to mediate user data through different systems and application domains.
  7. Distributed recommender systems that operate in open networks. suffers from all the classical problems of centralized systems.
  8. Optimize a sequence of recommendations.
  9. Designed to operate in mobile devices and usage contexts.
  10. Extras
    1. Exploration versus exploitation
    2. Guided navigation
    3. Time value
    4. User action interpretation
    5. Evaluating recommenders
    6. Academic / Industry partnerships

Clone this wiki locally