<!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>Collaborative and Content-based Filtering for Item Recommendation on Social Bookmarking Websites</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Toine Bogers</string-name>
          <email>A.M.Bogers@uvt.nl</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Antal van den Bosch</string-name>
          <email>Antal.vdnBosch@uvt.nl</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>ILK / Tilburg centre for Creative Computing, Tilburg University</institution>
          ,
          <addr-line>P.O. Box 90153, 5000 LE, Tilburg</addr-line>
          ,
          <country country="NL">The Netherlands</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Social bookmarking websites allow users to store, organize, and search bookmarks of web pages. Users of these services can annotate their bookmarks by using informal tags and other metadata, such as titles, descriptions, etc. In this paper, we focus on the task of item recommendation for social bookmarking websites, i.e. predicting which unseen bookmarks a user might like based on his or her profile. We examine how we can incorporate the tags and other metadata into a nearest-neighbor collaborative filtering (CF) algorithm, by replacing the traditional usage-based similarity metrics by tag overlap, and by fusing tag-based similarity with usage-based similarity. In addition, we perform experiments with content-based filtering by using the metadata content to recommend interesting items. We generate recommendations directly based on KullbackLeibler divergence of the metadata language models, and we explore the use of this metadata in calculating user and item similarities. We perform our experiments on three data sets from two di erent domains: Delicious, CiteULike and BibSonomy.</p>
      </abstract>
      <kwd-group>
        <kwd>Algorithms</kwd>
        <kwd>Measurement</kwd>
        <kwd>Performance</kwd>
        <kwd>Experimentation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Categories and Subject Descriptors</title>
    </sec>
    <sec id="sec-2">
      <title>INTRODUCTION</title>
      <p>Recommender systems belong to a class of personalized
information filtering technologies that aim to identify which items in
a catalog might be of interest to a particular user.
Recommendations can be made using a variety of information sources related to
Permission to make digital or hard copies of all or part of this work for
personal or classroom use is granted without fee provided that copies are
not made or distributed for profit or commercial advantage and that copies
bear this notice and the full citation on the first page. To copy otherwise, to
republish, to post on servers or to redistribute to lists, requires prior specific
permission and/or a fee.</p>
      <p>ACM RecSys ’09 Workshop on Recommender Systems and the Social Web
October 25, 2009, New York, NY, USA.</p>
      <p>Copyright 2009 by the author(s).
both the user and the items: past user preferences, purchase
history, demographic information, item popularity, the metadata
characteristics of the products, etc. Social bookmarking websites, with
their emphasis on open collaborative information access, o er an
ideal scenario for the application of recommender systems
technology. They allow users to manage their favorite bookmarks online
through a web interface and, in many cases, allow their users to
tag the content they added to the system with keywords. The
aggregation of these tags, the folksonomy, is an extra annotation layer
connecting users and items. The underlying application then makes
all information sharable among users. The success of such websites
partly depends on how the connections between users, items, and
tags are exploited.</p>
      <p>
        Social bookmarking websites also o er possibilities for
attaching item-specific metadata to each item, such as the item’s title or
summary. This additional metadata could also be used to support
the recommendation process. Using item metadata to boost
performance is not new in recommender systems research, but typically
such content-related information is attached to the items, and is
therefore the same across all users [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]. On the other hand, the tags
assigned to items are specific to the user who added them. We know
of no approaches to item recommendation for social bookmarking
that investigate the use of such metadata.
      </p>
      <p>In this paper we focus on the question how we can make use
the information represented by the folksonomy and the item
metadata to boost the performance of traditional collaborative filtering
algorithms. We make the following contributions. First, we
examine di erent ways of extending the standard nearest-neighbor
algorithm with information about tagging behavior. Second, we explore
how best to use the metadata for recommendation by proposing
four di erent algorithms. Finally, we perform our experiments on
publicly available data sets with standardized evaluation metrics to
promote verifiability. The remainder of this paper is structured as
follows. We start by introducing our data sets and experimental
setup in the next section. In Section 3 we describe and compare
di erent CF algorithms that operate on the folksonomy to
generate recommendations. Section 4 we describe how we exploit the
metadata in our data sets to generate item recommendations. We
describe the related work in Section 5 and conclude in Section 6.
2.
2.1</p>
    </sec>
    <sec id="sec-3">
      <title>METHODOLOGY</title>
    </sec>
    <sec id="sec-4">
      <title>Data Sets</title>
      <p>We base our experiments on four data sets that were collected
from three di erent social bookmarking websites with di erent
characteristics: CiteULike, BibSonomy, and Delicious. Two data sets
correspond to the domain of Web page bookmarks (Delicious and
BibSonomy) and the other two cover the domain of scientific
articles (Delicious and BibSonomy).</p>
      <p>CiteULike is a social bookmarking service that allows its users to
add their academic reference library to an online profile1. Articles
can be stored with their metadata, abstracts, and links to the papers
at the publishers’ sites. Users can also add personal comments and
tags. CiteULike o ers daily dumps of their core database. We used
the dump of November 2, 2007 as the basis for our experiments.
A dump contains all information on which articles were posted by
whom, with which tags, and at what point in time. It does not,
however, contain any other item metadata, so we crawled this ourselves
from the CiteULike website using the article IDs. Articles are
annotated using the standard BibTeX-like fields, such as title, author
names, page numbers, publisher information, etc.</p>
      <p>
        BibSonomy is a social bookmarking service for sharing Web
page bookmarks and reference lists of scientific articles2. Items
are stored and represented by their BibTeX metadata
representations. These can include abstracts and links to the papers at the
publishers’ websites. Users are able to tag their bookmarked content
and use these tags to browse and discover related references [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
BibSonomy’s creators organized the 2008 ECML/PKDD
Discovery Challenge which focused on social bookmarking, and released
the BibSonomy data set to the public in May 2008 as part of this
challenge3. The organizers made a snapshot of the BibSonomy
system consisting of all resources posted to BibSonomy between
its inception in 2006 and March 31, 2008. It includes the same
type of article metadata as we collected for CiteULike. The
distinction between bookmarks and BibTeX records is also made in
this snapshot. We therefore split this data dump into a data set
containing only web bookmarks (Bibsonomy Bookmarks), and a data
set containing only scientific articles (Bibsonomy Articles).
      </p>
      <p>Delicious is a social bookmarking service for storing, sharing,
and discovering web bookmarks. It allows its users to manage
and tag URLs of web pages4. Unlike CiteULike and BibSonomy,
Delicious does not o er data dumps of their databases, so we
gathered our data set by crawling a subset of the Delicious website.
Because of our focus on the task of item recommendation for users,
our aim was to collect a balanced, unbiased set of user profiles,
i.e. the complete set of bookmarks a user had posted to Delicious.
From an earlier breadth-first crawl of Delicious we obtained a list
of 300,000 users. We randomly selected around 18,000 of these
users to match the size of our CiteULike data set, and crawled their
entire profiles.
2.1.1</p>
      <sec id="sec-4-1">
        <title>Data set filtering</title>
        <p>
          It is common practice in recommender system evaluation to
select realistic subsets of the data sets used to ensure that reliable
recommendations can be generated. This also allows for a fair
comparisons of di erent recommendation algorithms [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]. This
is typically done by filtering out users or items whose profile size
or popularity falls below a certain threshold. We follow this
procedure in our preparation of the data sets as well. We only retain the
users who have added 20 items or more to their personal profile. In
addition, we filter out all items that occur only once, as well as all
untagged posts. We were able to identify and filter out most of the
spam content in the CiteULike and BibSonomy data sets. We refer
the reader to [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] for more details about this process. Table 1 lists
the statistics of our four data sets after filtering.
1http://www.citeulike.org/
2http://www.bibsonomy.org/
3http://www.kde.cs.uni-kassel.de/ws/rsdc08/
4http://www.delicious.com/
2.2
        </p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Experimental Setup &amp; Evaluation</title>
      <p>
        In order to evaluate and compare di erent recommender
algorithms, we need a proper framework for experimentation and
evaluation. Recommender systems evaluation—and the di erences with
IR evaluation—has been addressed by, among others, [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. We
evaluate the “Find Good Items” task, also known as Top-N
recommendation, where users are provided with a ranked list of
recommended items based on their personal profile. We divide each
data set into a training and test set by randomly selecting 10% of
the users to be in our test set. Final performance is evaluated on
this 10% by withholding 10 items from each of these so-called
active users, and using the remaining profile items together with the
training set to generate the recommendations for those 10%. If the
withheld items are predicted at the top of the ranked result list, then
the algorithm is considered to do perform well. To prevent
overestimation when optimizing algorithm parameters, we use 10-fold
cross-validation. We subdivide our training set into 10 folds and
use these for 10-fold cross-validation of our parameter
optimization. For each fold, 10 items are withheld from the test fold users
to be retrieved by the recommendation algorithm. The final values
for our evaluation metric on the withheld items are then
macroaveraged over the 10 folds.
      </p>
      <p>
        In our evaluation, we adopt an IR perspective by treating each of
the users as a separate query or topic. The 10 withheld items for
each user constitute the items for which we have relevance
judgments. Herlocker et al. [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] assess the usefulness of di erent
metrics for di erent types of recommendation tasks. For the Top-N
recommendation task, they find that metrics that take into account
the ranking of the items are most appropriate. We therefore
evaluate our algorithms using Mean Average Precision (MAP), which is
defined as the average of the Average Precision values calculated
over each relevant retrieved item. For determining significance of
di erences between runs, we use a two-tailed paired Student’s
ttest. We report on significant di erences against the best baseline
runs using M (and O) for = :05 and N (and H) for = :01.
3.
      </p>
    </sec>
    <sec id="sec-6">
      <title>FOLKSONOMIC RECOMMENDATION</title>
      <p>
        We start by establishing some notation and definitions of the task
at hand, based in part on notation by [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. In the social bookmarking
setting, users post items to their personal profiles and can choose
to label them with one or more tags. We define a folksonomy to be
the tripartite graph that emerges from this collaborative annotation
of items. The resulting ternary relations that make up the
tripartite graph can be represented as a 3D matrix of users, items, and
tags. Figure 1 illustrates this view. We refer to the 3D matrix as
D(uk; il; tm). Here, each element d(k; l; m) of this matrix indicates
if user uk (with k = f1; : : : ; Kg) tagged item il (with l = f1; : : : ; Lg)
with tag tm (with m = f1; : : : ; Mg), where a value of 1 indicates the
ternary relation is present in the folksonomy.
      </p>
      <p>In conventional recommender systems, the user-item matrix
contains ratings information. These ratings can be explicit, when they
are entered directly by the user, or implicit, when they are inferred
from user behavior. In our case we have implicit, unary ratings
where all items that were added by a user receive a rating of 1.
We extract this ratings matrix R(uk; il) for all user-item pairs
directly from the tripartite graph. We denote its individual elements
by xk;l = f1; ;g. Each user is represented in this matrix as its user
profile row vector uk, which lists the items that user added to his or
her profile. Items are represented by the column vectors of R which
represent the item profile vectors il that contain all users that have
added that item. As shown in Figure 1, we can also extract a
useritem matrix from D by aggregating over the tag dimension. We then
u
 1
u
 K
i 1 items i L
# users
# items
# tags
# posts
user-item sparsity
avg # items per user
avg # users per item
avg # tags per user
avg # users per tag
avg # tags per item
avg # items per tag
users
u
 1
u
 K</p>
      <p>items
Σ</p>
      <p>D
i 1 items i L
tags
users</p>
      <p>R
binarize
users</p>
      <p>UI
obtain the K L user-item matrix UI(uk; il) = PmM=1 D(uk; il; tm),
specifying how many tags each user assigned to each item.
Because we filtered our data sets to include only tagged content, our
ratings matrix R is the same as a binary version of UI. Similar to
the way we defined UI we can also aggregate the content of D over
the user and the item dimensions. We define the K M user-tag
matrix UT(uk; tm) = PlL=1 D(uk; il; tm), specifying how often each user
used certain tag to annotate his or her items. Individual elements
of UT are denoted by yk;m. We define the L M item-tag matrix
IT(il; tm) = PkK=1 D(uk; il; tm), indicating how many users assigned
a certain tag to an item. Individual elements of IT are denoted by
zl;m. We also define binary versions of UT and IT as UTbinary and
ITbinary. The row vectors of the UT and IT matrices represent the
user tag profiles dk and item tag profiles fl respectively. They list
what tags have been assigned by a user to his items, or to an item
by its users. Formally, the goal of each of the recommendation
algorithms discussed in this paper is to produce a ranking of all items
l that are not yet in the profile of the active user uk (i.e., xk;l = ;).
To this end, we predict a score bxk;l for each item that represents the
likelihood of that item being relevant for the active user. The final
recommendations for a user are generated by ranking all items il by
their predicted score bxk;l.
3.1</p>
    </sec>
    <sec id="sec-7">
      <title>Baseline Recommendation Algorithms</title>
      <p>
        A common and well-understood source of information for
recommendation is usage patterns of adding and rating items. The
class of algorithms that exploit such patterns for recommendation
purposes are called Collaborative Filtering algorithms (CF). In this
paper we focus on using and extending the k-Nearest Neighbor
(kNN) algorithm. We pick the k-NN algorithm because it is a well
understood algorithm that can intuitively be extended to include
other information in addition to transaction patterns [
        <xref ref-type="bibr" rid="ref10 ref7">7, 10</xref>
        ]. There
are two flavors of the k-NN algorithm for CF: user-based filtering
and item-based filtering. In user-based filtering, we locate the users
most similar to the active users, and look among their items for new
recommendations. In item-based filtering, we locate the most
similar items for each of the active user’s items and aggregate these into
a list of predicted items.
      </p>
      <sec id="sec-7-1">
        <title>User-based Filtering.</title>
        <p>
          In the first step of user-based filtering we calculate the
similarities between pairs of users to identify the most similar users for an
active user. Many di erent similarity metrics have been proposed
and evaluated over time, such as Pearson’s correlation coe cient
and cosine similarity [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ]. We use the cosine similarity in our
experiments as it has often been used successfully on data sets with
implicit ratings [
          <xref ref-type="bibr" rid="ref19 ref6">6, 19</xref>
          ]. We calculate the cosine similarity between
the active user uk and another user ua on the user profile vectors uk
and ua as simcosine(uk; ua) = jjuukkjj ujjuaajj .
        </p>
        <p>The next step in user-based filtering is to determine the top N
similar users (or items) for user uk. We denote this set as the
Set of Similar Users SSU(uk), which are the top N users of the
set of all users ua, ranked by their cosine similarity. For each
user ua, we only consider those items that ua added to his
profile (xa;l , ;). Using this set of nearest neighbors we generate
the final prediction scores bxk;l for each unseen item il as bxk;l =
Pua2SSU(uk) simcosine(uk; ua). Here, the predicted score of an item
il is the sum of the similarity values (between 0 and 1) of all N
nearest neighbors that actually added item il (i.e. xa;l , ;).</p>
        <p>
          A recurring observation from the literature about CF algorithms
is that universally liked items are not as useful for capturing the
similarity between users as less common items, see e.g. [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ]. We
therefore perform two runs: the ‘vanilla’ base run described above
(u-bin-sim) and a run where the values in the user vectors are weighted
by the inverse user frequencies of the items (u-bin-idf-sim).
        </p>
      </sec>
      <sec id="sec-7-2">
        <title>Item-based Filtering.</title>
        <p>
          The item-based k-NN algorithm operates analogously to the
userbased filtering algorithm [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ]. Instead of comparing users directly,
we try to identify the best recommendations for each of the items
in an active user’s profile. In other words, for item-based
filtering we calculate the similarities between the test items of the
active user uk and the other items that user has not yet added (so
xk;l = ;). Similarity between two items il and ib is calculated on the
item profile vectors il and ib as simcosine(il; ib) = il ib . Next, we
jjiljj jjibjj
identify the top N most similar items for each of the active user’s
items il separately. We define this neighborhood as the Set of
Similar Items SSI(il), where we select the top N of all items not
already in the active user’s profile, ranked on their cosine similarity
simcosine(il; ib) to item il. Using this set of nearest neighbors we
generate the final prediction score bxk;l for each unseen item il as
bxk;l = Pib2SSI(il) simcosine(il; ib). Here, the predicted score is the sum
of the similarity values (between 0 and 1) of all the most similar
items that were added by user uk (i.e. xk;b , ;). Analogous to
user-based filtering, we can also suppress the influence of the most
‘popular’ users, i.e. users that have added a disproportionately large
number of items to their profile, such as bots or spam users. We
refer to the item-based filtering runs weighted with the inverse item
frequency as i-bin-idf-sim and to the unweighted runs as i-bin-sim.
3.2
        </p>
      </sec>
    </sec>
    <sec id="sec-8">
      <title>Tag Overlap Similarity</title>
      <p>The folksonomies present in our four data sets each constitute an
extra layer of connections between user and items. We exploit this
extra layer for determining another type of similarity between users
or items. For instance, users that assign many of the same tags can
be seen as similar, and items that are often assigned the same tags
can also be seen as similar.</p>
      <p>We restrict ourselves to comparing three common similarity
metrics: Jaccard overlap, Dice’s coe cient, and the cosine similarity.
We use these similarities as the basis for item recommendation.
The only di erence between this approach and the standard CF
algorithm is in the first step, where the similarities are calculated.
For user-based filtering, we calculate tag overlap on the UT
matrix or on the binarized version UTbinary, depending on the metric.
Both the Jaccard overlap and Dice’s coe cient are set-based
metrics, which means we calculate them on the binary vectors from the
UTbinary matrix. The Jaccard Overlap simJaccard(dk; da) between two
users dk and da is defined as jjddkk\[ddaajj . Dice’s coe cient simDice(dk; da)
is defined as 2jdjdkkj+\jddDaajji.ceW’secroeefer to the user-based runs with the
Jaccard overlap and cient as ut-jaccard-sim and
ut-dicesim respectively. The cosine similarity is calculated in three
different ways. First, we calculate it on the regular tag count vectors
dk and da from UT as ut-tf-sim, and on the binary vectors from the
UTbinary matrix as ut-bin-sim. In addition, we also experiment with
idf-weighting of the tags in the user tag count vectors as we did
before. We refer to this run as ut-tfidf-sim. The item-based versions
of these similarity metrics are calculated on the IT and ITbinary
matrices. We refer to these five item-based runs as it-jaccard-sim,
it-dice-sim, it-bin-sim, it-tf-sim, and it-tfidf-sim.
3.3</p>
    </sec>
    <sec id="sec-9">
      <title>Results &amp; Discussion</title>
      <p>Table 2 compares the results of our baseline CF runs that
employ usage-based similarities to the runs that use overlap in
tagging behavior as a source of user and item similarity. We see that
the user-based filtering baseline outperforms item-based filtering
on three of four data sets; only on CiteULike does item-based
filtering work better, where this di erence is also statistically significant
(p &lt; 0:05). The other di erences between user-based and
itembased filtering are not significant. There appears to be no clear or
statistically significant advantage to applying idf-weighting to the
profile vectors. An explanation for the advantage of user-based
filtering is that, according to Table 1, the average number of items per
user is much higher than the average number of users per item.
Calculating a meaningful overlap between user profile vectors could
therefore be more robust than between item profile vectors.</p>
      <p>As for the results with tag overlap, we observe that item
similarities based on tag overlap work well for item-based filtering, as
three of our four data sets show considerable improvements over
the best CF baseline runs. Performance increases range from 27%
on Bibsonomy Articles to almost 120% on Delicious, but these
are only statistically significant on the Delicious data set. We see
the opposite trend for user-based filtering, where tag overlap
results in significantly worse scores for almost all variants on all data
sets, with performance decreases ranging from 40% to 63%. This
means that using tag overlap in item-based filtering makes
itembased filtering outperform user-based filtering on all four data sets.
We believe that it is the reduction in sparsity from using tag overlap
that causes this di erence in performance. On average, the number
of tags assigned to an item is 2.5 times higher than the number of
users who have added the item. This means that, on average, item
profile vectors from the IT matrix are less sparse than item
profile vectors from the UI matrix, making the possibility of overlap
between vectors more likely. Using more values in the similarity
calculation leads to a better estimate of the real similarity between
two items.</p>
      <p>For user-based filtering this di erence is not as well-pronounced:
in some data sets users have more items than tags on average, and
more tags than items in other data sets. This explains why we do
not see the same performance increase for the user-based filtering
runs based on tag overlap. The results of the di erent tag overlap
metrics tend to be close together and di erences between them are
not statistically significant. Even though the best-performing
similarity metrics are dependent on the data set, we do see that the
metrics operating on the binary vectors from the UTbinary and ITbinary
matrices are consistently among the top performers.</p>
      <p>In general, it appears that bookmark recommendation is more
di cult than article recommendation. We believe this is due to a
di erence in topic specificity. The Delicious and Bibsonomy
Bookmarks data sets cover bookmarks of web pages, which encompass
many more topics than scientific articles do. Users of Delicious
and Bibsonomy Bookmarks can be expected to have more di
erent topics in their profile, making it more di cult to recommend
new, interesting bookmarks based on their profiles. We see
evidence for this explanation in the average number of unique tags per
user: 203.3 and 192.1 for Bibsonomy Bookmarks and Delicious
respectively, which is markedly higher than the 79.2 and 57.3 for
Bibsonomy Articles and CiteULike.</p>
    </sec>
    <sec id="sec-10">
      <title>RECOMMENDATION USING METADATA</title>
      <p>In addition to the folksonomic structure of the underlying
network, social bookmarking services also o er users the possibility
to annotate the content of their items with metadata. In this section
we investigate the role such metadata can play in recommending
interesting bookmarks or references. We propose two di erent
approaches: content-based filtering and hybrid filtering. Before we
move on to describing these in Sections 4.1 and 4.2, we first take a
closer look at the metadata we have available.</p>
      <p>In our approach we distinguish between item-intrinsic and
itemextrinsic metadata. Item-intrinsic metadata fields relate directly to
the content of the item being annotated. For the two data sets
dealing with web bookmarks these include DESCRIPTION, TAGS, TITLE,
and URL. The two scientific article data sets contain the additional
intrinsic fields ABSTRACT ,AUTHOR, BOOKTITLE, EDITOR, JOURNAL, NOTE,
and SERIES. The intuition behind assigning metadata fields to the
item-intrinsic category is that these fields can be used as
standalone sources for recommending other content. For instance, given
a certain paper from a user’s profile, papers with similar abstracts,
papers written by the same author, or papers published at the same
workshop are likely to be relevant recommendations. In contrast,
item-extrinsic metadata fields—such as MONTH or PAGES—cannot be
used to directly generate appropriate recommendations. We
performed experimental runs using the metadata of each of our
intrinsic fields separately. In addition, we experimented with the
combination of all intrinsic fields, and with runs that combined all
intrinsic and extrinsic fields, resulting in a total of 34 runs per algorithm.
We did not test the extrinsic fields separately. Due to space
restrictions we only report the results of the best runs for each algorithm.
4.1</p>
    </sec>
    <sec id="sec-11">
      <title>Content-based Filtering</title>
      <p>The first approach we propose is content-based filtering where
the focus is on properly representing the content in our social
bookmarking data sets. Based on these representations our aim is to
construct an interest profile of an active user, and then use this
profile to rank-order the unseen items by similarity to the profile,
thereby approximating possible interest in those items. Figure 2
illustrates two di erent algorithms we propose for content-based
filtering: profile-centric matching and post-centric matching.</p>
      <p>The di erence between our two content-based filtering algorithms
is the level of aggregation. In our profile-centric matching
approach, we collate all of a user’s assigned metadata into a single
user profile. The intuition here is that by aggregating all of the
metadata assigned by a user we can completely capture his or her
interests. Similarly, we construct item profiles that collate all of the
metadata assigned to those items by all users in the training set. We
then match the active user profiles against the item profiles on
similarity to produce a ranking of all items, as illustrated in the top half
of Figure 2. After removing the items already in the active user’s
profile, we are left with the final rank-ordered list of
recommendations.</p>
      <p>
        In contrast, post-centric matching operates on the level of
individual posts. We match each of an active user’s posts separately
against all the other posts of unseen items in the training set, as
illustrated in the bottom half of Figure 2. This leads to a list of
matching posts in order of similarity for each of the active user’s
posts. Since retrieval scores are not directly comparable between
runs, we normalize the original similarity scores simorg into [
        <xref ref-type="bibr" rid="ref1">0,
1</xref>
        ] using the maximum and minimum similarity scores simmax and
simmin according to simnorm = ssiimmmoragx ssiimmmmiinn . We then calculate a
rank-corrected sum of similarity scores for each item il according to
score(i) = P logsi(mrannokrm(il()il))+1 . The final list of recommendations ranks
every unseen item il by their rank-corrected score score(il).
training 
pairs
      </p>
      <p>
        In both content-based filtering algorithms, we approach the
recommendation process from an IR perspective and restrict ourselves
to measuring textual similarity. We use the open-source retrieval
toolkit Lemur to calculate the similarities between the di erent
user and item profiles. The Lemur toolkit5 implements di erent
retrieval methods based on language modeling [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. Preliminary
experiments comparing language modeling with the OKAPI model
and a tf idf approach suggested a language modeling approach with
Jelinek-Mercer smoothing as the best-performing retrieval method.
The language models we used are maximum likelihood estimates
of the unigram occurrence probabilities. We filter stopwords using
the SMART stopword list and do not perform stemming.
4.2
      </p>
    </sec>
    <sec id="sec-12">
      <title>Hybrid Filtering</title>
      <p>
        In addition to focusing solely on using the metadata for
recommendation, we also consider a hybrid approach that joins
contentbased filtering and CF, in the hope of combining the best of both
worlds. Many di erent combination methods have been proposed
in earlier work [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. In our hybrid filtering approach we view
metadata in social bookmarking systems as another source of
information for locating the nearest neighbors of users and items in CF
algorithms. Figure 3 illustrates this approach. Instead of only
looking at the overlap in items that two users have in common when
calculating user similarities, we can use the overlap in the metadata
applied to items to determine the most similar neighbors. Users that
describe their profile items using the same terminology are likely
share the same interests, making them a good source of
recommendations. This is similar to the way we used the tag clouds of
users and items to calculate similarity between users and items in
the previous section. The user and item similarities we derive in
this way are then plugged into the standard memory-based CF
algorithms as described in Section 3.1. The resulting algorithm is a
feature-augmented hybrid of CF and content-based filtering.
training 
pairs
      </p>
      <p>Hybrid filtering also consists of two steps: (1) calculating the
most similar neighbors of the active user or his items, and (2)
using those neighbors to predict item ratings for the active user. The
latter prediction step is performed in the same manner as described
5Available at http://www.lemurproject.org
earlier in Section 3.1. As in CF, with our hybrid filtering algorithms
we also distinguish between user-based filtering, where we
generate recommendations by determining the most similar users, and
item-based filtering, where we recommend the items most similar
to the items in the active user’s profile. Like in Section 4.1, we
approach the first step from an IR perspective and calculate the textual
similarities between users or items. For each user and each item we
generate user and item profile representations, constructed as
follows. All of the metadata text of a user’s posts is collated into a
single “user profile” for that user. Similarly, for the item-based
approach we create item profiles for each item by concatenating all of
the metadata assigned to that item by all the users who have the item
in their profile. This means that items are represented by their
aggregated community metadata and not just by a single user’s data.
Again, we used the open-source retrieval toolkit Lemur to
calculate the similarities between the di erent metadata representations,
with the same experimental settings as described in Section 4.1.
4.3</p>
    </sec>
    <sec id="sec-13">
      <title>Results &amp; Discussion</title>
      <p>Table 3 contains the best runs for each of the four metadata-based
algorithms, as well as our best CF run from Section 3. What we see,
is that on three out of four data sets a recommendation algorithm
that uses metadata is better than the best CF run using data from the
folksonomy. All of our best metadata runs use the combined
metadata fields. On their own, each field can be seen as an imperfect
representation of the items and users, but combined they alleviate
each others weak points and better represent the content than they
do separately. Only on the Delicious data set do all metadata-based
approaches perform significantly worse than the CF runs.
Unfortunately, we do not have an explanation for this. When we compare
the metadata-based approaches with each other, we see that most
di erences are not statistically significant. On the Bibsonomy
Articles data set, the item-centric hybrid filtering approach is
significantly better than the user-centric approach (p &lt; 0:05). On the
CiteULike data set, the profile-centric approach also significantly
outperforms the post-centric and user-centric approaches.</p>
      <p>In general, we observe that the profile-centric approach tends
to outperform the post-centric approach on three of our four data
sets. This improvement is statistically significant for the CiteULike
data set with an improvement of 117% (p &lt; 10 6). Only on the
Delicious data set does post-centric matching perform significantly
better (p &lt; 0:05). This advantage of the profile-centric approach
is strongest on the article data sets where the profile-centric
approach performs best for 75% of the all runs with di erent fields.
In the case of hybrid filtering, the item-centric approach
outperforms the user-centric approach on three of our four data sets. On
the CiteULike and Bibsonomy Articles data sets these di erences
are statistically significant and especially large at 268% (p &lt; 0:05)
and 112% respectively (p &lt; 0:01).</p>
      <p>While we do not have room to report the results of all
individual intrinsic field runs, we can report on our general findings. For
all four approaches, the best-performing single fields are AUTHOR,
DESCRIPTION, TAGS, and TITLE, which provide the best individual
results on all four data sets for all approaches. This is not
surprising, as these fields are the least sparsely filled of all the intrinsic
fields. In addition, these four fields are also aimed directly at
describing the content of the items, more so than the conference or
journal titles or the editors. Another interesting observation is that
the TITLE field served as a better source of user and item
similarity on the article data sets than on the bookmark data sets. This is
because titles assigned to bookmarks are more variable than titles
assigned to scientific articles, leading to this performance gap.</p>
    </sec>
    <sec id="sec-14">
      <title>RELATED WORK 5. 5.1</title>
    </sec>
    <sec id="sec-15">
      <title>Folksonomic Recommendation</title>
      <p>
        One of the first approaches to recommendation for social
bookmarking websites was presented by [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], who proposed a
graphbased algorithm called FolkRank. They generated 2D projections
of the tripartite graph and proposed a random walk model similar
to PageRank [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] that uses the steady state node probabilities as
the basis for ranking their recommendations. Clements et al. [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]
also proposed a random walk model for item recommendation, but
combine ratings information with tagging information into a single
model. They also incorporated self-transition probabilities in the
matrix, and used the walk length as an algorithm parameter.
      </p>
      <p>
        There have also been several adaptations of memory-based
algorithms that include information about the tags assigned by users to
items. Approaches that resemble our use of tag overlap for
calculating similarities between users and items include [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], and [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ].
Tso-Sutter et al. [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ] proposed a novel tag-aware k-NN algorithm
for item recommendation. When calculating the user and item
similarities they include the tags as additional items and users
respectively. They then calculate cosine similarity on these extended
profile vectors and fuse together the predictions of the user-based and
item-based filtering runs. This fused model is able to e ectively
capture the relationship between users, items, and tags.
      </p>
      <p>
        Symeonidis et al. [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] were among the first to propose a
modelbased approach to incorporating tagging information in
recommendation. They propose an item recommendation approach that
performs tensor decomposition on the third-order folksonomy tensor.
By performing higher-order SVD, they approximate weights for
each user-item-tag triple in the data set, which can then be used
to support item recommendation. They compared their algorithm
to the FolkRank algorithm [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], and found that tensor
decomposition outperforms the latter. Wetzker et al. [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ] took a Probabilistic
Latent Semantic Analysis (PLSA) approach, which assumes a
latent lower dimensional topic model. They extended PLSA by
estimating the topic model from both user-item occurrences as well
as item-tag occurrences, and then linearly combined the output of
the two models. They tested their approach on a large crawl of
Delicious, and found that it significantly outperforms a
popularitybased algorithm.
5.2
      </p>
    </sec>
    <sec id="sec-16">
      <title>Exploiting Metadata for Recommendation</title>
      <p>
        While a significant amount of research has focused on
Collaborative Filtering for recommending interesting items, there has also
been considerable work on content-based filtering, which can be
seen as an extension of the work done on information filtering.
Content-based filtering has been applied to many di erent domains.
Early work on content-based filtering included the NewsWeeder
system by Lang et al. [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], which used the words contained in
newsgroup messages as its features. Alspector et al. [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] compared
a CF approach to movie recommendation with content-based
filtering. For their content-based component they built metadata
representations of all movies using fields such as directory, genre, and
awards, and used linear regression and classification and regression
trees to learn user profiles and rank-order the items for those users.
They found that CF performed significantly better than the
contentbased methods, but noted that this was likely due to the poor feature
set they used. Mooney et al. [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] describe Libra, a content-based
book recommender system. They crawled the book metadata from
the Amazon website and represented each book as a bag-of-words
vector. They then used a Naive Bayes classifier to learn user
profiles and to rank-order unseen books for the user.
      </p>
      <p>
        We are not the first to suggest the combination of CF with
contentbased filtering, as the advantages of both approaches are largely
complementary. CF is the more mature of the two approaches and
works best in a situation with a stable set of items and a dense user
base. Content-based filtering methods are better at dealing with
sparse, dynamic domains such as news filtering, and are better at
recommending for non-average users. Basu et al. [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] were among
the first to propose a hybrid recommender system that used both
collaborative and content features to represent the users and items.
The collaborative features captured what movies a user likes and
the content features included metadata fields such as actors,
directors, genre, titles, and tag lines. They used Ripper, a rule-based
machine learning algorithm to predict which items are interesting,
and found that the combination of collaborative and content-based
features produced the best results. Claypool et al. [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] presented a
weighted hybrid recommender system that calculated a weighted
average of the output of two separate CF and content-based
filtering components. The CF component received a stronger weight
as the data sets grows denser, gradually phasing out the influence
of the content-based component. They did not find any significant
di erences between the performance of the separate components
or the combined version. Baudisch [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] proposed an innovative
approach to incorporating metadata into CF algorithms by joining the
metadata descriptions to the user-item matrix as additional users.
      </p>
      <p>In this paper we have presented a range of collaborative and
content-based approaches to item recommendation on social
bookmarking websites. Our algorithms were evaluated on four realistic
data sets of di erent domains, and compared to two external,
stateof-the-art approaches. Let us step back now and take stock of our
findings. Tags represent an additional layer of information in the
folksonomy that binds users and items together. These tags can
be used successfully to improve the recommendations of standard
nearest-neighbor algorithms, but this depends on the algorithm. For
item-based filtering, using tags for calculating item similarity
alleviates sparsity and results in better performance. At the user level,
however, tags do not o er the same benefits.</p>
      <p>Metadata can also be used successfully to generate item
recommendations for social bookmarking websites. While the best
approach seems to be dependent on the data set and the domain,
aggregating all of the intrinsic metadata at the user and item level
results in algorithms that outperform the algorithms using only
information from the folksonomy.</p>
      <p>
        For future work, we intend to examine the benefits of data fusion.
The tag-aware fusion approach by Tso-Sutter et al. [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]
demonstrates the potential of fusing together the outputs of di erent
recommendations algorithms and representations.
      </p>
    </sec>
    <sec id="sec-17">
      <title>Acknowledgments</title>
      <p>The work described in this paper was funded by SenterNovem / the
Dutch Ministry of Economics A airs as part of the IOP-MMI À
Propos project, and by the Netherlands Organization for Scientific
Research as part of the NWO Vernieuwingsimpuls program.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>J.</given-names>
            <surname>Alspector</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Koicz</surname>
          </string-name>
          , and
          <string-name>
            <given-names>N.</given-names>
            <surname>Karunanithi</surname>
          </string-name>
          .
          <article-title>Feature-based and Clique-based User Models for Movie Selection: A Comparative Study. User Modeling</article-title>
          and
          <string-name>
            <surname>User-Adapted Interaction</surname>
          </string-name>
          ,
          <volume>7</volume>
          (
          <issue>4</issue>
          ):
          <fpage>279</fpage>
          -
          <lpage>304</lpage>
          ,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>S.</given-names>
            <surname>Amer-Yahia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Galland</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Stoyanovich</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Yu</surname>
          </string-name>
          .
          <article-title>From del.icio.us to x.qui.site: Recommendations in Social Tagging Sites</article-title>
          .
          <source>In Proceedings of SIGMOD '08</source>
          , pp.
          <fpage>1323</fpage>
          -
          <lpage>1326</lpage>
          , New York, NY, USA,
          <year>2008</year>
          . ACM.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>C.</given-names>
            <surname>Basu</surname>
          </string-name>
          , H. Hirsh, and
          <string-name>
            <given-names>W. W.</given-names>
            <surname>Cohen</surname>
          </string-name>
          .
          <article-title>Recommendation as Classification: Using Social and Content-Based Information in Recommendation</article-title>
          .
          <source>In Proceedings of the Fifteenth National Conference on Artificial Intelligence</source>
          , pp.
          <fpage>714</fpage>
          -
          <lpage>720</lpage>
          ,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>P.</given-names>
            <surname>Baudisch</surname>
          </string-name>
          .
          <article-title>Joining Collaborative and Content-based Filtering</article-title>
          .
          <source>In Proceedings of the ACM CHI Workshop on Interacting with Recommender Systems</source>
          . ACM Press, May
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>T.</given-names>
            <surname>Bogers</surname>
          </string-name>
          and
          <string-name>
            <surname>A. Van den Bosch.</surname>
          </string-name>
          <article-title>Using Language Modeling for Spam Detection in Social Reference Manager Websites</article-title>
          . In R. Aly,
          <string-name>
            <given-names>C.</given-names>
            <surname>Hau</surname>
          </string-name>
          , I. den Hamer, D. Hiemstra,
          <string-name>
            <given-names>T.</given-names>
            <surname>Huibers</surname>
          </string-name>
          , and F. de Jong, editors,
          <source>Proceedings of the 9th Belgian-Dutch Information Retrieval Workshop (DIR</source>
          <year>2009</year>
          ), pp.
          <fpage>87</fpage>
          -
          <lpage>94</lpage>
          , Enschede,
          <year>February 2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <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 Proceedings of the Fourteenth Annual Conference on Uncertainty in Artificial Intelligence</source>
          , pp.
          <fpage>43</fpage>
          -
          <lpage>52</lpage>
          ,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>R.</given-names>
            <surname>Burke</surname>
          </string-name>
          .
          <article-title>Hybrid Recommender Systems: Survey and</article-title>
          <string-name>
            <given-names>Experiments. User</given-names>
            <surname>Modeling</surname>
          </string-name>
          and
          <string-name>
            <surname>User-Adapted</surname>
            <given-names>Interaction</given-names>
          </string-name>
          ,
          <volume>12</volume>
          (
          <issue>4</issue>
          ):
          <fpage>331</fpage>
          -
          <lpage>370</lpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M.</given-names>
            <surname>Claypool</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Gokhale</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Miranda</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Murnikov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Netes</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Sartin</surname>
          </string-name>
          .
          <article-title>Combining Content-Based and Collaborative Filters in an Online Newspaper</article-title>
          .
          <source>In Proceedings of ACM SIGIR Workshop on Recommender Systems</source>
          ,
          <year>August 1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>M.</given-names>
            <surname>Clements</surname>
          </string-name>
          ,
          <string-name>
            <surname>A. P. de Vries</surname>
            , and
            <given-names>M. J.</given-names>
          </string-name>
          <string-name>
            <surname>Reinders</surname>
          </string-name>
          .
          <article-title>Optimizing Single Term Queries using a Personalized Markov Random Walk over the Social Graph</article-title>
          .
          <source>In Proceedings of ESAIR '08</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <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>A.</given-names>
            <surname>Borchers</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Riedl</surname>
          </string-name>
          .
          <article-title>An Algorithmic Framework for Performing Collaborative Filtering</article-title>
          .
          <source>In Proceedings of SIGIR '99:</source>
          , pp.
          <fpage>230</fpage>
          -
          <lpage>237</lpage>
          , New York, NY, USA,
          <year>1999</year>
          . ACM.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <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>
          .
          <source>Evaluating Collaborative Filtering Recommender Systems. ACM Transactions on Information Systems</source>
          ,
          <volume>22</volume>
          (
          <issue>1</issue>
          ):
          <fpage>5</fpage>
          -
          <lpage>53</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>A.</given-names>
            <surname>Hotho</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Jäschke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Schmitz</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Stumme</surname>
          </string-name>
          .
          <article-title>Information Retrieval in Folksonomies: Search and Ranking</article-title>
          .
          <source>In Proceedings of ESWC '06</source>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>A.</given-names>
            <surname>Hotho</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Jäschke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Schmitz</surname>
          </string-name>
          , and
          <string-name>
            <surname>G. Stumme.</surname>
          </string-name>
          <article-title>BibSonomy: A Social Bookmark and Publication Sharing System</article-title>
          .
          <source>In Proceedings of the Conceptual Structures Tool Interoperability Workshop at ICCS</source>
          <year>2006</year>
          , pp.
          <fpage>87</fpage>
          -
          <lpage>102</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>K.</given-names>
            <surname>Lang. NewsWeeder</surname>
          </string-name>
          :
          <article-title>Learning to Filter Netnews</article-title>
          .
          <source>In Proceedings of ICML '95</source>
          , pp.
          <fpage>331</fpage>
          -
          <lpage>339</lpage>
          , San Mateo, CA, USA,
          <year>1995</year>
          . Morgan Kaufmann.
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>R. J.</given-names>
            <surname>Mooney</surname>
          </string-name>
          and
          <string-name>
            <given-names>L.</given-names>
            <surname>Roy</surname>
          </string-name>
          .
          <article-title>Content-Based Book Recommending Using Learning for Text Categorization</article-title>
          .
          <source>In Proceedings of DL '00</source>
          , pp.
          <fpage>195</fpage>
          -
          <lpage>204</lpage>
          , New York, NY,
          <year>2000</year>
          . ACM Press.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>R.</given-names>
            <surname>Nakamoto</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Nakajima</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Miyazaki</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Uemura. TagBased Contextual Collaborative</surname>
          </string-name>
          <article-title>Filtering</article-title>
          .
          <source>In Proceedings of the 18th IEICE Data Engineering Workshop</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>L.</given-names>
            <surname>Page</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Brin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Motwani</surname>
          </string-name>
          , and
          <string-name>
            <given-names>T.</given-names>
            <surname>Winograd</surname>
          </string-name>
          .
          <article-title>The PageRank Citation Ranking: Bringing Order to the Web</article-title>
          .
          <source>Technical report, Stanford Digital Library Technologies Project</source>
          ,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>G.</given-names>
            <surname>Salton</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Buckley</surname>
          </string-name>
          .
          <article-title>Term-Weighting Approaches in Automatic Text Retrieval</article-title>
          .
          <source>Information Processing &amp; Management</source>
          ,
          <volume>24</volume>
          (
          <issue>5</issue>
          ):
          <fpage>513</fpage>
          -
          <lpage>523</lpage>
          ,
          <year>1988</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <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>Reidl</surname>
          </string-name>
          .
          <article-title>Item-Based Collaborative Filtering Recommendation Algorithms</article-title>
          .
          <source>In Proceedings of WWW '01</source>
          , pp.
          <fpage>285</fpage>
          -
          <lpage>295</lpage>
          , New York, NY, USA,
          <year>2001</year>
          . ACM.
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>T.</given-names>
            <surname>Strohman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Metzler</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W. B.</given-names>
            <surname>Croft</surname>
          </string-name>
          .
          <article-title>Indri: A Language Model-based Search Engine for Complex Queries</article-title>
          .
          <source>In Proceedings of ICIA '05</source>
          , May
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>P.</given-names>
            <surname>Symeonidis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ruxanda</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Nanopoulos</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Manolopoulos</surname>
          </string-name>
          .
          <article-title>Ternary Semantic Analysis of Social Tags for Personalized Music Recommendation</article-title>
          .
          <source>In Proceedings of ISMIR '08</source>
          , pp.
          <fpage>219</fpage>
          -
          <lpage>224</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>M.</given-names>
            <surname>Szomszor</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Cattuto</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Alani</surname>
          </string-name>
          ,
          <string-name>
            <surname>K. O'Hara</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Baldassarri</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          <string-name>
            <surname>Loreto</surname>
            , and
            <given-names>V. D.</given-names>
          </string-name>
          <string-name>
            <surname>Servedio</surname>
          </string-name>
          .
          <article-title>Folksonomies, the Semantic Web, and Movie Recommendation</article-title>
          .
          <source>In Proceedings of the ESWC Workshop on Bridging the Gap between Semantic Web and Web 2.0</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <surname>K. H. L. Tso-Sutter</surname>
            ,
            <given-names>L. B.</given-names>
          </string-name>
          <string-name>
            <surname>Marinho</surname>
          </string-name>
          , and L.
          <string-name>
            <surname>Schmidt-Thieme</surname>
          </string-name>
          .
          <article-title>Tag-aware Recommender Systems by Fusion of Collaborative Filtering Algorithms</article-title>
          .
          <source>In Proceedings of SAC '08</source>
          , pp.
          <fpage>1995</fpage>
          -
          <lpage>1999</lpage>
          , New York, NY,
          <year>2008</year>
          . ACM.
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>R.</given-names>
            <surname>Wetzker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Umbrath</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Said</surname>
          </string-name>
          .
          <article-title>A Hybrid Approach to Item Recommendation in Folksonomies</article-title>
          .
          <source>In Proceedings of ESAIR '09</source>
          , pages
          <fpage>25</fpage>
          -
          <lpage>29</lpage>
          , New York, NY, USA,
          <year>2009</year>
          . ACM.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>