<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Improving Neighborhood-Based Collaborative Filtering by A Heuristic Approach and An Adjusted Similarity Measure</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Yasser El Madani El Alami</string-name>
          <email>yasser.elmadanielalami@usmba.ac</email>
          <email>yasser.elmadanielalami@usmba.ac. ma</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>El Habib Nfaoui</string-name>
          <email>elhabib.nfaoui@usmba.ac.ma</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Omar El Beqqali</string-name>
          <email>omar.elbeqqali@usmba.ac.ma</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Computer science department of, FSDM, Sidi Mohammed Ben Abdellah, University</institution>
          ,
          <addr-line>Fez</addr-line>
          ,
          <country country="MA">Morocco</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2015</year>
      </pub-date>
      <fpage>16</fpage>
      <lpage>22</lpage>
      <abstract>
        <p>- “Collaborative filtering” is the most used approach in recommendation systems since it provides good predictions. However, it still suffers from many drawbacks such as sparsity and scalability problems especially for huge datasets which consist of a large number of users and items. This paper presents a new algorithm for neighborhood selection based on two heuristic approaches. The first of which is based on selecting users who rated the same items as the active user called “intersection neighborhood” while the second one builds the neighborhood using all users who rated one item at least as the active user called “union neighborhood”. In addition, we employ an adjusted similarity measure that combines Pearson correlation with a set-similarity measure (such as Jaccard similarity) as a correction coefficient for .accurate similarities among users. Finally, experiments using FilmTrust dataset show that the proposed approaches give more predictions accuracy than the traditional collaborative filtering.</p>
      </abstract>
      <kwd-group>
        <kwd>Collaborative filtering</kwd>
        <kwd>Neighborhood selection</kwd>
        <kwd>Spatial complexity</kwd>
        <kwd>Recommender system</kwd>
        <kwd>Similarity measure</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 INTRODUCTION</title>
      <p>
        Ever since the 90s, the amount of information has been
increased in exponential way. The Internet has played a key
role in information growth. Mobile devices such as smart
phones and tablets also contribute to this continuous expansion
of information plethora. Thus, users are continually faced with
information overload. It becomes difficult for them to
distinguish relevant information from noise. In order to address
this problem, there have been a great interest in
recommendation. According to [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] recommendation systems
have been considered as an effective means to reduce
complexity in information retrieval. They promise to
personalize the request based on the user’s interest in a smart
way [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. As stated by [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] recommendation system helps users
to deal with information overload and provides personalized
recommendations, content and services to them. It suggests the
appropriate items for each user according to his/her interests.
Although, recommendation systems are largely used in both
ecommerce applications such as Amazon [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and academic
      </p>
    </sec>
    <sec id="sec-2">
      <title>2 BACKGROUND</title>
      <p>
        The term of collaborative filtering (CF) was introduced by
David Goldberg in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] where he proposed a mail system
called Tapestry that filters documents based on users’ interest
in order to be used by other people. Collaborative filtering is
based on mutual aid of users who share similar tastes and
preferences to recommend the suitable items. According to
[
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], collaborative filtering relies on the following assumption:
if users X and Y rate n items similarly or have similar
behaviors, then, in the future, they will act (rating or behavior)
on other cases similarly. As a result, CF based systems can
predict a user’s rating (or behavior) for an unknown item [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]
or create a top-N list of recommended items for a target user
(called active user) [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. It is worth noting that the first work
using CF was presented by Malone in [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] where he proposed
stereotypes to build user models and use them to recommend
relevant books to each user.
      </p>
      <p>
        According to [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], we can distinguish between classes of
CF algorithms: memory-based algorithm and model-based
algorithms. In what follows we focus on the memory based
approach
2.1
      </p>
      <sec id="sec-2-1">
        <title>Memory based algorithm</title>
        <p>
          Memory based approach builds predictions based on the whole
set of ratings that users assigned to items before. Previous
ratings are grouped in a matrix referred to as ratings matrix. It’s
the pillar input in this approach. It was the earliest approach
adopted by many commercial systems thanks to its easiness
and effectiveness [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ].
As presented in table 1 above, also called ratings matrix, the
cell rsj refers to the rating given by user s to item j (on 1-5
rating scale). In most cases, this ratings’ matrix is typically
sparse [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ] as most users do not rate viewed items regularly.
Therefore, [
          <xref ref-type="bibr" rid="ref18">18</xref>
          ] argued that the sparsity can be an issue that can
lead to weak recommendations. Besides, the most popular
algorithm in memory based is neighbor-based algorithm which
predicts ratings based on either users who are similar to the
active user or similar items to the requested item. Generally,
According to [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ] there are three steps into processing a
recommendation based on CF system: i) Representation, ii)
Neighborhood formation, iii) Recommendation generation.
Neighbor-based approach is mainly divided in two analogous
categories: users-based collaborative filtering [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ] and
itembased collaborative filtering [
          <xref ref-type="bibr" rid="ref20">20</xref>
          ]. For example, in what
follows, we detail the User-Based CF.
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>2.1.1 User-based CF (UBCF)</title>
        <p>User based recommendation relies on users similarity to the
active user. In fact, it builds prediction and recommendation
using the correlation between the active user and each other.</p>
      </sec>
      <sec id="sec-2-3">
        <title>2.1.1.1 Representation</title>
        <p>
          The first step in UBCF consists on building a rating matrix
and assigning values to the unrated items to fill the porous
ratings matrix. Two processes [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ] can overcome sparsity and
improve recommendation accuracy:




        </p>
        <p>Default rating: to set a same value for all unrated items.
Pre-processing using average: to set an average rating
based on user’s votes for the missing rating-matrix
entry ̅</p>
      </sec>
      <sec id="sec-2-4">
        <title>2.1.1.2 Neighborhood formation</title>
        <p>
          The second step consists of measuring similarity between
the other users. They are several similarity algorithms such as
Pearson correlation, mean-squared difference [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ] and
Spearman correlation [
          <xref ref-type="bibr" rid="ref23">23</xref>
          ]. The most commonly used algorithm
is the Pearson correlation. In fact, it has become a standard way
of calculating correlation [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ]. Using Pearson correlation,
similarity between user ua and ub is calculated with the
following formula:
, =
∑
        </p>
        <p>(
∑
(</p>
        <p>
          )(
) ∑
(
)
)
(1)
where n is the cardinal of the set of items, rai is the rating given
by user a to item j and is the average rating given by user a
for all the items he rated. As an output, similarity process
returns a user similarity matrix which determines correlation
between pairs of users. Thus, building similarity between users
allows forming the requested neighborhood. Two techniques
have been employed [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ]:
        </p>
        <p>
          Threshold-based: user is considered as neighbor when
his/her user similarity exceeds a given threshold [
          <xref ref-type="bibr" rid="ref25">25</xref>
          ].
K nearest users where k is given as input. Also, it can
be computed for each user as proposed in [
          <xref ref-type="bibr" rid="ref26">26</xref>
          ].
        </p>
      </sec>
      <sec id="sec-2-5">
        <title>2.1.1.3 Recommendation generation</title>
        <p>This phase relies on generating predicted rating of user s to
item i. It’s calculated as aggregation of similarity between
the active user and his neighborhood. It relies on both
ratings matrix (input) and similarity matrix.</p>
        <p>, =
∈
Various aggregation functions are employed in predictions
where the most used one is calculated as the weighted
average of neighbors’ ratings using their similarities as
follows:</p>
        <p>∑
, = ̅ + ∑
( ,
K represents the size of selected neighborhood.</p>
        <p>Therefore, based on computed predictions, recommender
system may select the top-N items as the recommendations list
of unknown or new items that the active user has never seen
before.
2.2</p>
      </sec>
      <sec id="sec-2-6">
        <title>Performance measures</title>
        <p>
          Performance measures are the result of a step of monitoring a
proposed method or algorithm in real situation or
approximating the reality with reliable data. In
recommendation system, a great research effort has been made
to deal with this influential task such as presented in [
          <xref ref-type="bibr" rid="ref27">27</xref>
          ]. In
our case we are interested by prediction performance measures.
In this area, many indicators are used to measure the system
performance. In most cases, they tend to evaluate the system
accuracy. They measure the precision of computed predictions
comparing to the real user ratings. A case in point is Mean
Absolute Error (MAE). In fact, MAE is a common way used to
measure accuracy based on statistical metric. It calculates the
average absolute difference between predicted ratings and real
ones:
=
∑( , ) ,
        </p>
        <p>, (4)
In the formula above , is the predicted rating for user s to
item i, , is the real rating given by user s to item i and N
corresponds to the number of predicted ratings calculated
during the test phase.</p>
        <p>
          In [
          <xref ref-type="bibr" rid="ref27">27</xref>
          ] authors argue that using different evaluation metrics
leads to different conclusion concerning the recommendation
system performance. Thus, most researches choose a single
evaluation measure in order to demonstrate the effectiveness of
their algorithms.
        </p>
        <p>After giving a detailed overview of the background, and
presenting the broad outlines of collaborative filtering, in the
next section, we present some recent works and trends done in
this area in order to overcome drawbacks and illnesses of the
traditional approach.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3 RECENT WORKS</title>
      <p>
        In the last decade, collaborative filtering approach
motivated a larger number of works adding in each one an
original concept and then opening a new perspective in order to
deal with the problem of recommendation. Clustering method
is one of the extensively used concepts in CF. One of the
earliest works that have been done in this area was presented in
[
        <xref ref-type="bibr" rid="ref28">28</xref>
        ] where the authors argued that clustering improves the
performance of recommendation. [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ] Proposes to group users’
profiles into clusters of similar items and compose the
recommendation list of items that match well with each cluster.
Authors in [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ] develop Eigentaste 5.0 recommender system
that dynamically arranges the order of recommended items by
integrating user clustering with item clustering. In [
        <xref ref-type="bibr" rid="ref31">31</xref>
        ] the
author proposes a new probabilistic neighborhood-based
approach as an improvement of the standard k-nearest neighbor
algorithm. It’s based on classical metrics of dispersion and
diversity as well as on some newly proposed metrics. The
author also proposes the concept of unexpectedness in
recommender systems. He also fully uses it by suggesting
various mechanisms for specifying the expectations of the
users. Moreover, he proposes a recommendation method for
providing the users with non-obvious but high quality
personalized recommendations that fairly match their interests.
This method is based on specific metrics of unexpectedness. In
[
        <xref ref-type="bibr" rid="ref32">32</xref>
        ] the authors propose an adapted normalization technique
called mutual proximity in the nearest neighbor selection phase
to rescale the similarity space and symmetrize the nearest
neighbor relation. They prove that removing hubs and
incorporating normalized similarity values into the neighbor
weighting step leads to increased rating prediction accuracy.
      </p>
      <p>One of the major factors in collaborative filtering that
greatly influences the recommendation accuracy is the selected
similarity measure. In the literature, almost all works are based
on the well-known Pearson correlation measure. As presented
in formula (2), Pearson correlation measure doesn’t take into
account other decisive which provide meaningful information
of how users’ preferences are different. Sparsity is another
consistent problem which contributes to generating incorrect
recommendations. In fact, only a small number of the whole
items are rated then the matrix rating becomes sparse. In
addition, using a huge dataset required more time for
computing similarities among users in order to build an
effective neighborhood for the active user. Consequently,
combining these factors increases mainly the margin of error
and reduces the confidence interval which leads to inaccurate
recommendations.</p>
    </sec>
    <sec id="sec-4">
      <title>4 PROPOSED APPROACH In order to limit the problems of sparsity and time computing problems, we propose a preprocessing step which relies on a heuristic approach of neighborhood selection (figure 1).</title>
      <p>It can be done with two methods based on natural operators’
sets without computing similarities among users. The first
method is the intersection selection. It’s based on selecting
users who rate the same item as the active user. The second one
is based on the union operator. It’s based on building the
neighborhood with users who rated one item in common at
least. Obviously, time computing is reduced because of the
reduction of the number of computed users’ similarities. In fact
our approach focuses on selecting neighbors who are likely to
be reliable to the active user before starting similarities
computation phase which is time-consuming if we compute the
similarities for all system’s users. As a result, the new ratings
matrix is smaller than the ratings matrix of the system used in
the traditional collaborative filtering methods, which leads to
less sparseness in the matrix.</p>
    </sec>
    <sec id="sec-5">
      <title>A. Intersection neighborhood</title>
      <p>We call the first method of neighborhood selection the
intersection neighborhood. It relies on selecting neighbors who
rate the same items. Actually, it’s rare to find two users who
rate the same items. So, in order to deal with this point, we use
a threshold of acceptance which corresponds to a minimum
number of co-rated items. In what follows, we present the
adopted algorithm:
1. For each active user.
3
2. Extract the list Ia of items that the active user Ua rated
before. Ia={i1, i2…,ip} and card(Ia)=p.
3. Select users who rated the same list of items Ia as presented
in the figure below (figure 2) or having more than the
fixed threshold noted “TA”.
4. Select the target item whose rating value is going to be
predicted. As shown in the example below, we select the
item I6.
As presented in this example (figure 3), the neighborhood
contains two users U1 and U3and the new adopted ratings
matrix is:
5. Fill up the empty cells with the average of ratings of each
user. As we can see, the new ratings matrix contains less
empty cells than the first one.
6. Compute the similarity between the selected users and the
active user using the new matrix of ratings.
7. Select the top n similar user N={u1, u2, … un}
8. Generate the recommendation based on the selected
neighborhood.</p>
      <p>B.</p>
    </sec>
    <sec id="sec-6">
      <title>Union neighborhood</title>
      <p>The second method of neighborhood selection is called the
union neighborhood. . It relies on selecting neighbors who rate
one common item at least. The adopted algorithm is presented
in what follows:
1. For each active user
2. We extract the list Ia of items that the active user Ua rated
before. Ia={i1, i2…,ip} and card(Ia)=p
3. Select users who rated one item of the list Ia at least as
presented in the figure 4 below.
4. Select the target item whose rating value is going to be
predicted. For instance, as shown in the example below
(figure 5) we select the item I6.</p>
      <p>As presented in this example (figure 5), the neighborhood
contains two users U1 and U3. The new ratings matrix is:
5. Fill up the empty cells with the average of ratings of each
user. As a direct result, the new ratings matrix contains
more users than the intersection algorithm but more empty
cells.
6. Compute the similarity between the selected users and the
active user.
7. Select the top n similar users N={u1, u2, … un}
8. Generate the recommendation based on the selected
neighborhood.</p>
    </sec>
    <sec id="sec-7">
      <title>C. Similarity measure</title>
      <p>
        In order to reduce the impact of the fallacious similarity on
the computed recommendations, we propose to a modified
version of Pearson correlation. In [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ], authors argue that
adding associated parameters of users x and y improve the
similarity accuracy which lead to good predictions. Thus,
the new similarity measure is presented as follows:
= S
∗
(5)
      </p>
      <p>Where Corrp represents the traditional Pearson correlation
and S represents Jaccard coefficient used as adjustment
coefficient:</p>
      <p>S
=
(6)
where


a=|X∩Y| represents the number of attributes (the rated
items) which are present in user X and user Y.
b=|X-Y| represents the number of attributes (the rated
items) which are present in user X and not in user Y.
c=|Y-X| represents the number of attributes (the rated
items) which are present in user Y and not in user X.</p>
    </sec>
    <sec id="sec-8">
      <title>5 EXPERIMENTS AND RESULT</title>
      <p>
        For experiments we use the FilmTrust project dataset [
        <xref ref-type="bibr" rid="ref34">34</xref>
        ].
It is an academic research project being run by Jennifer
Golbeck1. It’s a movie recommendation website where
users can rate and review movies. Users can give their
opinion using a quantitative value on a rating scale from
0.5 to 4 stars where 0.5 means bad and 4 means excellent.
The data is stored as semantic web annotations based on
RDF2 and FOAF3. It integrates semantic web-based on
social networks with movie ratings so as to compute
predictive movie recommendations. The collected dataset
consists of 1856 users, 2092 movies and 759922 ratings.
Thus, around 80.4% of the global ratings matrix is empty.
It means that FilmTrust dataset represents a real situation
of sparsity problem.
      </p>
      <p>Our test consists of two main experiments. The first
experiment focuses on comparing the traditional approach
with the union neighborhood selection method using the
adjustment coefficient presented before. The second
experiment focuses on comparing the comparing the
traditional approach with intersection neighborhood
selection method using the same adjustment coefficient.</p>
    </sec>
    <sec id="sec-9">
      <title>The experiments respect the steps below: 1. From the dataset DS, for each user we build our ratings matrix based on the definition presented below. 2.</title>
      <p>We randomly select 30% of the ratings and set the
value of those ratings to POSITIVE_INFINITY. In
fact, we use this value to distinguish between the
empty cells of the global ratings matrix which is
represented by null value and the modified ones.</p>
      <p>Therefore we build two sets:
Set TG represents the training set (70% of the whole
dataset) and Set T which represents the set of test with:
T=DS-TG</p>
    </sec>
    <sec id="sec-10">
      <title>3. For each user from the set DS. a. b. c.</title>
      <p>We select users according to the employed
method (intersection or union)
We build the rating matrix TG by filling up
the missing ratings with the average ratings of
each user.</p>
      <p>Use different size of neighborhood from 10
users to 100.
d. Employ the prediction formula to predict the
missing values.
1https://www.cs.umd.edu/~golbeck/
2 http://www.w3.org/RDF/
3 http://www.foaf-project.org/original-intro
4.
5.3
5.3.1</p>
      <p>Repeat step d until predicting all the missing
values
Computing the MAE for each neighborhood
size by comparing the predicted values with
the observed ones.</p>
      <p>Repeating this computation (from step 2) three times
and then we give the average of the MAE for each user
and neighborhood size.</p>
      <sec id="sec-10-1">
        <title>Results and analysis</title>
      </sec>
      <sec id="sec-10-2">
        <title>Experiment 1</title>
        <p>We start our test with comparing the traditional
collaborative approach method (TCFM) with the union
neighborhood selection method (UNSM) by following the
steps presented before. Even though the variation behavior
of the union method is not regular, we can see (figure 6)
that the union neighborhood selection method provides
good results since the computed MAE is less than the
traditional collaborative filtering one.</p>
        <p>Union Neighborhood Selection</p>
        <p>Traditionnal collaborative Filtering
MAE</p>
      </sec>
      <sec id="sec-10-3">
        <title>Experiment 2</title>
        <p>The second experiment compares the traditional
collaborative filtering method (TCFM) with the
intersection neighborhood selection method (INSM) by
following the steps outlined beforehand. In addition, in
order to take user y as a candidate neighbor of the active
user x in intersection approach, we set 10 as a threshold
of co-rated items. Then, user ‘y’ will be selected if
he/she has10 co-rated items at least.
0,78
0,77
0,76
0,75
0,74
0,73
0,72
0,71
0,70
0,69
0,68
0,67
0,66
0,65
0,64
0,760
0,750
0,740
0,730
0,720
0,710
0,700
0,690
0,680</p>
        <p>Intersection Neigborhood Selection
10
20
30
40
50
60
70
80
90</p>
        <p>100</p>
        <p>Even though the variation behavior of the intersection
method is not regular (figure 7), we see that the intersection
neighborhood selection method (INSM) performs better than
the traditional collaborative filtering method (TCFM).</p>
      </sec>
      <sec id="sec-10-4">
        <title>5.3.3 Comparative analysis</title>
        <p>The last figure (figure 8) shows a comparison of the MAE
between the traditional collaborative method and the two
proposed methods: intersection and selection neighborhood
disregarding the size of the neighborhood. As we can see,
union neighborhood selection method (UNSM) gives the best
result.</p>
        <p>MAE</p>
      </sec>
    </sec>
    <sec id="sec-11">
      <title>6 CONCLUSIONS AND FUTURE WORKS</title>
      <p>In this paper, we proposed a preprocessing step which
relies on two heuristic methods: the union neighborhood
selection method and the intersection neighborhood
selection. Both of them are combined with a reformed
Pearson correlation similarity where we use a set-similarity
measure as a correction factor (Jaccard similarity). As
presented before, the two methods provide acceptable
results comparing to the traditional collaborative filtering.
INSM
UNSM
TCFM</p>
      <p>As a result of these neighborhood selection methods, we
reduce the rating-matrix dimension which leads, on one
hand, to less sparseness in the induced matrix, and, on the
other hand, to minimizing the consumed time in
neighborhood selection phase. In addition, the prediction
accuracy is improved.</p>
      <p>Despite this, the two approaches are not efficient for cold
start problem especially for intersection approach which
needs a threshold of ratings to provide good
recommendations. As future work, we will investigate
incorporating social network data in order to deal with this
problem. In fact, social networks offer many opportunities
for recommendations since people generally use their social
networks to obtain reliable and useful information.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>A. K.</given-names>
            <surname>Joseph</surname>
          </string-name>
          ,
          <article-title>"Introduction to recommender systems: Algorithms and Evaluation,"</article-title>
          <source>ACM Transactions on Information Systems</source>
          , vol.
          <volume>22</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>4</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Z.</given-names>
            <surname>Zied</surname>
          </string-name>
          ,
          <article-title>"Modèle multi-agents pour le filtrage collaboratif de l'information,"</article-title>
          <source>Université du Québec, Montréal</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>A.</given-names>
            <surname>Gediminas</surname>
          </string-name>
          and
          <string-name>
            <given-names>T.</given-names>
            <surname>Alexander</surname>
          </string-name>
          ,
          <article-title>"Towards the Next Generation of Recommender Systems:A Survey of the State-of-the-Art and Possible Extensions,"</article-title>
          <source>IEEE Transactions on Knowledge and Data Engineering</source>
          , vol.
          <volume>17</volume>
          , no.
          <issue>6</issue>
          , p.
          <fpage>734</fpage>
          -
          <lpage>749</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>L.</given-names>
            <surname>Greg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Brent</surname>
          </string-name>
          and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Jeremy</surname>
          </string-name>
          ,
          <article-title>"Amazon.com Recommendations: item-to-item collaborative filtering," Internet Computing, IEEE</article-title>
          , vol.
          <volume>7</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>76</fpage>
          -
          <lpage>80</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>M. Bradley N.</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Istvan</surname>
          </string-name>
          ,
          <string-name>
            <surname>L. Shyong K.</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Joseph</surname>
          </string-name>
          <string-name>
            <surname>A.</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>John</surname>
          </string-name>
          ,
          <article-title>"MovieLens Unplugged: Experiences with an Occasionally Connected Recommender System," in the 8th international conference on Intelligent user interfaces</article-title>
          ,
          <source>Miami, Florida</source>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>B. N.</given-names>
            <surname>Miller</surname>
          </string-name>
          ,
          <article-title>"Toward a Personal Recommender System," Minneapolis</article-title>
          , USA,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>A.</given-names>
            <surname>Smeaton</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Callan</surname>
          </string-name>
          ,
          <article-title>"Personalization and recommender systems in digital libraries,"</article-title>
          <source>International Journal on Digital Libraries</source>
          , vol.
          <volume>5</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>299</fpage>
          -
          <lpage>308</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>N.</given-names>
            <surname>Manouselis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Hendrik</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Vuorikari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Hummel</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>Koper</surname>
          </string-name>
          ,
          <article-title>"Recommender Systems in Technology Enhanced Learning," in Recommender Systems Handbook</article-title>
          ,
          <string-name>
            <surname>Spring</surname>
            <given-names>US</given-names>
          </string-name>
          ,
          <year>2011</year>
          , pp.
          <fpage>387</fpage>
          -
          <lpage>415</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>L.</given-names>
            <surname>Pasquale</surname>
          </string-name>
          , d. G. Marco and
          <string-name>
            <given-names>S.</given-names>
            <surname>Giovanni</surname>
          </string-name>
          ,
          <article-title>"Content-based Recommender Systems: State of the Art and Trends," in Recommender Systems Handbook</article-title>
          ,
          <string-name>
            <surname>Spring</surname>
            <given-names>US</given-names>
          </string-name>
          ,
          <year>2011</year>
          , pp.
          <fpage>73</fpage>
          -
          <lpage>105</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>P. L.</given-names>
            <surname>Joel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Nuno</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. M.</given-names>
            <surname>María</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. F.</given-names>
            <surname>Ana</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Constantino</surname>
          </string-name>
          ,
          <article-title>"A hybrid recommendation approach for a tourism system," Expert Systems with Applications</article-title>
          , vol.
          <volume>40</volume>
          , no.
          <issue>9</issue>
          , p.
          <fpage>3532</fpage>
          -
          <lpage>3550</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>D.</given-names>
            <surname>Goldberg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Nichols</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. M.</given-names>
            <surname>Oki</surname>
          </string-name>
          and
          <string-name>
            <given-names>D.</given-names>
            <surname>Terry</surname>
          </string-name>
          ,
          <article-title>"Using collaborative fil- tering to weave an information tapestry,"</article-title>
          <source>Communications of the ACM</source>
          , vol.
          <volume>35</volume>
          , no.
          <issue>12</issue>
          , pp.
          <fpage>61</fpage>
          -
          <lpage>70</lpage>
          ,
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>K.</given-names>
            <surname>Goldberg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Roeder</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Gupta</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Perkins</surname>
          </string-name>
          ,
          <article-title>"Eigentaste: A Constant Time Collaborative Filtering Algorithm,"</article-title>
          <source>Information Retrieval</source>
          , vol.
          <volume>4</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>133</fpage>
          -
          <lpage>151</lpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>M.</given-names>
            <surname>Deshpande</surname>
          </string-name>
          and
          <string-name>
            <given-names>G.</given-names>
            <surname>Karypis</surname>
          </string-name>
          ,
          <article-title>"Item-based top-N recommendation algorithms,"</article-title>
          <source>ACM Transactions on Information Systems (TOIS)</source>
          , vol.
          <volume>22</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>143</fpage>
          -
          <lpage>177</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>T. W.</given-names>
            <surname>Malone</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. R.</given-names>
            <surname>Grant</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F. A.</given-names>
            <surname>Turbak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. A.</given-names>
            <surname>Brobst and M. D. Cohen</surname>
          </string-name>
          ,
          <article-title>"Intelligent information-sharing systems,"</article-title>
          <source>Communications of the ACM</source>
          , vol.
          <volume>30</volume>
          , no.
          <issue>5</issue>
          , pp.
          <fpage>390</fpage>
          -
          <lpage>402</lpage>
          ,
          <year>1987</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>J. S.</given-names>
            <surname>Breese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Heckerman</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Kadie</surname>
          </string-name>
          ,
          <article-title>"Empirical analysis of predictive algorithms for collaborative filtering,"</article-title>
          <source>in the Fourteenth conference on Uncertainty in artificial intelligence</source>
          , San Francisco, USA,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>M. D. Ekstrand</surname>
            ,
            <given-names>J. T.</given-names>
          </string-name>
          <string-name>
            <surname>Riedl</surname>
            and
            <given-names>J. A.</given-names>
          </string-name>
          <string-name>
            <surname>Konstan</surname>
          </string-name>
          ,
          <article-title>"Collaborative Filtering Recommender Systems," Foundations and Trends in Human-Computer Interaction</article-title>
          , vol.
          <volume>4</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>81</fpage>
          -
          <lpage>173</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>P.</given-names>
            <surname>Melville</surname>
          </string-name>
          and
          <string-name>
            <given-names>V.</given-names>
            <surname>Sindhwani</surname>
          </string-name>
          ,
          <article-title>"</article-title>
          <source>Recommender Systems," in Encyclopedia of machine learning</source>
          ,
          <source>Springer US</source>
          ,
          <year>2010</year>
          , pp.
          <fpage>829</fpage>
          -
          <lpage>838</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>E.</given-names>
            <surname>Vozalis</surname>
          </string-name>
          and
          <string-name>
            <given-names>K.</given-names>
            <surname>Margaritis</surname>
          </string-name>
          ,
          <article-title>"Analysis of Recommender Systems' Algorithms,"</article-title>
          <source>in HERCMA 2003</source>
          , Athens, Greece,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>B.</given-names>
            <surname>Sameer</surname>
          </string-name>
          ,
          <article-title>"Recommender System Algorithms,</article-title>
          " Toronto, Canada,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>B.</given-names>
            <surname>Sarwar</surname>
          </string-name>
          , G. Karypis,
          <string-name>
            <given-names>J.</given-names>
            <surname>Konstan</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Riedl</surname>
          </string-name>
          ,
          <article-title>"Item-based collaborative filtering recommendation algorithms,"</article-title>
          <source>in the 10th international conference on World Wide Web</source>
          , New York, USA,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>E.</given-names>
            <surname>Vozalis</surname>
          </string-name>
          and
          <string-name>
            <given-names>K.</given-names>
            <surname>Margaritis</surname>
          </string-name>
          ,
          <article-title>"Analysis of Recommender Systems' Algorithms,"</article-title>
          <source>in Proceedings of the 6th Hellenic European Conference on Computer Mathematics and its Applications</source>
          (HERCMA-
          <year>2003</year>
          ), Athens, Greece,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>U.</given-names>
            <surname>Shardanand</surname>
          </string-name>
          and
          <string-name>
            <given-names>P.</given-names>
            <surname>Maes</surname>
          </string-name>
          ,
          <article-title>"Social information filtering: algorithms for automating “word of mouth”," in the SIGCHI Conference on Human Factors in Computing Systems</article-title>
          , New York, USA,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>M.</given-names>
            <surname>Kendall</surname>
          </string-name>
          and
          <string-name>
            <given-names>J. D.</given-names>
            <surname>Gibbons</surname>
          </string-name>
          ,
          <source>Rank Correlation Methods</source>
          , Oxford: Oxford University Press,
          <year>1990</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>S.</given-names>
            <surname>Gong</surname>
          </string-name>
          ,
          <article-title>"A Collaborative Filtering Recommendation Algorithm Based on User Clustering and Item Clustering,"</article-title>
          <source>Journal of Software</source>
          , vol.
          <volume>5</volume>
          , no.
          <issue>7</issue>
          , pp.
          <fpage>745</fpage>
          -
          <lpage>752</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>J. L.</given-names>
            <surname>Herlocker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. A.</given-names>
            <surname>Konstan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. G.</given-names>
            <surname>Terveen</surname>
          </string-name>
          and
          <string-name>
            <given-names>J. T.</given-names>
            <surname>Riedl</surname>
          </string-name>
          ,
          <article-title>"Evaluating collaborative filtering recommender systems,"</article-title>
          <source>ACM Transactions on Information Sytems</source>
          , vol.
          <volume>22</volume>
          , no.
          <issue>1</issue>
          , p.
          <fpage>5</fpage>
          -
          <lpage>53</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>N. K.</given-names>
            <surname>Lathia</surname>
          </string-name>
          ,
          <article-title>"Evaluating Collaborative Filtering Over Time,"</article-title>
          <source>London, UK</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>A.</given-names>
            <surname>Gunawardana</surname>
          </string-name>
          and
          <string-name>
            <given-names>G.</given-names>
            <surname>Shani</surname>
          </string-name>
          ,
          <article-title>"A survey of accuracy evaluation metrics of recommendation tasks,"</article-title>
          <source>Journal of Machine Learning Research</source>
          , vol.
          <volume>10</volume>
          , p.
          <fpage>2935</fpage>
          -
          <lpage>2962</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>B. M.</given-names>
            <surname>Sarwar</surname>
          </string-name>
          , G. Karypis,
          <string-name>
            <given-names>J.</given-names>
            <surname>Konstan</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Riedl</surname>
          </string-name>
          ,
          <article-title>"Recommender Systems for Large-scale E-Commerce: Scalable Neighborhood Formation Using Clustering,"</article-title>
          <source>in Proceedings of The fifth international conference on computer and information technology</source>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <given-names>M.</given-names>
            <surname>Zhang</surname>
          </string-name>
          and
          <string-name>
            <given-names>N.</given-names>
            <surname>Hurley</surname>
          </string-name>
          ,
          <article-title>"Novel item recommendation by user profile partitioning,"</article-title>
          <source>in The 2009 IEEE/WIC/ACM International Joint Conference on Web Intelligence and Intelligent Agent Technology</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <given-names>T.</given-names>
            <surname>Nathanson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Bitton</surname>
          </string-name>
          and
          <string-name>
            <given-names>K.</given-names>
            <surname>Goldberg</surname>
          </string-name>
          ,
          <article-title>"Eigentaste 5.0: constant-time adaptability in a recommender system using item clustering,"</article-title>
          in
          <source>In Proceedings of the 2007 ACM conference on Recommender systems</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          [31]
          <string-name>
            <given-names>P.</given-names>
            <surname>Adamopoulos</surname>
          </string-name>
          ,
          <article-title>"On Discovering non-Obvious Recommendations: Using Unexpectedness and Neighborhood Selection Methods in Collaborative Filtering Systems,"</article-title>
          <source>in Proceedings of the 7th ACM international conference on Web search and data mining</source>
          , New York, NY, USA,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          [32]
          <string-name>
            <given-names>P.</given-names>
            <surname>Knees</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Schnitzer</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Flexer</surname>
          </string-name>
          ,
          <article-title>"Improving Neighborhood-Based Collaborative Filtering by Reducing Hubness,"</article-title>
          <source>in Proceedings of International Conference on Multimedia Retrieval</source>
          , New York, NY, USA,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          [33]
          <string-name>
            <given-names>E. M. E. A.</given-names>
            <surname>Yasser</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. El</given-names>
            <surname>Habib</surname>
          </string-name>
          and
          <string-name>
            <given-names>E. B.</given-names>
            <surname>Omar</surname>
          </string-name>
          ,
          <article-title>"An Adjustment Similarity Measure for Improving Prediction In Collaborative Filtering,"</article-title>
          <source>in The 2nd International Workshop on Software Engineering and Systems Architecture</source>
          , Tetouan, Morocco,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          [34] [Online]. Available: http://trust.mindswap.org/FilmTrust/about.shtml.
          <source>[Accessed 1 September</source>
          <year>2013</year>
          ].
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>