Recommender systems systems apply data analysis techniques to the problem of helping users find the items they
would like to purchase at E-Commerce sites by producing a predicted likeliness score or a list of top–N recommended
items for a given user. Item recommendations can be made using different methods. Recommendations can be based
on demographics of the users, overall top selling items, or past buying habit of users as a predictor of future items.
Collaborative Filtering (CF) [19, 27] is the most successful recommendation technique to date. The basic idea of
CF-based algorithms is to provide item recommendations or predictions based on the opinions of other like-minded
users. The opinions of users can be obtained explicitly from the users or by using some implicit measures.
Memory-based Collaborative Filtering Algorithms Memory-based algorithms utilize the entire user-item
data-base to generate a prediction. These systems employ statistical techniques to find a set of users, known as
neighbors, that have a history of agreeing with the target user (i.e., they either rate different items similarly or they
tend to buy similar set of items). Once a neighborhood of users is formed, these systems use different algorithms
to combine the preferences of neighbors to produce a prediction or top-N recommendation for the active user. The
techniques, also known as nearest-neighbor or user-based collaborative filtering are more popular and widely used in
practice.