posed system and its implementation while Section 5
concludes the paper.
2 BACKGROUND
2.1 Recommender Systems
Recommender Systems (RS) are software tools and
techniques providing suggestions for items to be of
use to a user. The suggestions relate to various deci-
sion-making processes, such as what items to buy,
what music to listen to, or what online news to read
(Ricci et al., 2011). (Burke, 2007) provides a good
taxonomy for distinguishing between recommender
systems. Recommender Systems can be categorized
in the following classes: content-based, collabora-
tive filtering, demographic, knowledge-based, com-
munity-based, and hybrid recommender systems.
In content-based RS, the system learns to rec-
ommend items that are similar to the ones that the
user liked in the past. The similarity of items is cal-
culated based on the features associated with the
compared items. Content-based RS can be even
found in early standard literature as in (Balabanovic
and Shoham, 1997).
Collaborative filtering RS are also called "peo-
ple-to-people correlation". In their simplest form,
implementations of this approach recommend to the
active user the items that other users with similar
tastes liked in the past (Schafer et al., 2007). The
similarity in taste of two users is calculated based on
the similarity in the rating history of the users.
Demographic RS recommend items based on the
demographic profile of the user. Many web sites
dispatch their users to particular pages based on their
language or country. Other criteria include age, gen-
der, etc., if this information is collected in the user
profile.
Knowledge-based RS recommend items based on
specific domain knowledge about how certain item
features meet users needs and preferences. Notable
knowledge based recommender systems are con-
straint based or case-based (Bridge, 2006). In these
systems, a similarity function estimates the matching
degree of the recommendations to the user needs.
Here the similarity score can be directly interpreted
as the utility of the recommendation for the user.
Community-based RS recommend items based
on the preferences of the user friends. The emer-
gence of social networks, such as Facebook, gave
rise to this type of systems. Social networks contain
billions of records holding user behavioral patterns
and combining them with a mapping of their social
relationships.
Hybrid RS are based on the combination of the
above mentioned techniques. Collaborative filtering
methods suffer from new item problems, i.e., they
cannot recommend items that have no ratings. This
does not limit content-based approaches since the
prediction for new items is based on their descrip-
tion (features) that are typically available. Given two
(or more) basic RS techniques, several ways have
been proposed for combining them to create a new
hybrid system. Four different recommendation tech-
niques and seven different hybridization strategies
are compared in (Burke, 2007).
2.1.1 Complementary Role of Information
Retrieval
Information Retrieval (IR) assists users in storing
and searching various forms of content, such as text,
images and videos (Manning, 2008). IR generally
focuses on developing global retrieval techniques,
often neglecting the individual needs and prefer-
ences of users.
Nevertheless, both IR and RS are faced with sim-
ilar filtering and ranking problems. That's why at the
heart of RS usually lies a search engine, such as the
open source Lucene (Hatcher and Gospodnetic,
2004). Queries submitted to the search engine are
enriched with RS-relevant attributes collected by the
RS and associated to the resultset.
Nowadays, various search engines also apply
some form of personalization by generating results
to a user query that are not only relevant to the query
terms but are also tailored to the user context (e.g.,
location, language), and his/her search history.
Clearly, both RS and IR will eventually converge to
one intelligent user assistant agent.
2.1.2 Complementary Role of Taxonomies
and Ontologies
Taxonomy is a hierarchical grouping of entities.
Ontologies are a machine readable set of definitions
that create a taxonomy of classes and subclasses and
relationships between them (Deng and Peng, 2006).
Both taxonomies and ontologies are used to en-
hance the quality of results suggested by RS. The RS
can use the taxonomy structures and ontology to
refine the filtering and adjust the ranking of the re-
sults sent by the IR internal component. Since most
of our knowledge is not hierarchical, it is intuitive to
assume that an ontology-based approach would lead
to better results. Yet, there is an overhead in defining
ontologies by the user and creating a match for the
nodes of different ontologies in case of peer-based
KEOD2012-InternationalConferenceonKnowledgeEngineeringandOntologyDevelopment
6