0% found this document useful (0 votes)
34 views7 pages

Context Clustering-Based Recommender Systems

This paper proposes a new recommender system called CoCl that utilizes contextual information and clustering to generate recommendations. CoCl clusters ratings and users using contextual data to create new user-item matrices. It then employs collaborative filtering on the new matrices to make predictions. The paper aims to improve recommendation accuracy over traditional systems by incorporating context into the modeling process.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views7 pages

Context Clustering-Based Recommender Systems

This paper proposes a new recommender system called CoCl that utilizes contextual information and clustering to generate recommendations. CoCl clusters ratings and users using contextual data to create new user-item matrices. It then employs collaborative filtering on the new matrices to make predictions. The paper aims to improve recommendation accuracy over traditional systems by incorporating context into the modeling process.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Proceedings of the Federated Conference on DOI: 10.

15439/2020F54
Computer Science and Information Systems pp. 85–91 ISSN 2300-5963 ACSIS, Vol. 21

Context Clustering-based Recommender Systems


Eyad Kannout
Institute of Informatics, University of Warsaw
Banacha 2, Warsaw, Poland
[email protected]

Abstract—Recommender systems have gained lots of attention number of papers on context-aware recommender systems
due to the rapid increase in the amount of data on the internet. have been appeared recently, this field is still considered as
Therefore, the demand for finding more advanced techniques relatively new and several challenges that need more attention
to generate more useful recommendations becomes an urgent.
The increasing need for generating more relevant recommen- by the current researchers still exist. Therefore, in this paper,
dations led to the emergence of many novel recommendation we work on finding new methods that incorporate the contex-
systems, such as Context-aware Recommender System (CARS), tual information in recommendation systems to generate more
which is based on incorporating the contextual information in useful and user-related recommendations.
recommendation systems. The goal of this paper is to propose
The main contributions of this paper are as follows: 1)
new recommender systems that utilize the contextual information
to find more relevant recommendations. proposing two methods which cluster the ratings and the
In this paper, we propose CoCl, a novel Context Clustering- users in user-item matrix using the contextual information; 2)
based recommender system. We introduce two approaches which producing new aggregated forms of user-item matrix based
utilize the contextual information and KMeans clustering algo- on previous grouping of ratings and users; 3) employing
rithm to generate new forms of user-item matrices. We show that collaborative filtering model to predict missing preference of
the accuracy of CoCl which uses the new user-item matrices
has been improved comparing with the accuracy of classical a user for an item using new aggregated user-item matrices.
recommender system which uses the original user-item matrix. The remainder of this paper is organized as follows. In Sec-
tion 2, we provide background information for collaborative
Keywords: collaborative filtering, context-aware recommender filtering and context-aware recommender systems. Section 3
system, contextual information, clustering, accuracy of predic- describes the problem we study in this paper and reviews its
tions, quality of recommendations. related works. In Section 4, we present CoCl, a novel context
clustering based recommender system. Section 5 evaluates and
I. I NTRODUCTION
compares CoCl against traditional recommender system. Fi-
HROUGHOUT the past decade, along with the rapid nally, in Section 6, we draw conclusions and make suggestions
T expansion of the online services, many e-commerce, e-
tourism, e-resource services, social media, and retail compa-
of possible future work.

nies started leveraging the power of data in order to boost their II. L ITERATURE R EVIEW FOR R ECOMMENDATION
profits by assisting the customers in discovering interesting S YSTEMS
items/products in a huge amount of online data. For the sake
of achieving this goal, a recommender system (RS) must be In this section, we briefly summarize the academic knowl-
implemented, and therefore, the demand for recommender edge on collaborative filtering as well as context-aware rec-
systems have been increased more than ever before. ommender system.
In theory, traditional, or two-dimensional (2D), recom-
mender systems tend to estimate user preferences or user’s A. Collaborative Filtering
ratings based on the ratings given by the users to other The basic idea behind collaborative filtering is that the
items, and possibly on some other information, such as user users who have similar preferences in the past tend to behave
demographics and item characteristics. However, early recom- similarly in the future [1]. The recommendations made by
mender systems emerged without taking into consideration this methodology are based on information about similar users
any contextual information, such as time, location, and the and items. Collaborative filtering methods only rely on user
company of other people when providing recommendations. ratings or user interactions. That means there is no need to
During the past decade, the increasing need for generating have additional information about items or users. Moreover,
more relevant recommendations led to the emergence of the user’s ratings can be acquired explicitly or implicitly (e.g.,
many novel recommendation systems, such as context-aware products bought, songs heard, movies watched, visited pages)
recommender systems (CARS), social recommender systems, [4], so collaborative filtering methods can be used even when
and group recommender systems. the user does not explicitly provide ratings for the items. In
Recently, the field of context-aware recommender systems the literature, collaborative filtering methods can be grouped
(CARS) has attracted a lot of attention due to its importance in two general classes (i) memory-based techniques and (ii)
in many recommendation applications. Although an increasing model-based techniques.

IEEE Catalog Number: CFP2085N-ART ©2020, PTI 85


86 PROCEEDINGS OF THE FEDCSIS. SOFIA, 2020

In memory-based technique, the rating history is directly any traditional 2D recommender system on the selected
used to predict rating of items that the user has not yet seen. data [8].
This can be done in two ways: (i) user-based collaborative • Contextual post-filtering: the context information is ig-
filtering and (ii) item-based collaborative filtering. In the nored during the recommendation process, only the re-
former method, a set of neighbor users will be selected sulting set is contextualized. In this approach, the contex-
based on similarity in their rating history to the targeted tual information is initially ignored, and the ratings are
user. Then, the recommendations will be produced based on predicted using any traditional 2D recommender system
top-rated products liked by neighbor users. The item-based on the entire data. Then, the resulting set of recommen-
collaborative filtering is just an analogous procedure to the dations is adjusted (contextualized) for each user using
previous method. Here, for each item, a set of k-nearest items the contextual information [8].
will be selected. Then, for every product that the target user • Contextual modeling: the recommendation algorithm is
has not rated before, we estimate the rating using the closest altered to include the context and consider it when cal-
neighbors which are rated previously by the target user. It is culating recommendations. In other words, the contextual
important to note that every neighbor has a weight, which information is used directly in the modeling technique as
reflects the degree of similarity, that will be used in process part of rating estimation [8] [9].
of rating estimation. However, the most popular metrics used
to calculate the similarity between different users, or items, III. R ELATED W ORKS
are cosine similarity and Pearson correlation. Before presenting CoCl, we review some of the research lit-
In contrast to memory-based technique, which uses the erature related to contextual collaborative filtering approaches
stored ratings directly in the prediction, the model-based tech- that utilize contextual information to improve recommendation
nique use these ratings to learn a predictive model. Basically, quality.
the learning process is based on matrix factorization which Over the past decade, a lot of research concerned with
uses the rating history to learn the latent preferences of users context-aware recommender systems has been presented.
and items in order to make a prediction for the missing ratings. Palmisano et al. [10] has proved that contextual information,
Matrix factorization is an unsupervised learning method for such as age, time, and location, is very useful when pre-
dimensionality reduction. The most popular techniques applied dicting customer behavior. Recently, many researches started
for dimensionality reduction are Principal Component Analy- focusing on the use of context for user-item sub-grouping.
sis (PCA), Singular Value Decomposition (SVD), Probabilistic Zhong et al. [11] and Liu et al. [12] used decision trees to
Matrix Factorization (PMF), Matrix Completion Technique, partition the original rating matrix hierarchically by grouping
Latent Semantic methods, and Regression and Clustering similar users and items together, and then using the matrix
[2] [5]. factorization technique to predict missing preference of a user
for an item using the partitioned matrix. The previous sub-
B. Context-aware Recommender System grouping methods can only handle categorical contexts, and to
mitigate this problem, Xiaolin Zheng et al. [13] proposed the
The basic idea behind context-aware recommender systems use of spectral clustering for user-item sub-grouping, which
(CARS) is to incorporate the contextual information into can handle both categorical and continuous contexts. A new
recommendation process in order to recommend more relevant recommender system which is based on matrix factorization
items to users under certain circumstances [2] [3]. Many has been proposed by Xiaoyao et al. [14]. They considered
researchers and practitioners have recognized that it is very many factors while building the recommender system, such as
important to consider relevant contextual information, such as contextual information, user ratings and item feature. Using
weather, time, location and mood, when providing recommen- K-modes algorithm, they optimized the process of building
dations. For example, the vacation packages proposed by a the recommender system by clustering user-item dataset which
travel agency in the winter can be very different from the one eventually reduces the computation complexity. However, they
proposed in the summer. Thus, the main goal of context-aware performed extensive experiments to demonstrate that their
recommender system is to consider the contextual information method improves the accuracy of generated recommendations.
when providing recommendations [6]. After gathering the According to previous findings, sub-grouping has been
relevant context, explicitly, implicitly or by inferring, the proved to be valuable for better performance in collaborative
following question arises: how can we incorporate the context filtering methods, but we believe there is space left for
in the recommendation process?. However, Adomavicius and further improvements by discovering more advanced grouping
Tuzhilin [7] identified three different approaches to achieve approaches.
this goal as follows:
• Contextual pre-filtering: here the context information is IV. C O C L R ECOMMENDER S YSTEM
used to select only the most relevant data from the In this section, we present CoCl, a Context Clustering based
data set. In other words, information about the current recommender system. We first formalize the context-aware
context is used for selecting the relevant set of data recommendation problem. Then, we describe our proposed
records (i.e., ratings). Then, ratings can be predicted using contextual clustering model that is used in CoCl.
EYAD KANNOUT: CONTEXT CLUSTERING-BASED RECOMMENDER SYSTEMS 87

A. Problem Definition After clustering the records in the original user-item matrix
using previous approaches, we generate two new versions of
The main problem we address in this paper is to improve the
user-item matrix by aggregating the ratings given for each
traditional collaborative filtering approach by incorporating the
movie in each cluster. For instance, if the same movie has been
context in the process of building the recommender system.
rated by two users who belong to the same cluster, then the
The main idea is to produce new forms of user-item matrices,
ratings given by both users will be replaced by their average.
also known as utility matrices, by clustering, aggregating and
The new generated matrices can be utilized in different ways
splitting the records in this matrix. However, two approaches
while building the recommender system. One way is to divide
will be provided for grouping or clustering the rating records
the aggregated user-item matrix into smaller matrices based on
in utility matrix. In the first approach, called RateClust, the
the cluster the records belong to. Then, many recommender
ratings in the utility matrix will be grouped in such a way
systems can be build using these smaller matrices. However,
that the ratings with similar contextual information will be
this approach is useful when we have enough number of
together. In the second approach, called UserClust, the users
records belong to each cluster. Another way is to just build one
in the utility matrix will be grouped based on their ratings in
recommender system without dividing the aggregated user-
dedicated contexts.
item matrix. More information about these approaches will be
provided in the next section while comparing the performance
B. Contextual Clustering Model
of CoCl models with traditional collaborative filtering model.
In this section, we introduce the reader to our proposed
recommendation model. As mentioned before, CoCl proposes V. E VALUATION FOR C O C L
a hybrid model that utilizes the contextual information and In this section, we conduct comprehensive experiments to
KMeans clustering algorithm to create new forms of user-item evaluate the performance of CoCl by comparing the rec-
matrices. Then, we apply the traditional collaborative filtering ommendations accuracy with classical collaborative filtering
approach on these new matrices to get many recommender recommender system.
systems which give us more accurate results than building one
A. Dataset
recommender system using the original dataset. In this exper-
iment, we present two approaches to utilize the contextual In our experiments, we used LDOS-CoMoDa1 dataset which
information for the purpose of clustering the data in user-item is presented by KOŠIR et al. [15]. LDOS-CoMoDa is a context
matrix: (i) RateClust, and (ii) UserClust. rich movie recommender dataset that consists of 200 users,
In RateClust, we aim to group the ratings that are given who gave 2296 ratings for 4138 movies in twelve pieces of
in similar contexts. As we mentioned in previous section, the contextual information. However, the contextual information
contextual information in our dataset describes the situation is explicitly acquired from the users directly after watching
in which the user consumed the item. In this approach, the the movies. Moreover, this dataset is collected from real user-
contextual information space is represented by an array of item interaction and not from hypothetical situation or user’s
vectors where every vector, i.e. C = (c1, c2, · · ·, cl) represents memory of past interactions. The context variables in LDOS-
the contexts associated with one rating in user-item matrix. CoMoDa dataset are presented in Table I. The values of
The values in this vector describes the situation for every context variables in this dataset is represented by numerical
context variable. For instance, the first context variable in our values. For example, in daytaype variable, Working day is
dataset is time which is represented by five values as follows: represented by 1, Weekend by 2, Holiday by 3.
morning = 1, afternoon = 2, evening = 3, night = 4, missing
TABLE I: Context variables in LDOS-CoMoDa dataset
value = -1. After creating this array of vectors, we passed it
to KMeans algorithm that helps us to cluster the ratings, and time Morning, Afternoon, Evening, Night
daytype Working day, Weekend, Holiday
subsequently divide the user-item matrix into smaller parts. season Spring, Summer, Autumn, Winter
On the other hand, our goal in UserClust, is to group location Home, Public place, Friend’s house
the users that share the same behaviour in similar contexts. weather Sunny / clear, Rainy, Stormy, Snowy, Cloudy
Alone, My partner, Friends, Colleagues, Parents,
In other words, we aim to cluster the users based on their social
Public, My family
ratings in particular context. For instance, in our experiment, Sad, Happy, Scared, Surprised, Angry, Disgusted,
endEmo
we select the mood context which is represented by positive, Neutral
neutral, negative and missing (unknown). Then, for each user, Sad, Happy, Scared, Surprised, Angry, Disgusted,
dominantEmo
Neutral
we calculate the average rating given in every mood possible mood Positive, Neutral, Negative
value. So, for every user, we have average rating for positive, physical Healthy, Ill
neutral, negative and missing values. The result of applying User decided which movie to watch, User was given
decision
a movie
previous step for all users is an array of vectors which is used first interaction with a movie, n-th interaction with a
to cluster the users. Finally, the output of users’ clustering interaction
movie
is utilized to split the user-item matrix into smaller groups
which contain the users who rate the items similarly in the
same context. 1 https://www.lucami.org/en/research/ldos-comoda-dataset/
88 PROCEEDINGS OF THE FEDCSIS. SOFIA, 2020

Also, it is worth to note that the entire dataset is splitted


into training, testing and validation sets where:
• Training set is used to build the recommender systems
using several algorithms, where each algorithm has pre-
defined set of input parameters. The optimal values of
these parameters is discovered using the validation set.
• Testing set is used to compare the accuracy of different
recommender systems.
• Validation set is used to discover (i) the optimal parame-
ters settings for each recommender system algorithm and
(ii) the optimal number of clusters. More details about
these two steps will be provided in next subsection.
Fig. 1: Calculating mean silhouettes score over all samples for
B. Parameters Selection different number of clusters
In order to evaluate our model, various collaborative fil-
tering algorithms have been applied to generate recommen- C. Performance Comparison and Analysis
dations based on user-item rating matrix. We use Surprise
We use the standard Root Mean Square Error (RMSE)
library which provides various implementations of collab-
and Mean Absolute Error (MAE) metrics to measure and
orative filtering algorithms [16]. These algorithms are (i)
compare the performance of various recommendation models.
matrix factorization-based algorithms, such as singular value
The RMSE imposes a penalty over the larger errors:
decomposition (SVD) and non-negative matrix factorization
(NMF) and (ii) k-nearest neighbors-based algorithms, such as
v
u
u1 X N
KNNBasic, KNNBaseline, KNNWithMeans and KNNWith- RM SE = t (xi − x‘i )2 (1)
ZScore and (iii) other types of algorithms, such as CoCluster- N i=1
ing, SlopeOne, NormalPredictor and BaselineOnly. The main
While MAE measures the average magnitude of the errors
challenge here is to determine the optimal values of hyper-
in a set of predictions, without considering their direction:
parameters for every algorithm. This is extremely important
since the performance of the recommender system will be 1 X
N

impacted based on those values. Moreover, selecting optimal M AE = |xi − x‘i | (2)
N i=1
parameters settings for every algorithm is also important to
conduct fair and reliable experiments. To tackle this challenge, After generating the new utility matrices, aggregating the
we use grid search with cross-validation (GridSearchCV) tool ratings, and calculating the weights, we evaluate the rec-
which automates the process of tuning the hyper-parameters ommendation accuracy of context clustering based models
for every algorithm mentioned before. by comparing it with classical collaborative filtering model.
On the other hand, we used silhouettes score to select For the sake of more accurate evaluation, we use different
the optimal number of clusters for both versions of CoCl, approaches in our comparisons.
RateClust and UserClust. The silhouettes score is calculated We start evaluating CoCl recommender system which uti-
for each instance based on below formula: lizes the contexts to build two types of recommendation
systems by clustering the ratings (RateClust), and clustering
SilhouetteScore = (x − y)/ max(x, y) the users (UserClust) in utility matrix. The recommendation
systems produced by CoCl will be evaluated using four
where, y is the mean distance to the other instances in the same methods.
cluster (mean intra-cluster distance), x is mean distance to In the first one, we use cross-validation method to check
the instances of the next closest cluster (mean nearest-cluster how well the model is able to make new predictions for
distance). data which has not seen before. Using k-fold cross-validation
The silhouettes score, or silhouettes coefficient, varies be- is very useful in such scenario when the size of dataset
tween 1 and −1. A value close to 1 implies that the instance is considered as small. In this method, we use the entire
is far away from the neighboring clusters; hence, it is a part of aggregated dataset to build each recommender system in CoCl.
the right cluster. Whereas, a value close to −1 indicates that we split this data into two parts, training, and testing. The
the value is assigned to the wrong cluster. A value close to 0 training, which is equal to 85 percent of entire dataset, is
means that the instance is very close to the decision boundary used to evaluate every model using repeated cross-validation
between two neighboring clusters [17]. method. While the rest of the data is used as testing set
Fig 1 shows that 8 is the optimal number of clusters that for final general evaluation. The same criteria is applied to
needs to be selected to group the users based on their ratings split the original, not aggregated, dataset which is used to
in given context. evaluate classical recommender system. With the objective of
EYAD KANNOUT: CONTEXT CLUSTERING-BASED RECOMMENDER SYSTEMS 89

conducting fair and reliable comparison, we ensure that the dataset is used without any splitting. The comparison results
same records have been used in every fold while evaluating of this evaluation methodology are shown in Tables VIII and
all models using cross-validation method. The only difference IX. The results indicate that the clustering based recommender
between the folds is that the aggregated ratings have been systems achieve better accuracy than the one which is pro-
used to evaluate CoCl models while the original ratings have duced using original dataset. However, RateClust models has
been used to evaluate traditional model. We compare the slightly better accuracy than UserClust models.
accuracy between CoCl and classical models by calculating the We notice that in all experiment scenarios, CoCl models
average of RMSE and MAE which are generated in each fold. outperform traditional collaborative filtering model. Moreover,
However, we repeat the same comparison by using different the experiment results demonstrate the advantage of consid-
algorithms to build the recommender system. The comparison ering the contextual information in the area of recommender
results of this evaluation methodology for RateClust and User- systems.
Clust are shown in Tables II and III respectively. Moreover,
Fig 2 shows the generalization assessment of final models VI. C ONCLUSIONS AND F UTURE W ORK
fit on entire training set. It is important to note that the In this paper, we have proposed CoCl, a novel context
performance of CoCl models outperforms the performance of clustering based recommender system, which methodically
traditional model in every iteration of cross-validation method. incorporates the context in the process of generating the
In conclusion, this experiment shows that CoCl models reduce recommendations. Two versions of CoCl have been intro-
MAE/RMSE by around 6% on average compared to classical duced, RateCust, rating-based clustering recommender system,
collaborative filtering model. and UserClust, user-based clustering recommender system.
In the second evaluation methodology, we use holdout We proposed to use KMeans clustering algorithm to cluster
evaluation method where the entire aggregated dataset is the data in user-item matrix in order to produce new forms
splitted into training and testing sets. The training and testing of utility matrices which can achieve better accuracy using
records have been selected in a way such that from each collaborative filtering techniques. To evaluate our proposed
cluster we select 85 percent of data as training and 15 as models, we conducted comprehensive experiments on LDOS-
testing. In this way, we guarantee that records from all clusters CoMoDa dataset using Surprise library which provides various
have been included in training and testing sets. For classical implementations of collaborative filtering algorithms that can
recommender system, we select the same records which are be used for building and analyzing recommender systems.
selected before as training and testing but from original user- Moreover, multiple evaluation methodologies have been pro-
item matrix without any aggregation in ratings. After that, we posed to compare between models. The experimental results
compare the accuracy by calculating RMSE and MAE for each can reveal the answer for our research question stated above.
recommender system. However, we repeat the same compar- The results illustrate that CoCl accuracy outperforms classical
ison by using different algorithms to build the recommender collaborative filtering approach in all experiments. However,
system. The comparison results of this evaluation methodology experiments also indicate that RateClust approach has slightly
are shown in Tables IV and V. This experiment demonstrates better performance than UserClust approach.
that using contextual information improves recommendation In the future work, we are interested in applying CoCl to
quality. some real world application scenarios. For instance, CoCl can
In the third evaluation methodology, we split the records be integrated into a website where the recommender system
in aggregated user-item matrix into smaller matrices based on can generate some recommendations in real time based on
the clustering results. Then, we build a clustering based rec- the current context. Also, we need to take into account the
ommender systems for each one of them. These recommender dynamics of evolving user preference by periodically updating
systems will be compared with classical recommender system the user-item matrices based on recent recommendations.
which is created based on original dataset without any splitting Moreover, in the scenario of splitting the user-item matrix into
or aggregation. The comparison results of this evaluation smaller ones based on clusters, we need to determine in real
methodology are shown in Tables VI and VII. It is important to time the proper recommender system that can produce the best
note that the recommender systems which are generated using recommendations for specific user and in dedicated context.
the small aggregated utility matrices perform better than the Also, LDOS-CoMoDa is considered to be rather small dataset,
one which is generated based on entire aggregated matrix. and hence, another suggestion for future work is to evaluate
In the fourth method, we create ensemble recommender sys- CoCl against larger and more complex datasets.
tems for RateClust, UserClust and classical models. The main On the other hand, in our research we focused on memory
idea is to aggregate the ratings produced by each algorithm in based techniques in collaborative filtering, so another im-
order to produce the final ratings in the target recommender portant aspect to consider is to evaluate CoCl using model
system. For the sake of improving the results, we select the based techniques. Furthermore, we are particularly interested
best three algorithms that produce the most accurate results in using more advanced machine learning techniques to in-
in previous evaluation methods. These algorithms are SVD, corporate the contexts in recommendation systems. Also,
KNNBaseline and BaselineOnly. However, while building the another direction of future work is to use distributed stream
clustering-based recommender systems; the entire aggregated processing engines, like Apache Flink, to examine parallel
90 PROCEEDINGS OF THE FEDCSIS. SOFIA, 2020

TABLE II: Cross Validation - Rating-based clustering VS Classical


Baseline KNN KNN KNN KNN Slope Normal Co-
Model Metric SVD SVDpp NMF
Only Baseline Basic WithMeans WithZScore One Predictor Clustering

RMSE 0.96 0.95 0.95 1.07 1.08 1.08 1.09 1.06 1.03 1.36 1.10
RateClust
MAE 0.76 0.76 0.76 0.78 0.79 0.82 0.82 0.82 0.83 1.08 0.83
RMSE 1.01 1.01 1.02 1.14 1.18 1.16 1.12 1.14 1.09 1.41 1.14
Classical
MAE 0.81 0.81 0.82 0.87 0.89 0.89 0.85 0.89 0.88 1.13 0.88

TABLE III: Cross Validation - User-based clustering VS Classical


Baseline KNN KNN KNN KNN Slope Normal Co-
Model Metric SVD SVDpp NMF
Only Baseline Basic WithMeans WithZScore One Predictor Clustering

RMSE 0.95 0.94 0.96 1.13 1.13 1.08 1.08 1.09 1.01 1.33 1.13
UserClust
MAE 0.75 0.74 0.76 0.84 0.84 0.80 0.81 0.84 0.81 1.04 0.86
RMSE 0.99 0.99 1.03 1.17 1.23 1.20 1.17 1.15 1.06 1.53 1.18
Classical
MAE 0.80 0.80 0.84 0.90 0.93 0.93 0.91 0.91 0.87 1.21 0.91

(a) Rating-based clustering VS Classical (b) User-based clustering VS Classical

Fig. 2: Generalization assessment using testing set

TABLE IV: Performance Comparison - Rating-based clustering (one recommender system) VS Classical
Baseline KNN KNN KNN KNN Slope Normal Co-
Model Metric SVD SVDpp NMF
Only Baseline Basic WithMeans WithZScore One Predictor Clustering

RMSE 0.86 0.85 0.86 1.02 1.03 1.02 1.06 0.98 0.92 1.31 0.99
RateClust
MAE 0.69 0.68 0.68 0.72 0.73 0.78 0.79 0.75 0.73 1.07 0.76
RMSE 0.94 0.94 0.95 1.11 1.08 1.06 1.08 1.05 1.00 1.38 1.11
Classical
MAE 0.76 0.77 0.76 0.83 0.83 0.80 0.83 0.82 0.80 1.12 0.86

TABLE V: Performance Comparison - User-based clustering (one recommender system) VS Classical


Baseline KNN KNN KNN KNN Slope Normal Co-
Model Metric SVD SVDpp NMF
Only Baseline Basic WithMeans WithZScore One Predictor Clustering

RMSE 0.89 0.89 0.89 0.95 0.96 1.00 1.05 0.96 0.98 1.34 0.97
UserClust
MAE 0.69 0.70 0.70 0.68 0.68 0.75 0.78 0.75 0.76 1.07 0.73
RMSE 1.04 1.03 1.05 1.12 1.18 1.15 1.14 1.17 1.14 1.49 1.18
Classical
MAE 0.84 0.84 0.85 0.87 0.89 0.89 0.88 0.92 0.92 1.22 0.93
EYAD KANNOUT: CONTEXT CLUSTERING-BASED RECOMMENDER SYSTEMS 91

TABLE VI: Performance Comparison - Rating-based clustering (Multiple recommender systems) VS Classical
Baseline KNN KNN KNN KNN Slope Normal Co-
Model Metric SVD SVDpp NMF
Only Baseline Basic WithMeans WithZScore One Predictor Clustering

RMSE 0.78 0.79 0.78 0.82 0.83 0.80 0.80 0.86 0.82 1.17 0.86
RateClust
MAE 0.61 0.62 0.60 0.61 0.62 0.56 0.56 0.66 0.62 0.95 0.67
RMSE 0.94 0.93 0.95 1.08 1.12 1.08 1.06 1.05 1.00 1.35 1.06
Classical
MAE 0.77 0.76 0.76 0.83 0.83 0.83 0.80 0.82 0.80 1.06 0.83

TABLE VII: Performance Comparison - User-based clustering (Multiple recommender systems) VS Classical
Baseline KNN KNN KNN KNN Slope Normal Co-
Model Metric SVD SVDpp NMF
Only Baseline Basic WithMeans WithZScore One Predictor Clustering

RMSE 0.88 0.89 0.88 0.89 0.90 0.88 0.89 0.93 1.04 1.26 0.91
UserClust
MAE 0.68 0.69 0.69 0.64 0.64 0.60 0.61 0.71 0.82 1.00 0.68
RMSE 1.04 1.03 1.05 1.12 1.18 1.15 1.14 1.17 1.14 1.39 1.15
Classical
MAE 0.85 0.83 0.85 0.87 0.89 0.89 0.88 0.92 0.92 1.12 0.92

TABLE VIII: Rating-based clustering VS Classical (Ensemble [4] S.K. Lee, Y.H. Cho, and S.H. Kim, "Collaborative filtering with
Recommender System) ordinal scale-based implicit ratings for mobile music recommen-
dations," Information Sciences 180 (11) (2010) 2142–2155, doi:
Ensemble Recommender 10.1016/j.ins.2010.02.004.
model [5] L.E.M. FERNÁNDEZ, "Recommendation System for Netflix," VRIJE
System
UNIVERSITEIT AMSTERDAM, 2018.
RMSE MAE [6] F. Shi, C. Ghedira, and J.-L. Marini, "Context Adaptation for Smart
RateClust 0.95 0.74 Recommender Systems," IEEE Computer Society 1520-9202/15/31.00
© 2015 IEEE, doi: 10.1109/MITP.2015.96.
Classical 1.03 0.79
[7] G. Adomavicius, and A. Tuzhilin, "Chapter 6: Context-Aware Rec-
ommender Systems," in Recommender Systems Handbook, F. Ricci,
TABLE IX: User-based clustering VS Classical (Ensemble L. Rokach and B. Shapira, Eds., Springer, Boston, MA, 2015, doi:
Recommender System) 10.1007/978-1-4899-7637-6_6.
[8] U. Panniello, A. Tuzhilin, M. Gorgoglione, C. Palmisano, and A.
Ensemble Recommender Pedone, "Experimental comparison of pre- vs. post-filtering ap-
model proaches in context-aware recommender systems," Proceedings of
System
the 2009 ACM Conference on Recommender Systems, 2009, doi:
RMSE MAE 10.1145/1639714.1639764.
UserClust 1.00 0.80 [9] Y. Shen, Y. Deng, A. Ray, and H. Jin, "Interactive Recommendation via
Deep Neural Memory Augmented Contextual Bandits," In Proceedings
Classical 1.08 0.86 of RecSys 2018 – the ACM Conference Series in Recommendation
systems, Vancouver, 2018, doi: 10.1145/3240323.3240344.
[10] C. Palmisano, A. Tuzhilin, and M. Gorgoglione, "Using context to
implementations of CoCl, in order to make them scalable to improve predictive modeling of customers in personalization appli-
infinite streams or large-scale datasets. cations," Knowledge and Data Engineering, IEEE Transactions on
20(11):1535–1549, 2008, doi: 10.1109/TKDE.2008.110.
ACKNOWLEDGMENT [11] E. Zhong, W. Fan, and Q. Yang, "Contextual collaborative filter-
ing via hierarchical matrix factorization," In Proceedings of the
This paper was partially supported by the grant nr SIAM International Conference on Data Mining, 744–755, 2012, doi:
POIR.01.01.01-00-1307/17 entitled by "Development of a 10.1137/1.9781611972825.64.
[12] X. Liu, and K. Aberer, "Soco: a social network aided context-aware rec-
hybrid recommendation system for the fashion & cosmetics ommender system," In Proceedings of the 22nd international conference
branch operating, among others based on contextual data using on World Wide Web, 781–802, 2013, doi: 10.1145/2488388.2488457.
machine-learning mechanisms" co-financed by the European [13] C. Chen, X. Zheng, Y. Wang, F. Hong, and Z. Lin, "Context- ware
Collaborative Topic Regression with Social Matrix Factorization for
Regional Development Funds, a part of the Smart Growth Recommender Systems," In Proceedings of the Twenty-Eighth AAAI
Operational Programme. Conference on Artificial Intelligence. 9-15, 2014.
[14] X. Zheng, Y. Luo, L. Sun, and F. Chen. 2016. "A New Recom-
R EFERENCES mender System Using Context Clustering Based on Matrix Factorization
[1] J.S. Breese, D. Heckerman, and C. Kadie, "Empirical Analysis of Pre- Techniques," Chinese Journal of Electronics. Vol.25, No.2, 2016, doi:
dictive Algorithms for Collaborative Filtering," Proceedings of the Four- 10.1049/cje.2016.03.021.
teenth Conference on Uncertainty in Artificial Intelligence (UAI1998), [15] A. Kosir, A. Odic, M. Kunaver, M. Tkalcic, and J. F. Tasic, “Database
1998. for contextual personalization,” Elektrotehniski Vestnik/Electrotechnical
[2] F. Ricci, L. Rokach, and B. Shapira, Eds., "Recommender Systems Review, vol. 78, pp. 270–274, 2011.
Handbook," Springer New York Heidelberg Dordrecht London, 2015, [16] N. Hug, “Home,” Surprise. [Online]. Available: http://surpriselib.com/.
doi: 10.1007/978-0-387-85820-3. [17] P.J. Rousseeuw, “Silhouettes: A graphical aid to the interpretation and
[3] A. Lommatzsch, B. Kille, and S. Albayrak, "Incorporating context validation of cluster analysis,” Journal of Computational and Applied
and trends in news recommender systems," In Proceedings of the Mathematics 20, pp. 53-65, 1987, doi: 10.1016/0377-0427(87)90125-7.
International Conference on Web Intelligence (WI ’17). ACM, New
York, NY, USA, 1062-1068, 2017, doi: 10.1145/3106426.3109433.

You might also like