Thursday, 11 January 2018

Introduction of Recommender Systems

We would try to clearly explain the concept of a recommender system.

What is a Recommender System
A recommender system is a system that is used to make prediction about what the user preference may be on the items before the user does it.

We are going to briefly discuss the following three topics:
  1. Applications of Recommender Systems
  2. Formulating the Problem - Utility Matrix
  3. Formal Model
  4. Final Notes
    Applications of Recommender Systems
    Recommender systems a used a  wide array of application, it can be arguably the most applied machine learning technology in online systems. Some of the application areas are given below
    1. Movie recommendation in Netflix
    2. Related products recommendation in Amazon
    3. Web page ranking in Google
    4. Friends recommendation in social networks eg. Facebook
    5. News content recommendation in Yahoo News
    6. Priorities Inbox and Spam mail filtering
    7. Computational advertising in Yahoo
    8. Online dating networks eg okCupid
    Kinds of Algorithms used in Recommender Systems
    • Content-based Systems
    • Collaborative filtering
    • Latent factor based models

    Utility Matrix - Formulating the Problem
    An approach to building a recommender system is the use of a utility matrix. This is a table/matrix that show the values or rating users attach to items they use.
    Let's take the example of user ratings of movies. Ratings are from 0 to 5 stars. Table illustrates this:
    Table 1: Illustration of the Utility Matrix
    From the utility matrix, the challenge of the recommender system is to infer unknown(labeled with ?) ratings from the known ratings

    Approach to Recommender System
    Step 1: Gathering the "known" ratings. This data can be collected from the utility matrix.
    Step 2: Extrapolate unknown ratings from the known ratings. The focus would be on high unknown ratings so that it can be used to make recommendation
    Step 3: Evaluating the Extrapolation methods. This refers to a way of measuring the success/performance of the recommendation methods.

    Formal Model
    Using the utility matrix, we can  deduce a formal model for recommender systems using the following assumptions:

    C = set of customers
    S = set of item (movies in this case)
    Utility function u = C x S → R
    R = set of ratings
    R is an ordered set eg 0 -5, or real numbers  in [0, 1]