<!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>Ontology-Based Collaborative Recommendation</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Ahu Sieg</string-name>
          <email>asieg@cdm.depaul.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Bamshad Mobasher</string-name>
          <email>mobasher@cdm.depaul.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Robin Burke</string-name>
          <email>rburke@cdm.depaul.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Center for Web Intelligence DePaul University</institution>
          ,
          <addr-line>Chicago, Illinois</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Recommender systems have emerged as critical tools that help alleviate the burden of information overload for users. Since these systems have to deal with a variety of modes of user interactions, collaborative recommendation must be sensitive to a user's specific context and changing interests over time. Our approach to building context-sensitive collaborative recommendation is a hybrid one that incorporates semantic knowledge in the form of a domain ontology. User profiles are defined relative to the ontology, giving rise to an ontological user profile. In this paper, we describe how ontological user profiles are learned, incrementally updated, and used for collaborative recommendation. We empirically show that the ontological approach significantly improves the accuracy and coverage of recommendations.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Recommender systems [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] have become essential tools in assisting users to find
what they want in increasingly complex information spaces. Collaborative
recommender systems typically generate recommendations by identifying
neighborhoods for the target user consisting of other users with similar interests or
preferences [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>Typical collaborative recommenders rely on profiles of users represented as
flat vectors of ratings or preference scores. Thus, the same collection of user
preferences across all items or resources is used as the basis for generating
recommendations regardless of the user’s current information context or task-related
needs. Consider the following example. Suppose Steve buys and rates
mysterydetective fiction novels for his own entertainment (“Da Vinci Code”), books on
computer science topics (“Python Programming”) for work-related purposes,
children’s books (“Green Eggs and Ham”) for his daughter. It makes little sense
to represent Steve’s interest in books in a single representation that aggregates
all of these disparate interests without some acknowledgment that they represent
different sorts of needs and contexts. The system needs to know the difference
between computer books and children’s books, as well as Steve’s current context
(buying a book for his personal reading or for his work), in order to make the
most useful recommendation. Furthermore, a system that is aware of this
difference may also have the capability of recognizing similarities among syntactically
disparate items, and be able to recommend a book on Perl scripting to Steve
because he has shown an interest in Python programming.</p>
      <p>This scenario exemplifies why it is desirable for intelligent and personalized
information systems to be capable of seamlessly integrating knowledge from
three sources: the short-term user activity, representing immediate user
interests; long-term user profiles, representing established preferences; and existing
ontologies that provide an explicit representation of the domain of interest. Such
systems will be able to leverage a variety of sources of evidence to provide the
best personalized experience for the user, including both the semantic evidence
associated with the user’s individual interaction, as well as social knowledge
derived collaboratively from peer users.</p>
      <p>In this paper, we present an approach to collaborative recommendation that
effectively incorporates semantic knowledge from ontologies with collaborative
user preference information. The salient feature of our framework is the notion
of ontological user profiles which are instances of a pre-existing domain ontology
with numerical annotations associated with concepts derived from users’ past
behavior and preferences. The ontology represents concepts and relationships
in a particular domain of interest, books for example. In this paper, we use
the term ontology to refer to a hierarchical concept structure and instances
within the knowledge base. Rather than being associated with single atomic
entities like individual books, users’ choices and preferences are associated with
relevant concepts in the ontology. So, the fact that Steve buys computer books
such as “Python Programming” can be readily distinguished from his interest
in children’s books because they occupy disparate places in the book ontology.</p>
      <p>We present an algorithm based on spreading activation to incrementally
update these user profiles, as a result of ongoing user interaction, in a way that
takes into account relationships among concepts in the ontology as well as the
collaborative evidence derived from the ontological profiles of similar users. Our
approach to recommendation generation is an extension of standard user-based
collaborative framework in which user similarities are computed based on their
interest scores across ontology concepts, instead of their ratings on individual
items. Our experimental results for collaborative recommendation, based on real
ratings in the book domain, show significant improvement in prediction accuracy
as well as coverage when compared to standard collaborative filtering.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        Widely used collaborative filtering methods can be divided into two main
categories including Memory-based (user-based) and Model-based (item-based)
algorithms [
        <xref ref-type="bibr" rid="ref3 ref4">3, 4</xref>
        ]. User-based techniques [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] generally model the user as a vector
of item ratings and compare these vectors using a correlation or similarity
measurement. Item-based algorithms [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] explore the relationships among items first,
rather than the relationships between users, thus avoiding the bottleneck of
having to search for neighbors among a large user population of potential neighbors.
      </p>
      <p>
        Content-based filtering methods [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] have also been used in the context of
recommending books and Web pages, where content descriptors are available.
Rather than using simple feature vector models, our work differs from existing
approaches by taking advantage of the deeper semantic knowledge in an existing
ontology for generating recommendations.
      </p>
      <p>
        Many recommender systems suffer from the cold-start problem of handling
new items or new users. Hybrid recommenders [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] combine semantic or
contentknowledge with collaborative filtering to deal with this problem.
Knowledgebased recommender systems use knowledge about users and products to pursue
a knowledge-based approach to generating a recommendation, reasoning about
what products meet the user’s requirements [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Our work can be described as
a knowledge-based collaborative hybrid.
      </p>
      <p>
        The availability of large product taxonomies such as Amazon.com and Open
Directory Project has allowed researchers to incorporate semantic information
into recommender systems [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. In order to address rating sparsity, Ziegler et
al. [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] classify products by topics based on taxonomic information. Cho and
Kim [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] have utilized a product taxonomy to overcome scalability issues. In [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ],
spreading activation techniques are used to find related concepts in the ontology
given an initial set of concepts and corresponding initial activation values.
      </p>
      <p>
        In our approach, the hierarchical structure of an underlying ontology is used
explicitly and automatically in the learning and incremental updating of user
profiles. There has been little work in the area of ontological user modeling
and even less in the application of such models to Web personalization [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ].
Our research follows the lead of other systems [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] that use ontologies to
mediate information access, but these systems have generally not incorporated user
modeling.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Augmenting Collaborative Recommendation</title>
      <p>
        We take the goal of the recommender system to be the presentation of
personalized recommendations for a particular target user. To accomplish this task,
there are three broad categories of knowledge that may come into play: social,
individual, and content knowledge [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. Social knowledge covers what we know
about the large community of users other than the target user, whereas
individual knowledge refers to what we know about the target user. Content knowledge
encapsulates domain knowledge about the items being recommended.
      </p>
      <p>Recommender systems based on collaborative filtering utilize explicit or
implicit ratings collected from a population of users. The standard k-Nearest
Neighbor (kNN) algorithm operates by selecting the k most similar users to the target
user, and formulates a prediction by combining the preferences of these users.
Without the advantage of deeper domain knowledge, collaborative filtering
models are limited in their ability to reason about the relationships between item
features and about the underlying factors contributing to the final
recommendations.</p>
      <p>
        Our goal is to augment collaborative filtering by incorporating domain
knowledge in the form of an ontology to enhance personalized recommendations. The
ability to learn from user interaction is a critical factor for a good recommender
system. In our ontology-based user model, the user behavior is represented not
as entries in a uniform vector, but as annotations to an ontology. We refer to
this structure as the ontological user profile. In our previous work [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ],
ontological user profiles are utilized for Web search personalization based on individual
users’ interests. In this paper, we focus on a collaborative approach for
ontologybased recommendation.
      </p>
      <p>We maintain and update the ontological user profiles based on the user
behavior and on-going interaction. For example, when Steve buys a book on
programming in Python, the user profile associates this fact with the Python
programming language concept via an annotation, and may activate other nearby
concepts such as the Perl programming language. The system would not, for
example, activate nodes associated with snakes or with British comedy troupes,
although these have a syntactic relationship to the word “python”. We utilize
profile normalization so that the relative importance of concepts in the profile
reflect the changing interests and varied information contexts of the user.</p>
      <p>
        An ontological approach to user profiling has proven to be successful in
addressing the cold-start problem in recommender systems where no initial
information is available early on upon which to base recommendations [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. Using
ontologies as the basis of the profile allows the initial user behavior to be matched
with existing concepts in the domain ontology and relationships between these
concepts. Therefore, our approach strengthens the knowledge sources discussed
above by providing an enriched representation of social and individual
knowledge. Rather than developing the domain ontology ourselves, we rely on existing
hierarchical taxonomies such as Amazon.com’s Book Taxonomy.
      </p>
      <p>
        Since collaborative filtering is based on the ratings of the neighbors who
have similar preferences, it is very important to select the neighbors properly
to improve the quality of the recommendations. Rather than computing user
similarity on the whole set of items, we use a completely novel approach where
the similarity among users is computed based on the users’ level of interest for
each concept. We compare the ontological user profiles for each user to form
semantic neighborhoods. Because the number of items is often very large and so
is the diversity among items, users who have similar preferences in one category
may have totally different judgments on items of another kind [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. Our approach
allows us to take advantage of the deeper semantic knowledge in the domain
ontology when selecting neighbors based on the interest level for each concept
in the user profiles.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Ontology-Based Personalized Recommendation</title>
      <p>For our purposes, an ontology is simply a hierarchy of topics, where the topics
can be used to classify items being recommended. There is one main ontology on
which all user profiles are based – we call this the reference ontology. An
ontological user profile is a set of nodes from the reference ontology, each annotated
with an interest score, which represent the degree of interest that the user has
expressed in that topic or concept. Each node in the ontological user profile is
a pair, hCj , IS(Cj )i, where Cj is a concept in the ontology and IS(Cj ) is the
interest score annotation for that concept. Whenever the system acquires new
evidence about user interests, such as purchases, page views, or explicit ratings,
the user profile is updated with new interest scores.</p>
      <p>The hierarchical relationship among the concepts is taken into consideration
for maintaining the ontological user profiles as we update the annotations for
existing concepts. Each concept in the user profile is annotated with an interest
score which has an initial value of one. As the user interacts with the system (i.e.
rating a new book), the ontological user profile is updated and the annotations
for existing concepts are modified. As a result, the profiles are maintained and
updated incrementally based on the user’s ongoing behavior.
4.1</p>
      <sec id="sec-4-1">
        <title>Learning Profiles by Spreading Activation</title>
        <p>We use Spreading Activation to incrementally update the interest score of the
concepts in the user profiles. In our current implementation, the users’ item
based ratings are utilized to propagate interest scores in the user profiles. The
process of learning an ontological user profile is depicted in Figure 1 using a
portion of the ontology as an example.</p>
        <p>We use a very specific configuration of spreading activation, depicted in
Algorithm 1, for the sole purpose of maintaining interest scores within a user profile.
The ontological user profile is treated as the semantic network and the interest
scores are updated based on activation values. The algorithm has an initial set
of concepts from the ontological user profile. The main idea is to activate other
concepts following a set of weighted relations during propagation and at the end
obtain a set of concepts and their respective activations.</p>
        <p>As any given concept propagates its activation to its neighbors, the weight
of the relation between the origin concept and the destination concept plays an
important role in the amount of activation that is passed through the network.
Thus, a one-time computation of the weights for the relations in the network
is needed. Since the nodes are organized into a concept hierarchy derived from
the domain ontology, we compute the weights for the relations between each
concept and all of its subconcepts using a measure of containment. The weight,
W eight(Cj , Cs), of the relation for concept Cj and one of its subconcepts Cs is
computed based on the number of items that are categorized under each concept.
Once the weights are computed, we normalize the weights to ensure that the total
sum of the weights of the relations between a concept and all of its subconcepts
equals to one.</p>
        <p>The algorithm is executed for each item of interest, such as a book. For each
iteration of the algorithm, the initial activation value for each concept in the
user profile is reset to zero. The concepts which contain the specific item are
activated and the activation value, Activation(Cj ), for each activated concept
Cj is set to the existing interest score, IS(Cj ), for that specific concept. If there
is no interest information available for a given concept, then IS(Cj ) equals to
one. The concept with the highest activation value gets removed from the queue
after propagating its activation to its neighbors. The amount of activation that
is propagated to each neighbor is proportional to the weight of the relation. The
neighboring concepts which are activated and are not currently in the priority
queue are added to queue, which is then reordered. The process repeats itself
until there are no further concepts to be processed. For a given spreading concept,
we can ensure the algorithm processes each edge only once by iterating over the
linked concepts only one time. The order of the iteration over the linked concepts
does not affect the results of activation. The linked concepts that are activated
are added to the existing priority queue, which is then sorted with respect to
activation values.</p>
        <p>After spreading activation, the interest scores in the profile are normalized.
First the resulting activation values are added to the existing interest scores.
The interest scores for all concepts are then treated as a vector, which is
normalized to a unit length using a pre-defined constant, k, as the length of the
vector. The effect of normalization is to prevent the interest scores from
continuously escalating throughout the network. As the user expresses interests in one
set of concepts, the scores for other concepts may decrease. For the long-term
maintenance, the concepts in the ontological user profile are updated with the
normalized interest scores.
4.2</p>
      </sec>
      <sec id="sec-4-2">
        <title>Semantic Neighborhoods and Prediction Computation</title>
        <p>In standard collaborative filtering, the similarity between the target user, u,
and a neighbor, v, is calculated by the Pearson’s correlation coefficient. Our
alternative similarity metric uses the interest scores of these users’ corresponding
ontological profiles. First, we turn the ontological user profiles into flat vectors
of interest scores over the space of concepts. We then compare the user profiles
to figure out how distant each user’s profile is from all other users’ profiles.
The distance between the target user, u, and a neighbor, v, is calculated by the
Euclidean distance formula defined below:
distanceu,v = sX (IS(Cj,u)−IS(Cj,v ))2</p>
        <p>j∈C
where C is the set of all concepts in the reference ontology, IS(Cj,u) and IS(Cj,v)
are the interest scores for concept Cj for the target user u and neighbor v,
respectively. Once all distances have been computed, we normalize the distance
between the target user u and a neighbor v, then calculate a similarity value
based on the inverse of the normalized distance.</p>
        <p>The most similar k users are selected to generate the semantic neighborhoods.
To further improve the quality of the neighborhoods, we use a concept-based
filtering for the neighbors where a neighbor is included in the final prediction
algorithm only if that neighbor’s interest score for the specific concept is greater
than their mean interest scores in their user profile. Our resulting semantic
neighborhoods are not only based on similar users’ explicit ratings for an item,
but also based on the degree of interest those users have shown for the topic of
a given item.</p>
        <p>
          The ability to generate good recommendations relies heavily on the accurate
prediction of a user’s rating for an item they have not seen before. Our prediction
algorithm uses a variation of Resnick’s standard prediction formula [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] defined
below:
        </p>
        <sec id="sec-4-2-1">
          <title>P simu,v ∗ (rv,i−r¯v)</title>
          <p>pu,i = r¯u + v∈V</p>
        </sec>
        <sec id="sec-4-2-2">
          <title>P simu,v</title>
          <p>v∈V
,
where r¯u is the mean rating for the target user, V is the set of k similar users,
r¯v is the mean rating for a neighbor, simu,v is the similarity described above.</p>
          <p>We utilize the semantic evidence in the ontology for computing the mean
rating for a user. For the mean rating of a target user or one of its neighbors, r¯u
and r¯v respectively, we maintain two different values including the user’s overall
mean rating and user’s concept-based mean rating. If an item belongs to only
one concept, the user’s concept-based mean rating is the user’s average rating for
all books that belong to that specific concept. In the case where a book belongs
to multiple concepts, the concept-based mean rating becomes the user’s average
rating for all books that belong to these concepts. If the user’s concept-based
mean rating does not exist, the prediction formula uses the user’s overall mean
rating. Otherwise, the user’s concept-based mean rating is used.
5</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Experimental Evaluation</title>
      <p>
        In the research community, the performance of a recommender system is mainly
measured based on its accuracy with respect to predicting whether a user will like
a certain item or not [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. Our experimental evaluation focuses on comparing
the quality of the recommendations based on our ontological approach versus
standard collaborative filtering.
5.1
      </p>
      <sec id="sec-5-1">
        <title>Experimental Data Sets and Metrics</title>
        <p>
          Our data set consists of a subset of the book ratings that were collected by
Ziegler in a 4-week crawl from the Book-Crossing community[
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]. For each
distinct ISBN, a unique identifier for the books in the dataset, we mined
Amazon.com’s Book Taxonomy and collected the category, title, URL, and editorial
reviews for the specific book. Our resulting reference ontology includes 4,093
concepts and a total of 75,646 distinct books that are categorized under various
concepts.
        </p>
        <p>Only the explicit ratings, expressed on a scale from 1-10, are taken into
account in our experiments. Our data set includes 72,582 book ratings belonging
to those users with 20 or more ratings. The data set was converted into a
useritem matrix that had 1,110 rows (i.e. users) and 27,489 columns (i.e. books). For
evaluation purposes, we used 5-Fold cross-validation. For each fold, 80% of the
book ratings were included in the training set, which was utilized to compute
similarity among users. The remaining 20% of the book ratings were included
in the test set, which was used for predicting ratings. The advantage of K-Fold
cross-validation is that all the examples in the dataset are eventually used for
both training and testing.</p>
        <p>To measure prediction accuracy, we rely on a commonly used metric Mean
Absolute Error (MAE), which measures the average absolute deviation between
a predicted rating and the user’s true rating: M AE = P |puN,i−ru,i| , where N
is the total number of ratings over all users, pu,i is the predicted rating for
user u on item i, and ru,i is the actual rating. The lower the MAE, the more
accurately a recommender systems predicts user ratings. One main advantage of
MAE is that it is a statistical metric which allows for testing the significance of a
difference between the mean absolute errors of two systems. For our second type
of evaluation, we generate a list of Top-N recommendations for each user. We
compare the recommendations to the user’s actual preferences and consider each
match a hit. We use a Hit Ratio metric to compare our approach to standard
collaborative filtering.
5.2</p>
      </sec>
      <sec id="sec-5-2">
        <title>Experimental Methodology and Results</title>
        <p>The first step in our experimental evaluation was to compute user-to-user
similarity for the standard kNN algorithm using the Pearson’s correlation based
on the training data. Next, we used the books in the training set to generate
ontological user profiles. Each user started out with an ontological user profile
where all interest scores were initialized to one, this simulates a situation where
no initial user interest information is available. For each book that was rated
by a user, we performed our spreading activation algorithm to update interest
scores in the ontological user profile for that specific user. In order to ensure the
interest in the profiles is propagated based on strong positive evidence, only the
items with ratings that were equal to or greater than the user’s overall average
rating were utilized for spreading activation. After an ontological user profile
was created for each user based on their ratings, we utilized our semantic
neighborhood generation approach explained above to compute the similarity among
user profiles.</p>
        <p>We calculated the MAE across the predicted ratings produced by each
algorithm. For both the standard kNN and our ontological approach, the most
similar k users were selected to compute the prediction for each item in the test
set.</p>
        <p>To generate a recommendation list for a specific user, we computed a
predicted rating for all items that were rated by that user’s neighbors, excluding the
items that were rated by the user. With this type of an evaluation, the goal is
to generate recommendations that the user has not seen before. The
recommendation list was sorted in descending order with respect to the predicted rating
for each item. Therefore, items with higher predicted ratings are included in the
Top-N recommendations. We compared the recommendation list to the user’s
actual ratings for items in the test set.</p>
        <p>We ran our experiments for different values for the neighborhood size k,
ranging from 20 to 200. For each value of k, the MAE was lower for predictions using
our ontological approach than the MAE across the predictions generated with
the standard kNN algorithm. Our ontological approach also provides much
better coverage, which is a measure for the percentage of items that a recommender
system can provide predictions for. As depicted in Table 1, we computed three
Algorithm Overall Ratings Actual Ratings Default Ratings Coverage
Standard kNN 1.139 1.245 1.049 45.9%</p>
        <p>Ontological kNN 1.112 1.197 1.025 50.6%
different MAE values for each algorithm using overall ratings, actual ratings,
and default ratings. The MAE across actual ratings takes into account only
those ratings where an actual predicted rating can be made based on the
ratings of neighbors as opposed to the predicted ratings based on the user’s default
rating due to lack of ratings from neighbors.</p>
        <p>(a) Mean Absolute Error
(b) Hit Ratio</p>
        <p>
          Inspecting the MAE across the actual predicted ratings separately than the
default ratings is important in order to effectively compare the different
algorithms presented in this paper. In [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ], the authors explore the importance of
the influence of neighbors in collaborative filtering and present their finding on
three commonly used, large-scale, real-world datasets including MovieLens,
NetFlix, and BookCrossing. Due to the high sparsity of the Book-Crossing dataset,
user-based collaborative filtering performs particularly poorly, with only 53% of
neighborhood estimates actually contributing to better quality predictions than
chance [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ]. One additional advantage of our approach is that we are able to
improve the predicted ratings based on the user’s default rating since we use
a concept-based mean as opposed to taking the user’s average across all of the
items rated by that user.
        </p>
        <p>The comparative results with the MAE values across actual predicted ratings
for k = 200 are depicted in Figure 2(a). The MAE values were confirmed to be
significantly different using the ANOVA significance test with a 99% confidence
interval, p-Value = 6.9E-11. Thus, we can confidently conclude that the
prediction accuracy using our ontological approach is higher than the prediction
accuracy of the standard kNN algorithm.</p>
        <p>Next, we present our Hit Ratio results to compare standard kNN with our
ontological approach in terms of Top-N Recommendation. The Hit Ratio is
computed by determining whether a hit exists within the top N items in the list for
each value of N, where N = 1 through N = 20. With this approach, the Hit
Ratio is either 0 or 1 for each value of N for each user. We then take an average
across all users in our data set. The recommendation lists for each user were
sorted in descending order with respect to the predicted rating for each item.
For each algorithm, the Hit Ratio results were based on the predicted ratings
using a neighborhood size of k = 200. As depicted in Figure 2(b), the Hit Ratio
for ontological kNN is significantly improved over standard kNN. These results
further validate that our ontological approach performs better as a recommender
system.
6</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Conclusions and Outlook</title>
      <p>We have presented our approach to collaborative recommendation that
effectively incorporates semantic knowledge from ontologies with collaborative user
preference information. Our approach not only outperforms traditional
collaborative filtering in prediction accuracy but also offers improvements in coverage.
Although accuracy metrics are important, in order to fully satisfy a user’s
recommendation needs, other measures such as diversity of recommendation lists
and uniqueness of recommended items must be considered. In our future work,
we plan to further evaluate the advantages of our ontological approach in terms
of coverage, diversity, personalization, and cold-start performance.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Adomavicius</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tuzhilin</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Toward 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>
          <volume>17</volume>
          (
          <issue>6</issue>
          ) (
          <year>2005</year>
          )
          <fpage>734</fpage>
          -
          <lpage>749</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Schafer</surname>
            ,
            <given-names>J.B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Frankowski</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Herlocker</surname>
            ,
            <given-names>J.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sen</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>Collaborative filtering recommender systems</article-title>
          . In Brusilovsky, P.,
          <string-name>
            <surname>Kobsa</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nejdl</surname>
          </string-name>
          , W., eds.:
          <source>The Adaptive Web: Methods and Strategies of Web Personalization. Volume 4321 of Lecture Notes in Computer Science</source>
          . Springer-Verlag, Berlin Heidelberg New York (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Breese</surname>
            ,
            <given-names>J.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Heckerman</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kadie</surname>
            ,
            <given-names>C.</given-names>
          </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>
          , San Francisco, CA (
          <year>1998</year>
          )
          <fpage>43</fpage>
          -
          <lpage>52</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Resnick</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Iacovou</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Suchak</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bergstrom</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Riedl</surname>
          </string-name>
          , J.:
          <article-title>Grouplens: An open architecture for collaborative filtering of netnews</article-title>
          .
          <source>In: Proceedings of the 1994 ACM conference on Computer supported cooperative work</source>
          ,
          <source>CSCW</source>
          <year>1994</year>
          , New York, NY (
          <year>2004</year>
          )
          <fpage>175</fpage>
          -
          <lpage>186</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Herlocker</surname>
            ,
            <given-names>J.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Konstan</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Borchers</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Riedl</surname>
            ,
            <given-names>J.:</given-names>
          </string-name>
          <article-title>An algorithmic framework for performing collaborative filtering</article-title>
          .
          <source>In: Proceedings of the 22nd ACM Conference on Research and Development in Information Retrieval</source>
          ,
          <string-name>
            <surname>SIGIR</surname>
          </string-name>
          <year>1999</year>
          , Berkeley, CA (
          <year>August 1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Sarwar</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Karypis</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Konstan</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Riedl</surname>
          </string-name>
          , J.:
          <article-title>Item-based collaborative filtering recommendation algorithms</article-title>
          .
          <source>In: Proceedings of the 10th international conference on World Wide Web, WWW '01</source>
          , New York, NY (
          <year>2001</year>
          )
          <fpage>285</fpage>
          -
          <lpage>295</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Mooney</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roy</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Content-based book recommending using learning for text categorization</article-title>
          .
          <source>In: Proceedings of the fifth ACM conference on Digital libraries, DL</source>
          <year>2000</year>
          , New York, NY (
          <year>2000</year>
          )
          <fpage>195</fpage>
          -
          <lpage>204</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Burke</surname>
          </string-name>
          , R.:
          <article-title>Hybrid web recommender systems</article-title>
          . In Brusilovsky, P.,
          <string-name>
            <surname>Kobsa</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nejdl</surname>
          </string-name>
          , W., eds.:
          <source>The Adaptive Web: Methods and Strategies of Web Personalization. Volume 4321 of Lecture Notes in Computer Science</source>
          . Springer-Verlag, Berlin Heidelberg New York (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Burke</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          :
          <article-title>Knowledge-based recommender systems</article-title>
          . In Kent, A., ed.:
          <source>Encyclopedia of Library and Information Systems</source>
          . Volume
          <volume>69</volume>
          .
          <string-name>
            <surname>Marcel Dekker</surname>
          </string-name>
          (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Middleton</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shadbolt</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roure</surname>
          </string-name>
          , D.C.D.:
          <article-title>Ontological user profiling in recommender systems</article-title>
          .
          <source>ACM Transactions on Information Systems</source>
          <volume>22</volume>
          (
          <issue>1</issue>
          ) (
          <year>2004</year>
          )
          <fpage>54</fpage>
          -
          <lpage>88</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Ziegler</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McNee</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Konstan</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lausen</surname>
          </string-name>
          , G.:
          <article-title>Improving recommendation lists through topic diversification</article-title>
          .
          <source>In: Proceedings of the 14th international conference on World Wide Web, WWW</source>
          <year>2005</year>
          , Chiba, Japan (May
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Cho</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kim</surname>
          </string-name>
          , J.:
          <article-title>Application of web usage mining and product taxonomy to collaborative recommendations in e-commerce</article-title>
          .
          <source>Expert Systems with Applications</source>
          <volume>26</volume>
          (
          <issue>2</issue>
          ) (
          <year>2004</year>
          )
          <fpage>233</fpage>
          -
          <lpage>246</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Rocha</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schwabe</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Aragao</surname>
            ,
            <given-names>M.P.:</given-names>
          </string-name>
          <article-title>A hybrid approach for searching in the semantic web</article-title>
          .
          <source>In: Proceedings of the 13th international conference on World Wide Web, WWW</source>
          <year>2004</year>
          , New York, NY, USA (
          <year>2004</year>
          )
          <fpage>374</fpage>
          -
          <lpage>383</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Gauch</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Speretta</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chandramouli</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Micarelli</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>User profiles for personalized information access</article-title>
          .
          <source>In: The adaptive web, LNCS</source>
          <volume>4321</volume>
          .
          <article-title>(</article-title>
          <year>2007</year>
          )
          <fpage>54</fpage>
          -
          <lpage>89</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Gauch</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chaffee</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pretschner</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Ontology-based personalized search and browsing</article-title>
          .
          <source>Web Intelligence and Agent Systems</source>
          <volume>1</volume>
          (
          <issue>3</issue>
          -4) (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Burke</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ramezani</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Matching recommendation domains and technologies</article-title>
          . In Kantor, P.,
          <string-name>
            <surname>Ricci</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rokach</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shapira</surname>
          </string-name>
          , B., eds.:
          <source>Handbook of Recommender Systems</source>
          , to appear. Springer (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Sieg</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mobasher</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Burke</surname>
          </string-name>
          , R.:
          <article-title>Web search personalization with ontological user profiles</article-title>
          .
          <source>In: ACM Sixteenth Conference on Information and Knowledge Management</source>
          ,
          <string-name>
            <surname>CIKM</surname>
          </string-name>
          <year>2007</year>
          , Lisbon, Portugal (November
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Middleton</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shadbolt</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roure</surname>
          </string-name>
          , D.D.:
          <article-title>Capturing interest through inference and visualization: Ontological user profiling in recommender systems</article-title>
          .
          <source>In: Proceedings of the International Conference on Knowledge Capture, K-CAP</source>
          <year>2003</year>
          ,
          <string-name>
            <given-names>Sanibel</given-names>
            <surname>Island</surname>
          </string-name>
          ,
          <source>Florida (October</source>
          <year>2003</year>
          )
          <fpage>62</fpage>
          -
          <lpage>69</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Truong</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ishikawa</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Honiden</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Improving accuracy of recommender system by item clustering</article-title>
          .
          <source>IEICE - Transactions on Information and Systems E90-D(9)</source>
          (
          <year>2007</year>
          )
          <fpage>1363</fpage>
          -
          <lpage>1373</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Herlocker</surname>
            ,
            <given-names>J.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Konstan</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Terveen</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Riedl</surname>
          </string-name>
          , J.:
          <article-title>Evaluating collaborative filtering recommender systems</article-title>
          .
          <source>ACM Transactions on Information Systems</source>
          <volume>22</volume>
          (
          <issue>1</issue>
          ) (
          <year>2004</year>
          )
          <fpage>5</fpage>
          -
          <lpage>53</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Rafter</surname>
            , R.,
            <given-names>O</given-names>
          </string-name>
          <string-name>
            <surname>'Mahony</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hurley</surname>
            ,
            <given-names>N.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Smyth</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>What have the neighbours ever done for us? a collaborative filtering perspective</article-title>
          .
          <source>In: Proceedings of the 17th International Conference on User Modeling</source>
          , Adaptation, and Personalization,
          <string-name>
            <surname>UMAP</surname>
          </string-name>
          <year>2009</year>
          , Trento, Italy (
          <year>2009</year>
          )
          <fpage>355</fpage>
          -
          <lpage>360</lpage>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>