Collaborative Filtering-Based Recommender System: Approaches and Research Challenges
Collaborative Filtering-Based Recommender System: Approaches and Research Challenges
Abstract— Due to information explosion, huge number of items usefulness of items that have not been discovered by a user.
are present over web which makes it difficult for user to find Usually, this prediction is based on the past behavior of
appropriate item from available set of options. Recommender current user or other users. Another task is to provide
System (RS) overcomes the problem of information overload and recommendations for the items that are most preferable.
suggests items that interest to a user. It has gained a lot of
Recommendation is made after estimating the rating for
popularity in past decades and huge amount of work has been
done in this field. Collaborative Filtering (CF) is the most unrated items i.e. items with highest rating value are shown as
popular and widely used approach for RS which tries to analyze recommendation.
the user’s interest over the target item on the basis of views To accomplish the task of recommendation, various
expressed by other like-minded users. This paper gives a brief approaches have been proposed in literature that is depicted in
idea of various approaches used for Recommender System and Fig. 1. Collaborative Filtering is among the most popular
provides an insight of Collaborative Filtering technique. Here, we algorithms for recommender system which identifies user
also discuss well-known methods for CF i.e. Memory-based, opinion for an item based on the interest of other like-minded
Model-based, and hybrid approaches and at last we focus on people. D. Goldberg et al. were the first who coined the term
research challenges that need to be addressed.
‘Collaborative Filtering’ where they have proposed manual
collaborative filtering technique for Tapestry mailing system
Keywords—Recommender systems, collaborative filtering,
memory-based methods, model-based methods, user-based CF, [1].
item-based CF Besides collaborative filtering, other widely used
algorithm for RSs is content-based information filtering
I. INTRODUCTION techniques where recommendations are made by matching the
Earlier, people were the information consumers but now user profile to that of item descriptions. These algorithms
they used to publish information in the form of articles, posts, employ Information Filtering/Information Retrieval
blogs, forums etc. which leads to information explosion. When techniques as LSI, TF-IDF and so on. Content-based
huge number of choices is available, it becomes difficult for techniques have been used for Netnews filtering [2],
consumer to arrive at the most appropriate choices. To deal improving web page searching via hyperlinks [3],
with the task of choosing the correct product that satisfies the recommending interesting websites based on topics [4] etc.
customer requirements, recommender systems were developed Demographic-based recommender system [5] considers
to provide suggestions for a set of items that are of high user’s demographic profile (age, gender, location etc.) to find
interest to the active user. Recommendations can be applied to similarity between users. It believes that people who grouped
several domains as entertainment, shopping sites, social according to factors like age, gender, location etc. are more
networking, job portals, finding relevant web pages and many likely to share similar interests and recommendations are
more. Thus, it helps in various decision-making processes, made for these homogenous groups.
like which movies to watch, what items to buy, what music to Knowledge-based RS uses domain knowledge for
listen to, which articles to read and so on. producing recommendations by gathering information that
Users have preferences, likes and dislikes for certain finds usefulness of an item for a particular user [6].
items and the degree of preference is evaluated either by Knowledge-based systems can be divided into two: Case-
analyzing the user sentiment expressed through reviews or by based and Constraint-based recommender systems [5].
numeric assigned by a user to an item which is represented as Community-based RS is based on the fact that user rely
rating matrix. User can provide values on 5-point or 10-point more on their friend’s suggestion instead of random similar
scale where 1 is treated as highly dissatisfied, 2 as dissatisfied users. This system analyzes the social network of the target
and so on. Users explore limited number of items and have user and determines his friend’s preference over the given
rated few of them. The matrix becomes sparse, which means item, then produces recommendations for high rated items.
most of the entries are not known. These missing values Basically, this technique is applied over social networks and
indicate that no information is available about user’s known as social recommender systems [7].
preference for the item. Hybrid approaches are used to combine two or more
Recommendation process is split into two tasks. One is techniques to take advantage of individual approaches [8].
considered as the problem of predicting ratings or evaluating Several ways have been proposed to combine various
II. COLLABORATIVE FILTERING OVERVIEW while predicting the value for rui in order to nullify the effect
Collaborative filtering is used to filter choices based on of item and user biases.
the interest of other people in the system. A collaborative III. COLLABORATIVE FILTERING APPROACHES
filtering system consists of m users denoted as U = [u1, u2, Collaborative filtering recommends item based on the interest
u3…..um] and n items as I = [i1, i2, i3…..in] which together forms of other like-minded users or identify items similar to those
m×n rating matrix R as shown in Table 1. Each user previously rated by the target user. It uses statistical
experiences item of their choice and expresses opinion over techniques [10] to find the similarity between user or item
these items as rating score. This rating database is used to find vector. CF approaches can be classified into three categories-
similarity between users. Memory-Based, Model-Based and Hybrid approaches.
TABLE I. SAMPLE RATING MATRIX
A. Memory-Based Algorithms
i1 i2 i3 i4 i5 These methods memorize user-item rating matrix and use
u1 4 ? 5 3 1 full rating database to determine item/user similarity [11].
These methods are easy to implement but faces memory issues
u2 5 2 5 ? ? as it requires a large space to store full-fledge rating matrix.
u3 2 4 ? 1 3 Also, memory-based algorithms are lazy-learner and
susceptible to scalability issues.
Each row corresponds to user rating distribution over item set
1) Category- Memory-based approaches can be further
and column represent rating pattern for that item. To
categorized into following two techniques:
recommend most preferable items to the current user, the
process follows the two given steps: a) User-Based Collaborative filtering
x Prediction- In order to find user u1 interest over item This approach is based on the fact that people who shared
i2, either similarity between u1 and other users is similar opinion in the past are likely to share the same in
measured or similar items to that of i2 are identified. future. This was first introduced in GroupLens for
A rating value r12 is predicted using similarity metrics recommending news article based on other users’ interest or
or machine learning algorithms. rating [12]. Further this concept was used for recommending
x Recommendation- After predicting the u1 likeliness music albums [13] and for video recommendation [14].
for all unseen items, items that seem most interesting In user-based CF, user-vector for common items is used
i.e. high-rated items are recommended to u1. to evaluate the rating score. To predict how u2 will rate item i4,
Basically, CF approaches try to model the user-item similarity between u2 and u1 is calculated over i1 and i3.
interaction based on the different ratings provided. Sometimes, Likewise, similarity between u2 and other users is measured to
the rating provided by user is not genuine because a lenient identify similar users. From Table 1, we see that u2 is more
user may give higher rating than other users in contrast to a similar to u1 rather than u3, so u1 will have more impact on
strict user who gives less than others. This tendency may predicted rating score.
affect the overall prediction value and decreases the b) Item-Based Collaborative Filtering
recommendation quality. A baseline prediction [5] denoted by To extend the scope of CF so it can be applied to large
bui for unknown rating rui is calculated as shown in (1) datasets, a need arises for designing a more scalable algorithm.
= ̅+ + (1) The basic concept behind this approach considers that user
possesses the same view for similar items which was first used
Where ̅ refers to average rating, bu and bi denotes user and
by [15]. It is explained that user might want to add items
item biases respectively. This baseline prediction is subtracted which are similar to the items present in shopping cart [16].
2
3rd IEEE International Conference on "Computational Intelligence and Communication Technology" (IEEE-CICT 2017)
Contrary to user-based CF, it finds similarity between rating rating matrix of size |U|×|I|. Then, our goal is to discover L
pattern of target item to that of other items. To identify the latent features and find two matrices P and Q as shown in (4).
user preference for a specific item, item similarity is measured = × ≈ (4)
by analyzing how other people have rated that particular item.
For example, if most of the users have provided similar ratings Basically, matrix R is factorized into matrix P (|U|×L) and
to different items shows that the items are similar. matrix Q (|I|×L). Here, for matrix P each factor determines
In Item-based CF, item-vector is used for making users’ interest over items that get high score for the
predictions. To predict user u3 rating value for item i3, we corresponding feature vector. This close association between
measure the similarity of i3 with other items and their user and item latent features results in recommendation.
weighted impact is used to calculate rating value r33. From Rating for an item i by user u is predicted using (5).
table 1, we know that item i3 is more similar to i1 than other ̂ = (5)
items. Where and corresponds to user and item feature vector.
2) Similarity Measures & Prediction Computation: Feature vectors are learned by minimizing the difference
System tries to identify the nearest neighbor by using between the actual and the estimated rating. Equation (5) is
similarity measures then predictions are made using rating extended by introducing regularization terms to avoid over-
score and Top-N recommendations are produced. Similarity fitting as given in (6).
between target user and other users is determined and. , ∑ ,( − ̂ ) + (‖ ‖ + ‖ ‖ ) (6)
a) Similarity Calculation- Pearson-correlation similarity The constant λ is the regularization term to avoid over-fitting
measure tries to find a linear relationship between two vectors which generally varies between 0 and 1. Items containing high
[17]. Similarity between user u and user v is determined by value for features that are of high interest to the target user are
using Pearson’s coefficient as given in (2). recommended.
∑ ( ̅ )( ̅ )
= (2) Generally, if rating data are in categorical form,
∑ ( ̅ ) ( ̅ ) classification algorithms like Bayesian methods [19],
Here, ̅ and ̅ are the average rating of user u and v probabilistic model [20, 21], and clustering approaches [22,
respectively. Likewise, item similarity can be calculated over 23] can be used to model collaborative filtering tasks.
all users. Another most commonly used similarity measure is Otherwise, for numerical ratings, Matrix Factorization (MF),
cosine-vector similarity. Other methods for measuring Singular Value Decomposition (SVD) [24], regression
similarity are Adjusted Cosine Similarity, Jaccard Similarity, techniques etc. can be used.
Conditional Probability-Based Similarity, Default Voting, C. Hybrid Collaborative Filtering:
Inverse User Frequency, Case Amplification etc.
To avoid the problem of sparsity and scalability issues,
b) Weighted Sum of Ratings- To get a prediction for user memory-based and model-based techniques are combined to
u over an item i, weighted sum of ratings is used to predict produce better recommendations.
current user’s (u) interest over an item (i) as shown in (3).
We have studied several methods used to apply
∑ ( ̅ ).
= ̅ + (3) collaborative filtering approaches to recommender system. In
∑ | |
literature, many researchers have applied CF to various
Other methods such as simple weighted average, weighted domains like movies, songs, books etc and evaluated RS using
majority prediction techniques can also be used for computing different measures. RSs can be evaluated using online
prediction. is calculated for all unseen items, Top-N measures, offline measures and user-studies [5]. Generally, CF
recommendations are used to produce a ranked list of N most based approaches rely on offline evaluation where ratings for
relevant items that seems useful to the user u. This ranked list random items have been removed and then recommendation
contains item with higher predicted value. algorithm is evaluated by predicting rating for the removed
B. Model-Based Agorithms: items. Lower the difference between actual and estimated
rating, higher is the accuracy of the system. A comparative
To overcome the space and scalability issues of memory- study of the collaborative filtering techniques has been
based approaches, model-based algorithms were developed. presented in Table II which lists a number of techniques
These methods build a model which learns or observes user- applied in different domain and also shows the evaluation
item interactions by the factor of low dimensional metrics used by authors to measure system performance,
representations (user and item feature vectors). These methods accuracy, efficiency etc.
also known as Latent factor models which can be realized as
Matrix Factorization (MF) and its variants like Singular Value IV. RESEARCH CHALLENGES
Decomposition (SVD) [18] and so on.
A. User Cold-Start problem
Matrix Factorization- It tries to characterize both items
and users by their feature vectors of low dimension inferred When a new user enters in the system, he has rated no or only
from the rating patterns of user. For example, consider a set of few items so it becomes very difficult to find similar users and
users denoted by U and a set of items as I. R would be the therefore, degrades the quality of recommendations.
3
3rd IEEE International Conference on "Computational Intelligence and Communication Technology" (IEEE-CICT 2017)
(X, Wan et al., 2008) [27] - Markov Chain Model and multi- Efficiency (conformity rate)
dimensional approach
(P. S. Chakraborty, 2009) [22] MovieLens Incremental clustering approach Accuracy (MAE)
(K. Alodhaibi et al., 2011) [28] MovieLens Randomized algorithm with Greedy MAE, Mean Actual Rating (MAR) &
approach Diversity Measurement
(C. Chen et al., 2013) [29] Epinions Social trust with probabilistic approach Accuracy (MAE)
(D. Zhang et al., 2013) [23] MovieLens and Netflix Bi-clustering with smoothing and fusion Accurcy (RMSE & MAE)
technique
(X. Luo et al., 2015) [18] MovieLens and Jester Latent Factor model based on Hessian-free Accuracy (RMSE & MAE)
optimization technique
(H. Wang et al., 2015) [30] CiteULike Dataset Hierarchical Bayesian Model Performance (Recall)
(G. Guo et al., 2016) [24] FilmTrust, Ciao, Epinions Trust based SVD Accuracy (RMSE & MAE)
and Flixster
(R. Lopes et al., 2016) [31] BookCrossing, Amazon, Graph-based approach with Bayesian Precision, Mean Average Precision
MovieLens, FilmTrust paradigm (MAP), Mean Reciprocal Rank
(MRR), Normalized Discounted
Cumulative Gain (NDCG)
(A. Davoudi & M. Chatterjee, 2016) Epinions Trust model with probabilistic Matrix Accuracy (MAE)
[32] Factorization approach & Vector space
similarity method with centrality measures
(S. Deng et al., 2016) [33] Flixster & Epinions Deep Learning based Matrix Factorization RMSE, Coverage, Precision, F-
measure
available, CF approaches fails to predict the similarity users therefore, user-item matrix formed is extremely sparse
between items. This is a cold-start for new items as rating for due to insufficient rating data which makes algorithms
new items cannot be predicted and therefore, system will not inefficient to measure similarity between users. One of the
be able to recommend new items till some people have rated reasons for sparsity is huge item-to-user ratio.
it. D. Scalability
C. Sparsity As system gets mature with time, number of users and items
increases, leads to millions of ratings which results in slow
Collaborative filtering approaches depend solely on rating computations and degrades the quality of recommendation
database whether to predict similartity between user/item or to system.
train a model. Most of the items are experienced by only a few
4
3rd IEEE International Conference on "Computational Intelligence and Communication Technology" (IEEE-CICT 2017)
E. Gray Sheep Problem For these users, it becomes very difficult to determine like-
‘Gray sheep’ term is used for the users those who possess minded people and thus, CF based approaches fails to generate
unusual taste that rarely matches to any other group of people. promising recommendations which deteriorates the quality of
recommender system and results in dissatisfaction of user.
5
3rd IEEE International Conference on "Computational Intelligence and Communication Technology" (IEEE-CICT 2017)
collaborative filtering of netnews," in ACM and Item Ratings," IEEE Transactions on Knowledge
conference on Computer supported cooperative work and Data Engineering, vol. 28, pp. 1607-1620, 2016.
Chapel Hill, North Carolina, USA: ACM, 1994. [25] Ken Goldberg, Theresa Roeder, Dhruv Gupta, and C.
[13] U. Shardanand and P. Maes, "Social information Perkins, "Eigentaste: A Constant Time Collaborative
filtering: algorithms for automating "word of Filtering Algorithm," Information Retrieval, vol. 4,
mouth"," in SIGCHI Conference on Human Factors pp. 133-151, 2001.
in Computing Systems Denver, Colorado, USA: [26] Z. Huang, X. Li, and H. Chen, "Link prediction
ACM Press/Addison-Wesley Publishing Co., 1995. approach to collaborative filtering," in 5th
[14] Will Hill, Larry Stead, Mark Rosenstein, and G. ACM/IEEE-CS joint conference on Digital libraries:
Furnas, "Recommending and evaluating choices in a ACM, 2005, pp. 141-142.
virtual community of use," in SIGCHI conference on [27] X. Wan, T. Ninomiya, and T. Okamoto, "A learner's
Human factors in computing systems: ACM role-based multi dimensional collaborative
Press/Addison-Wesley Publishing Co., 1995, pp. recommendation (LRMDCR) for group learning
194-201. support," in IEEE International Joint Conference on
[15] Badrul Sarwar, George Karypis, Joseph Konstan, and Neural Networks (IEEE World Congress on
John Riedl, "Item-based collaborative filtering Computational Intelligence): IEEE, 2008, pp. 3912-
recommendation algorithms," in 10th international 3917.
conference on World Wide Web Hong Kong, Hong [28] K. Alodhaibi, A. Brodsky, and G. A. Mihaila, "A
Kong: ACM, 2001. confidence-based recommender with adaptive
[16] G. Linden, B. Smith, and J. York, "Amazon. com diversity," in IEEE Symposium on Computational
recommendations: Item-to-item collaborative Intelligence in Multicriteria Decision-Making
filtering," IEEE Internet Computing, vol. 7, pp. 76- (MDCM): IEEE, 2011, pp. 36-43.
80, 2003. [29] C. Chen, J. Zeng, X. Zheng, and D. Chen,
[17] K. Pearson, On further methods of determining "Recommender System Based on Social Trust
correlation vol. 4. London: Dulau and Company, Relationships," in IEEE 10th International
1907. Conference on e-Business Engineering (ICEBE)
[18] X. Luo, M. Zhou, S. Li, Y. Xia, Z. You, Q. Zhu, and 2013, pp. 32-37.
H. Leung, "An Efficient Second-Order Approach to [30] H. Wang and W. J. Li, "Relational Collaborative
Factorize Sparse Matrices in Recommender Topic Regression for Recommender Systems," IEEE
Systems," IEEE Transactions on Industrial Transactions on Knowledge and Data Engineering,
Informatics, vol. 11, pp. 946-956, 2015. vol. 27, pp. 1343-1355, 2015.
[19] X. Su and T. M. Khoshgoftaar, "Collaborative [31] R. Lopes, R. Assunção, and R. L. T. Santos,
filtering for multi-class data using belief nets "Efficient Bayesian Methods for Graph-based
algorithms," in 18th IEEE International Conference Recommendation," in 10th ACM Conference on
on Tools with Artificial Intelligence: IEEE, 2006, pp. Recommender Systems Boston: ACM, 2016, pp. 333-
497-504. 340.
[20] T. Hofmann, "Collaborative filtering via gaussian [32] A. Davoudi and M. Chatterjee, "Product rating
probabilistic latent semantic analysis," in 26th annual prediction using trust relationships in social
international ACM SIGIR conference on Research networks," in 13th IEEE Annual Consumer
and development in informaion retrieval Toronto, Communications & Networking Conference (CCNC)
Canada: ACM, 2003. Las Vegas: IEEE, 2016, pp. 115-118.
[21] B. M. Marlin, "Modeling user rating profiles for [33] S. Deng, L. Huang, G. Xu, X. Wu, and Z. Wu, "On
collaborative filtering," in Advances in neural Deep Learning for Trust-Aware Recommendations in
information processing systems, 2003, p. None. Social Networks," IEEE Transactions on Neural
[22] P. S. Chakraborty, "A scalable collaborative filtering Networks and Learning Systems, vol. PP, pp. 1-14,
based recommender system using incremental 2016.
clustering," in International Conference on Advance
Computing IEEE, 2009, pp. 1526-1529.
[23] D. Zhang, C. H. Hsu, M. Chen, Q. Chen, N. Xiong,
and J. Lloret, "Cold-Start Recommendation Using Bi-
Clustering and Fusion for Large-Scale Social
Recommender Systems," IEEE Transactions on
Emerging Topics in Computing, vol. 2, pp. 239-250,
2013.
[24] G. Guo, J. Zhang, and N. Yorke-Smith, "A Novel
Recommendation Model Regularized with User Trust