<!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>Driver Recommendations of POIs using a Semantic Content-based Approach</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Toyota InfoTechnology Center</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>U.S.A. Mountain View</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>rparundekar</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>koguchi}@us.toyota-itc.com</string-name>
        </contrib>
      </contrib-group>
      <abstract>
        <p>In this paper, we present a semantic content-based approach that is employed to study driver preferences for Points of Interest (POIs), e.g. banks, grocery stores, etc., and provide recommendations for new POIs. Initially, logs about the places that the driver visits are collected from the cloud-connected navigation application running in the car. Data about the visited places is gathered from multiple sources and represented semantically in RDF by `lifting' it. This semantic data is then combined with driver context and then input into a machine learning algorithm that produces a probabilistic model of the driver's preferences of POIs. When the driver searches for POIs in an unknown area, this preference model is used to recommend places that he is most likely to prefer using a nearest-neighbor approach. In this paper, we describe the details of this content-based approach for recommendation, along with the results of a user study that was conducted to evaluate the approach.</p>
      </abstract>
      <kwd-group>
        <kwd>Semantic Web</kwd>
        <kwd>Recommendations</kwd>
        <kwd>Preference Modeling</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>In deploying connected services to the car, it is important that driver safety is
given a high priority. To reduce possible distractions in accessing information,
the in-vehicle navigation system enforces restrictions on the way information is
presented to the driver. One such constraint is that the number of items that
can be displayed in a list on a single screen is xed to a limited number of slots.
When the driver searches for banks in the car, for example, the search results
are displayed as a list lled in the available slots. If the number of search results
exceeds the number of slots, then the extra results are pushed to the next page.
Accordingly, there arises a need for presenting the most relevant information
to the driver in those slots. We model this, as a recommendation problem of
providing personalized, contextualized information to the driver. In particular,
this paper discusses the recommendation of Points of Interest (POIs), e.g. banks,
grocery stores, etc., in the car using a combination of semantic technologies and
a recommendation system.</p>
      <p>
        In our previous paper on Learning Driver Preferences of POIs using a
Semantic Web Knowledge System[
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], we presented the architecture and components of
a semantic system that is able to model the driver's preferences. In this paper, we
present details of the recommendation aspect of the work including the reasons
for the selection of a content-based approach, the details of the nearest-neighbor
recommendation method and the results of a user study that was conducted
earlier this year. Using the history of Points of Interests (POIs) that the driver
visits, we can build a model of the places he/she (henceforth referred to as he)
is more likely to prefer. For example, the driver may have certain preferences
for banks. Based on the ones he has visited in the past, we try to build a
preference model that can be used to determine his a nity for a bank he has not
visited before. The next time he is searching for a bank in an unfamiliar place,
his preference model is used to recommend him one from the banks around him.
      </p>
      <p>The paper is organized as follows. We rst provide a detailed explanation of
the recommendation task and describe the reasons for the selection of a
contentbased approach. We then describe how we learn the driver preferences. This is
followed by an explanation of how the learned model is used in the
recommendation of POIs. We also brie y describe the underlying system, which uses semantic
technologies in the data representation and services, called the Semantic User
Preference Engine or Supe. This is followed by a description of the user study
that was conducted using an implementation of Supe, and its results. We also
include relevant work in the Semantic Web and recommendation literature, for
modeling user preferences and recommendations. Lastly, we conclude by
summarizing our ndings along with future work.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Using a Content-based Approach for Recommendation</title>
      <p>The selection of the algorithm for POI recommendation in the car is largely based
on two issues: the nature of the data available and desired recommendation to be
produced. In the rst case, data comes from the usage history of the navigation
application in the vehicle. The user can select a place to navigate to in three
ways, as can be seen in Fig. 1: (1.a) driver chooses a POI from the head-unit;
(1.b) user selects a POI from a suite of installed applications on his
smartphone or (1.c) user pre-selects a POI from his desktop/browser application and
`sends' the POI over the Cloud to the navigation application running in the car.
The selected POIs from these connected devices can be tracked on the Server
running in the Cloud before sending it to the navigation application. As we can
only track places that the driver has visited, which we assume he likes, we only
have positive training examples. For the second issue, we want to try to provide
a recommendation that answers the question, `Which POIs among the ones
available around the driver is he most likely to prefer?', when the user searches
for POIs. Accordingly, the recommender system should be able to choose the
place most likely to be preferred by the user from a set of candidate places
returned by the database.</p>
      <p>
        Recommender systems are popularly classi ed into Collaborative Filtering,
Content-based approaches or a mixture thereof[
        <xref ref-type="bibr" rid="ref1 ref2">2, 1</xref>
        ]. Common issues with the
Collaborative Filtering algorithms are the new user problem, new item problem
and the sparsity problem. Out of the three, data sparsity is the biggest possible
      </p>
      <p>BEFORE  
Tracking  Preferred  POIs  and  
Building  Preference  Model  </p>
      <p>AFTER  
PresenDng  Personalized  Results  
when  User  Requests  a  POI  Search  
1.a)th Uese Nra sveigleacDtso na  PUOniIt f rom 
2)  DesDnaDon sent  to   </p>
      <p>NavigaDon Unit  
1.b)  Select  place  from  suite  
of  installed  applicaDons  
1.c) “Send” POI to car 
from desktop / browser 
applicaDon </p>
      <p>Supe  
BEFORE:  Learn  the  user’s  </p>
      <p>Preference  Model  
AFTER:  Use  the  Preference    
Model  for  Recommending  </p>
      <p>
        POIs  
1)  Request  for  POI  Search  
e.g.  “search  banks”  
2)  Result  sorted  by  
esDmated  preference  
(Preferred  list  of  banks)  
reason of failure of recommendation in the dataset. As an example, consider a
person who lives in San Jose, CA. The places that he visits frequently in his
neighborhood - e.g. his bank, grocery store, etc., along with history of others
in his neighborhood become part of the training dataset. When the user travels
to a remote place - e.g. Livermore, CA (about 40 miles away) and wants to
search for a bank, it is highly unlikely that there would be another set of users
who go to the same bank as the user in San Jose and might have visited a
bank in that particular neighborhood in Livermore. Contextual information is
also important in providing relevant recommendations. Though Collaborative
Filtering techniques that include context by introducing new dimensions apart
from the traditional two -Users and Items - have been studied[
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], they su er from
worse data sparsity problems despite optimizations for computational overhead.
      </p>
      <p>
        In contrast, a content-based approach seems more intuitive. In the rst
example, the user might prefer a certain banking chain, which has a branch in
his neighborhood and he would prefer a local branch when he is searching for
ATMs in Oakland. In case of gas stations, he may have a preference for cheaper
gasoline. A single Collaborative Filtering approach would be insu cient for
recommending such cases, especially in the case of uctuating gas prices. Contextual
information can be appended to the POI data as extended attributes to generate
a context-speci c version of the item, which can then be used to provide
recommendations. The content-based approach for POI recommendation employed in
this paper, is similar to other recommender systems in relevant literature [
        <xref ref-type="bibr" rid="ref11 ref6">11, 6</xref>
        ]
and is described in the following sections.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Generating the Preference Model From Driver History</title>
      <p>Before we can recommend POIs to the driver, we rst need to generate a model
of his preferences. To do so, the data collected from his navigation history is
rst converted into machine learnable data. When connected devices send data
to the in-vehicle navigation application or the driver selects a destination on the
navigation system, Supe tracks the visited/consumed POIs and stores them as
driver history. The process of generation of the user's preference model from this
data is described below. Fig. 2 shows the steps involved in converting POI data
about a bank, visited by the driver, into machine learnable data.
hasName   hasLoca+on   hasDistance   hasDrive   hasAverage   CLASS  </p>
      <p>FromWork   ThruATM   Ra+ng  
142   FALSE   3.7  </p>
      <p>preferred  
rdf:type=bank  
hasName=“Bank  of  America”  </p>
      <p>hasAverageRa7ng=4.5  
BofA_94086  </p>
      <p>hasDistanceFromWork  
hasLoca7on                                        =2535m  
_:x   hasDriveThruATM  </p>
      <p>                                     =TRUE  
hasCity=“Sunnyvale”  </p>
      <p>hasAddress=“123  Murphy  St.”  
c) Instance Molecule with Added User Context</p>
      <p>CONVERSION TO MACHINE</p>
      <p>LEARNABLE DATA
2535   TRUE  
hasAddress  </p>
      <p>4.5  
hasCity  </p>
      <p>preferred  </p>
      <p>CLASS  
43  Murphy  St.  
123  Murphy  St.  </p>
      <p>Sunnyvale   preferred  
Sunnyvale   preferred  
rdf:type=bank  </p>
      <p>BofA_94086  
hasLoca7on  
_:x   hasDriveThruATM  </p>
      <p>                                     =TRUE  
hasCity=“Sunnyvale”  </p>
      <p>hasAddress=“123  Murphy  St.”  
b) Instance Molecule for Bank of America
hasName=“Bank  of  America”  
hasAverageRa7ng=4.5  </p>
      <p>ADDING</p>
      <p>CONTEXT</p>
      <p>LIFTING
{  
     name:  “Bank  of  America”,  
     yelp_id:  “BofA_94086”,  
     category:  “bank”,  
     loca@on:{  
               address:  “123  Murphy  St.”,   Bank  of  
               city:  “Sunnyvale”   America  
     }  
     hasDriveThruATM:  “yes”,  
     ra@ng:  4.5  
}  </p>
      <p>XYZ  Credit  </p>
      <p>Union  
a) Business Data JSON Returned by Yelp API</p>
      <p>
        d) Bank Table with Training Instances for Classifier
Fetching RDF data for the Visited POIs: Data for the POIs, which were
collected as driver history, is retrieved from multiple sources like a POI database
or Web Services (by searching for the POI using information like its name,
location, address, etc.). For example, the JSON response from a Web Service
(e.g. Yelp API) for the \Bank of America" branch, which the user visited, is
shown in Fig. 2 (a). As each of these sources might have di erent schemas, it
is necessary to integrate this information together into a common vocabulary.
At the heart of Supe is a Places Ontology (see Fig. 3). The ontology de nes
a concept hierarchy of places along with the properties associated with each
concept. Data from the di erent sources is `lifted' into this ontology and merged
together. For the \Bank of America" that the user visited, the lifting process
converts the JSON response of the Web Service into an RDF instance molecule
[
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] as shown in Fig. 2 (b). Because of the simplicity of the POI domain, the
lifting rules were determined at design time.
      </p>
      <p>Adding Context: Data from the driving history along with the driver's
personal information is then used to automatically generate context information.
The relevant triples, generated using pre-de ned rules, are then added to the
RDF instance molecule from the previous step. For example, if the user has his
home or work address stored, then the distance from home or distance from work
GroceryStore</p>
      <p>POI
Bank
hasDriveThruATM,  
       …  
hasName,  hasLoca,on ,  
hasAverageRa,ng,  …  
MovieTheatre
hasCarWash,  
…  </p>
      <p>GasStation
contexts can be added. User context hasDistanceFromWork is added to the
instance molecule in Fig. 2 (c). The user's preference model can now be trained
with the instance molecule generated.</p>
      <p>Converting the RDF Instance Molecule to Machine Learnable data:
Since we use a content-based approach for recommendation, we need to convert
RDF into a representation that machine learning algorithms can understand.
The translation of instance molecules into a table of training data, as used by
conventional machine learning algorithms, is relatively straight-forward and is
explained below. (Due to lack of space, Fig. 2 (d) only shows a representative
set of columns that can be derived from Fig. 2 (c)).
1. The Table: All instances belonging to one concept are grouped together in
a single table, e.g. banks in Fig. 2 (d).
2. Rows in the Table: Each instance molecule to be added to the preference
model translates to a row in the table. Instead of dropping the URI, as
identi ers usually do not contribute to the learned model, we add the identi er
to the table (not depicted in Fig. 2 (d)) to bias the model with a higher
preference to a previously visited place.
3. Columns in the table The attributes or property-value pairs for the
instance get translated as columns and values in the table. The properties for
which the type of the table is a domain, appear as columns. For example,
while the hasDriveThruATM is a property of Banks, the hasName property
is inherited from the parent concept POI and is also present in the table in
Fig. 2.
4. Values in the Table: RDF Literals in a column are translated as one of
string, numeric or nominal values. The relevant information for the
conversion into either of these types can be determined from the ranges of the
properties in the ontology, or speci ed explicitly during ontology
construction. For example, a value of the hasName property translates to string type,
the hasAverageRating property translates to numeric type and the
hasDriveThruATM property translates to nominal type. For values of properties
that are RDF Blank Nodes, we use nesting of tables where we track inner
values for the properties of the blank node (e.g. hasLocation property) . For
properties with URI values, we can choose to either use the lexical value
of the identi er as cell value in the table if we want to introduce bias, or
represent the instance in a nested table similar to blank nodes if the values
of its properties are important. For missing attributes, the cells in the table
are empty.
5. Class Column in the Table: Since visited places translate to only positive
training examples, all class values in the table are marked as `preferred'
Building the Preference Model: The table above, similar to the training
data used for a nave-Bayes classi er, is then used to generate a preference
model. The preference model generated is an optimized variation of the table,
containing frequency counts/mathematical functions, and helps in calculating
the likelihood probabilities. Instead of building the entire preference model from
scratch every time a new instance is added, we use an incremental approach.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Recommending POIs using a content-based approach</title>
      <p>
        In content-based recommendation systems, determining if the user likes/dislikes
a particular item is a classi cation problem [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. A variety of algorithms, like
linear regression, rule-based, probabilistic methods, etc. can be used for
determining items for recommendation. For example, a nave-Bayes approach can be
used to build a model that can classify a previously unseen POI as preferred or
not-preferred. One can determine which one of n candidate POIs is most likely
to be preferred by the user by selecting the POI with the highest (normalized)
probability of it being preferred (P (preferredjP OIi)). This item can then be
recommended to the user. Since the driver history that was collected only contains
positive training examples, most of the algorithms mentioned above cannot be
used as-is (e.g. in a nave-Bayes approach, the likelihood and evidence
probabilities cancel each other out, giving an inappropriate probability score). In
the absence of negative training examples (i.e. places that the user dislikes), we
use a nearest-neighbor approach for recommendation. Speci cally, from n
candidates, which may have been previously unseen, we recommend the item that
best matches the ones in the user's preference model. Our approach is described
below.
      </p>
      <p>Fetching Candidate POIs and Adding Context: When the user wants to
search for POIs, Supe rst retrieves candidate places that match the search
criteria from the POI Database/Web Services. Necessary user and situation context
are added to the POIs after lifting them into RDF, similar to the steps described
in Section 3. These POIs can then be scored to nd out how likely is the user to
prefer each of them.</p>
      <p>Nearest-neighbor to a hypothetical Bliss-point Our approach is inspired
from the nearest-neighbor algorithms used in clustering and classi cation.To
nd how likely is the user to prefer each POI, we rst nd out how likely is
the user to prefer its properties. Let's suppose that each candidate POI has
only two properties - name and average rating of all users. The rst candidate
POI hasName \Bank of America" and hasAverageRating of 3:5. We can calculate
the likelihood probabilities - P (hasN ame = \Bankof America"jpref erred) and
P (hasAverageRating = 3:5jpref erred) using the table from Fig. 2, similar to
the likelihood calculation in a nave-Bayes approach. We can plot this point in
a Euclidean space with the properties as the di erent axes (see Fig. 4 (a)). For
a hypothetical POI that is always preferred by the user, each of its attributes
would have the preference likelihood as 1.0. We can now plot this `bliss-point' on
the Euclidean space. We can similarly plot other candidate POIs (see Fig. 4 (b)).
The euclidean distance from the bliss-point is used for the recommendation, and
the POI that is nearest to the bliss-point is recommended to the user.
P(hasName|   (0,1)  
           preferred)  </p>
      <p>Bliss-­‐point  
(1,1)  
P(hasName|  
           preferred)   (0,1)  
P(hasName=    
“Bank  
Of  America”|  
preferred)  
Distance from Bliss-point We can easily extend the above method to an
ndimensional space. The values of the attributes in the columns in the table in
Fig. 2 (d) can either be Literals, Blank Nodes, URIs or missing. For literal values,
the likelihood probability is calculated as follows: (i) a Gaussian distribution is
used for the probabilities of numeric values (ii) a document similarity metric is
used for the probabilities of string values and (iii) symbol probability is used for
the probabilities nominal values. The distance for a property with a blank node
is calculated recursively, by rst calculating the likelihood probabilities of its
inner values, and then its distance from another hypothetical bliss-point in its
own high dimensional space. For URIs, we can use a dual strategy depending on
the nature of the property. In some cases, to bias toward previously seen values
for properties, we calculate likelihood as its probability of the occurrence of that
URI in that column. If the attributes of the corresponding instance are more
important, then the likelihood can be calculated similar to the blank node. The
distances from the bliss-point of multiple POIsneed to be normalized before they
can be compared. This is done by dividing the distance by the distance of the
origin to the bliss-point, thus taking care of missing attributes. For a multivalued
property, we take the average of the distances of all its values. As an example,
the distance from bliss-point for the Bank of America POI in Fig. 2 (d), would
be calculated as follows.</p>
      <p>v
u
u
u
D(Bof A 94086) = uu +(1
u
t
(1</p>
      <sec id="sec-4-1">
        <title>P (\Bank of America" j pref erred))2</title>
        <p>P (2353 j pref erred))2 + (1</p>
      </sec>
      <sec id="sec-4-2">
        <title>P (T RU E j pref erred))2</title>
        <p>+(1</p>
        <p>P (4:5 j pref erred))2 + D( : x)2
v
u
u
W here D( : x) = uut +(1
(1</p>
      </sec>
      <sec id="sec-4-3">
        <title>P (\Sunnyvale" j pref erred))2</title>
      </sec>
      <sec id="sec-4-4">
        <title>P (\123 M urphy St:" j pref erred))2</title>
        <p>2
Recommending the POIs to the User The candidate items retrieved from
the database are scored using the distance from bliss-point metric and sorted
according to the distance. The sorted list of POIs is then sent by the Supe system
to the navigation application as a recommendation. Once the user selects a POI
from the list, it is fed back to the preference model and the system is able to
learn incrementally.
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>The Supe Semantic Web Knowledge System</title>
      <p>
        Since the Supe system is described in detail elsewhere [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], we only describe an
overview (see Fig. 5). Supe is a Semantic Web Knowledge System used to collect
driver preferences and apply the preference model to provide personalized POI
search results to the driver. It is based in the Cloud and contains a Knowledge
Base, Intelligent Services, RESTful endpoints and access control mechanisms.
To be successful in modeling driver preferences, it needs driver as well as POI
data. This semantic data is grounded in an ontology and represented as Linked
Data in the Knowledge Base. Supe also provides Intelligent Services, associated
with the machine learning task described in the previous sections, for learning
the driver's preferences and nding the recommended POIs for the driver. These
are wrapped by thin RESTful services that are accessible to the navigation
application running on the head-unit and other connected devices for searching
POIs and pushing POIs to the navigation application via the Cloud. To prevent
RESTful services, Intelligent Services and applications that are running on the
connected devices from corrupting other services' or users' data, Supe has an
access control mechanism in place. Applications and users use an identi er and
a secret passkey combination for authentication. The authorization mechanism
is tied to a hierarchical namespace scheme for URIs that governs the policies
for data ownership. The RESTful services and Linked Data (URIs starting with
`https://') are accessible on the connected devices side using secured (HTTPS)
communication, thus ensuring con dentiality.
6
      </p>
    </sec>
    <sec id="sec-6">
      <title>User Study &amp; Evaluation</title>
      <p>We implemented a smart-phone application emulating the in-vehicle navigation
application for a user study. The application allowed users to search for POIs
belonging to di erent categories (e.g. gas stations, banks, restaurants, etc.). A
cloud-based server supporting the application was implemented using the
description of Supe above. Around 50 people, who used their car for running
household chores or for their daily commute to work, in the Bay Area (around San
Francisco, CA) were selected for the user study. Each user was asked to add at
least 10 places to his preference model by driving to the POIs he would visit in</p>
      <p>ApplicaEons  on  the  Devices  </p>
      <sec id="sec-6-1">
        <title>Access  API  </title>
      </sec>
      <sec id="sec-6-2">
        <title>RESTful  Services  </title>
      </sec>
      <sec id="sec-6-3">
        <title>Intelligence  Services  </title>
      </sec>
      <sec id="sec-6-4">
        <title>Knowledge  Base  </title>
        <p>LinkeCdODNFaIDtaENTIAL   Web
  Services</p>
        <p>Object Store</p>
        <p>Knowledge  
Services  </p>
        <p>Machine  
Learning  
Ontology1  
his daily life and letting the application know that he like the place, by clicking
a `like' button. Each user was also asked to perform 10 search tasks, where he
would search for POIs and choose to one out of the recommended places. The
application usage was recorded.</p>
        <p>The following screenshot (Fig. 6) shows two instances of POI search for one
such user. Initially, there are 3 slots for displaying recommendations, and any
other places in the recommended POI list are scrollable. The rst image shows
the results for search for banks in the user's daily commute area. The ones
marked with a pin are the places that he has visited (and liked) and are used to
build his preference model. When the user was in a remote place and in need of
cash, he searched for banks using the application. The second capture shows that
two of his preferred banks were ranked among the top three in the list. Intuitively
the reader may gure out that this user prefers a speci c banking company. The
model is able to detect this preference because its likelihood probability on the
hasName axis is high. Similar patterns were also detected for other users in
di erent categories, like gas stations, restaurants, etc.</p>
        <p>(a)  
(b)  </p>
        <p>The users had been given two weeks to complete the tasks during which
observations were made on the performance of their preference model. For each POI
search task, a successful recommendation was counted if, from the 20 candidate
POIs that the database returned, the user selected one of the top 3
recommendations. We tracked the success-rate (percentage of successful recommendations in
the search task) of the preference model with the increasing size of the preference
model and also with the number of searches performed. The selected POI was
fed back to the preference model for learning the preference incrementally. Fig.
7 shows the performance of the preference model for one user. As can be seen,
after the initial stabilization period, the success rate steadily improved with
increasing number of instances in the preference model and as more searches
were performed. Overall, for the 48 participants that completed the task, the
success rate at the completion of the tasks was 47.63% on an average. This is
better than a strategy for random recommendation of 3 out of 20 candidate
POIs, which would result in a 15% success rate. Though the improvement in
the success-rate was satisfactory, there is a clear scope for better performance.
In the future, we intend to use this result as a baseline for comparisons with
updates to the learning technique.</p>
        <p>The use of a probabilistic approach also allowed us to `look inside' the
preference model of a user. For example, for the user in Fig. 6, his preferences for
the hasName attribute (word cloud) and distance from current location context
(distribution) are shown in Fig. 8. These visualizations were useful for intuitively
understanding the likelihood probabilities of the properties.
7</p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>Related Work</title>
      <p>
        Content-based preference modeling has received large research attention in
recommendation systems over the past few years[
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. These algorithms, use machine
learning techniques like linear regression, nave-Bayes, etc. for nding
recommendations. One of the earliest works, the Syskill &amp; Webert system[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] uses a
nave-Bayes classi er for classifying web sites as either `hot' or `cold'. Similar to
our approach, this system also uses the probability score to rank pages according
to user's preferences. More recently, personalized information retrieval has also
been gaining traction in the Semantic Web. For example, dbrec[
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] is a music
recommendation system based on DBpedia that uses a semantic link distance
metric for its recommendations. An important constraint that restricted our use
of more sophisticated algorithms was the absence of any negative training
examples. Incidentally, one-class classi cation approaches have also been studied,
which may present an interesting alternative to our method[
        <xref ref-type="bibr" rid="ref12 ref5">12, 5</xref>
        ]. In these,
clustering, kernel based, or other methods are used to identify the boundary of the
class and then predict if an item belongs to that class or is an outlier. The
metric used for determining outliers can possibly be used as an alternative to the
distance from bliss-point metric.
      </p>
      <p>
        In the past year, the combination of RDF and machine learning has gained
some traction. The work that is perhaps most similar to our approach on
converting RDF to a machine learning table, is found in Lin et. al [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. For the movie
domain, they try to predict if a movie receives more than $2M in its opening week
by converting the RDF graph for the movie to a Relational Bayesian Classi er.
One major di erence in their approach to ours is the translation of multi-valued
object properties (e.g. hasActor ) into the relational table. While doing so, their
approach ` attens' all objects. For example, names of all actors get aggregated
into a single `has actor name' column and all actors' year of birth get aggregated
into a `has actor YoB' column. The associativity within an instance (e.g. of an
actor's name to his age) is lost. In our approach, this advantage, of property
associativity using a graph, is maintained since we determine the score for each
blank node independently. However, a more in-depth comparison of the two
approaches needs to be conducted on common data for better analysis. Another
related work in learning from RDF has been explored in Bicer et. al[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], where
relational kernel machines are used for movie recommendations. A similar kernel
based approach was also used in Losch et. al [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] for recommending new links in
RDF graphs - for example, recommending known people (foaf:knows ).
8
      </p>
    </sec>
    <sec id="sec-8">
      <title>Conclusion &amp; Future Work</title>
      <p>In this paper we described a semantic content-based approach for
recommending POIs according to driver preferences learned using the navigation history.
Our approach was able to build the preference model using RDF data
associated with the driver history as a result of the following: (i) it used an easy
translation method between semantic content (RDF data) into machine
learnable tables (ii) the content-based approach was easily extendable to include and
learn the contextual preference (e.g. distanceFromWork, etc.) (iii) the distance
from bliss-point metric was used to recommend POIs from a set of candidates
using the modeled preferences (iv) the probabilistic nature of the likelihood of
the attributes in the preference model helped study the user's preferences by
visualization. This was veri ed through a user study that produced a 47.63%
success-rate.</p>
      <p>Though our preliminary evaluation shows promising results with actual users,
using simple metrics, it has scope for improvements. We intend to explore other
machine learning techniques (e.g. kernel based, one-class classi cation, etc.) to
improve the preference model, as future work. We also intend to test this on a
larger dataset of driver history.</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. Knowledge and Data Engineering</article-title>
          , IEEE Transactions on
          <volume>17</volume>
          (
          <issue>6</issue>
          ),
          <volume>734</volume>
          {
          <fpage>749</fpage>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Almazro</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shahatah</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Albdulkarim</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kherees</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martinez</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nzoukou</surname>
            ,
            <given-names>W.:</given-names>
          </string-name>
          <article-title>A survey paper on recommender systems</article-title>
          .
          <source>Arxiv preprint arXiv:1006.5278</source>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Bicer</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tran</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gossen</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Relational kernel machines for learning from graphstructured rdf data</article-title>
          .
          <source>The Semantic Web: Research</source>
          and Applications pp.
          <volume>47</volume>
          {
          <issue>62</issue>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Ding</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Finin</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Peng</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Da</surname>
            <given-names>Silva</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>McGuinness</surname>
          </string-name>
          ,
          <string-name>
            <surname>D.</surname>
          </string-name>
          :
          <article-title>Tracking rdf graph provenance using rdf molecules</article-title>
          .
          <source>In: Proc. of the 4th International Semantic Web Conference (Poster)</source>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Khan</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Madden</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>A survey of recent trends in one class classi cation</article-title>
          .
          <source>Arti cial Intelligence and Cognitive</source>
          Science pp.
          <volume>188</volume>
          {
          <issue>197</issue>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Lin</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Koul</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Honavar</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Learning relational bayesian classi ers from rdf data</article-title>
          .
          <source>The Semantic Web{ISWC</source>
          <year>2011</year>
          pp.
          <volume>389</volume>
          {
          <issue>404</issue>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7. Losch, U.,
          <string-name>
            <surname>Bloehdorn</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rettinger</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Graph kernels for rdf data</article-title>
          .
          <source>The Semantic Web: Research</source>
          and Applications pp.
          <volume>134</volume>
          {
          <issue>148</issue>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Parundekar</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Oguchi</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Learning driver preferences of pois using a semantic web knowledge system</article-title>
          .
          <source>The Semantic Web: Research</source>
          and Applications pp.
          <volume>703</volume>
          {
          <issue>717</issue>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Passant</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Dbrec, music recommendations using dbpedia</article-title>
          .
          <source>The Semantic Web{ ISWC</source>
          <year>2010</year>
          pp.
          <volume>209</volume>
          {
          <issue>224</issue>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Pazzani</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Billsus</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Learning and revising user pro les: The identi cation of interesting web sites</article-title>
          .
          <source>Machine learning 27(3)</source>
          ,
          <volume>313</volume>
          {
          <fpage>331</fpage>
          (
          <year>1997</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Pazzani</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Billsus</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Content-based recommendation systems</article-title>
          . The adaptive web pp.
          <volume>325</volume>
          {
          <issue>341</issue>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Tax</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>One-class classi cation</article-title>
          .
          <source>PhD thesis</source>
          , Delft University of Technology (
          <year>June 2001</year>
          ), http://www.ph.tn.tudelft.nl/davidt/thesis.pdf
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>