Content uploaded by Su-Cheng Haw
Author content
All content in this area was uploaded by Su-Cheng Haw on Jul 12, 2021
Content may be subject to copyright.
Tourism Recommender System Utilising Property Graph
Ontology as Knowledge Base
Keng-Seong She
Faculty of Computing Informatics
Multimedia University
Jalan Multimedia
63100 Cyberjaya
wilsonsks@gmail.com
Su-Cheng Haw
Faculty of Computing Informatics
Multimedia University
Jalan Multimedia
63100 Cyberjaya
sucheng@mmu.edu.my
Lit-Jie Chew
Faculty of Computing Informatics
Multimedia University
Jalan Multimedia
63100 Cyberjaya
chewlijie@gmail.com
ABSTRACT
In recent years, the amount of Internet information and users has
been increasing at a remarkable rate. Recommender System (RS)
has emerged to solve the problem of drastic overloaded
information over the Internet. RS automatically analyses all
relevant information by integrating profiling tailored to specific
user, as well as user rating to give more accurate and reliable
recommendations. In this paper, we propose an ontology-based
using Jaccard Index to define rules and interrelations between
entities, thus, offering greater semantic relations within a
particular domain.
CCS Concepts
• Information systems➝ Information Storage and Retrieval→
Information Search and Retrieval→Retrieval Models
Keywords
Tourism; point of interest; recommender system; user profiling;
ontology
1. INTRODUCTION
Towards recently, Recommender Systems (RS) have taken in a
whole new direction, which is to provide personalized service for
a wide variety of applications [1][2]. Examples of some
recommender applications are news, movies, music, videos,
bundle purchases, and online research papers.
Among all, tourism has become one of the major players in
international commerce and economy of a country. Most people
plan their trips by using online sources, to search for Point of
Interests (POIs) and plan their trip. Nevertheless, with the
information overloaded in the web, RS is crucial to filter and
recommend only POIs to one’s needs or interests [3].
Several types of RSs existed in the literatures. These systems can
be broadly classified based on the recommendation technique,
namely, Content-based, Collaborative filtering-based, and Hybrid-
based.
Content-based recommender system is based on customer’s
previous choices [4][5]. Bahramian & Abbaspour [6] used
ontological information to represent potential POIs and user
profile in their proposed travel recommender system. More
recently, Klotz et al. [7] developed DrIveSCOVER, which is a
recommender system for places and events by incorporating
external factors such as weather and local traffic conditions.
Collaborative filtering-based techniques filter out the
recommendation by user preference in the form of ratings [8].
Also, the system will predict taste by calculating people who have
similar tastes in history. With this, recommendation quality is
corresponding to the size of a rating dataset. Hence, users with
few ratings as well as items with few ratings are difficult to be
categorized [9]. A demographic-based technique uses
demographic profile to find co-relation between users [10].
However, privacy is a main concern while gathering demographic
information.
Although Collaborative filtering-based approach has their success,
it still suffers serious limitations due to inadequate rating data
[10]. As such, recently, a hybrid RS arises. This technique works
by combining multiple recommendation strategies in different
ways to achieve effective hybrid recommendation [10].
2. LITERATURE REVIEW
García-Crespo et al. [11] proposed Sem-Fit, a semantic-based
hotel recommendation system. Sem-Fit uses consumer‟s
experience to apply fuzzy logic to relate customer and hotel
characteristics. After recommendations were presented, customer
then evaluate on the recommendation generated by the system.
Subsequently, rules of the system were updated to adjust the new
recommendations. García-Crespo et al. [12] further proposed
SINVLIO (Semantic INVestment portfoLIO), which combines
semantic technologies and fuzzy logic techniques to recommend
investments to user based on their profile match.
On the other hand, hybrid-based RS combines some
recommendation techniques to produce the recommendation
output [13]. The recommendation accuracy is usually higher in
hybrid systems [14]. Shinde and Kulkarni [15] proposed a two-
phase centering-bunching based clustering algorithm, which is
used for hybrid personalized RS. In the first phase (offline mode),
opinions from users are collected in the form of user-item rating
matrix. In the second phase (online mode), the recommendations
are generated using similarity measures by choosing the clusters
with good quality ratings. This helps to get further effectiveness
and quality of recommendations for active users. Wang et al. [16]
proposed a hybrid RS, which combine the incremental
collaborative filtering, and content-based approach based on
relative term frequency algorithms in the domain of news RS. Xu
et al. [17] proposed the hybrid system, which integrates user
behavior similarity and user profile similarity to build the group-
based recommender system. To calculate the user similarity, they
have adopted the Jaccard index (detail elaboration can be found in
SAMPLE: Permission to make digital or hard copies of all or part of this
work for personal or classroom use is granted without fee provided that
copies are not made or distributed for profit or commercial advantage
and that copies bear this notice and the full citation on the first page. To
copy otherwise, or republish, to post on servers or to redistribute to lists,
requires prior specific permission and/or a fee.
Conference’10, Month 1–2, 2010, City, State, Country.
Copyright 2010 ACM 1-58113-000-0/00/0010 …$15.00.
DOI: http://dx.doi.org/10.1145/12345.67890
Section 3). Their approach has been proven sound by
implementing the simulation on a real shopping mall.
There are plenty of tourism websites nowadays such as
TripAdvisor, Agoda, Touropia, and so on. All these tourism
websites are mostly incorporated with recommender feature. They
are trying to mimic the phenomenon where travelers consult travel
agents for suggestions and trip planning in the traditional
consultation sessions.
In the context of tourism in Malaysia, attractionsinmalaysia.com
is a webpage that provides information for travelers who wish to
travel to Malaysia. It provides most of the basic POIs for tourism
which are attraction, restaurant, accommodation, and shopping. In
addition, it also lists some possible amenities and activities to be
carry out in a selected location. Unfortunately,
attractionsinmalaysia.com is a static page and do not provide any
recommendations to users.
3. PROPOSED SYSTEM
This section describes the research methodology carried out to
implement the property graph ontology recommender system. The
proposed system is a content-based system that utilizing
ontological information to represent both possible POIs and user
profiles to compute the similarity between them and then return a
list of recommended POIs to user.
3.1 The Motivation
Relational databases have been widely used by most organizations
as the data are highly structured and can be represented in table
format (rows and columns basis). These tables are link to one
another by the primary-key and foreign-key constraints. Thus, to
process query, most of the time, one will need select some
attributes from more than one relation. Consequently, joins are
required, and therefore, this will resulted in longer processing
time to answer query specified. Moreover, relational database is
not scalable to handle huge data as it is costly computation and
suffers from memory resource problems.
On the other hand, graph databases provide rich visualization that
helps to understand a great variety of datasets through rich
semantic relation representation. The property graph has
following characteristics:
It contains nodes and relationships.
Nodes contain properties.
Relationships are named and directed between two
nodes.
Relationship can also contain properties.
Property graph data structure is like the object graphs of object-
oriented programming. A set of objects without their methods,
which left with object and its properties are actually a property
graph. Beyond the technological benefits, the human mind tends
to think in terms of objects and their relations. Therefore, graphs
may be considered as “human brain friendly”.
In addition, property graph database does not use the primary-key
and foreign-key link. This is the reason why the graph database
still performing well even as the data expands. Thus, it is more
flexible and scalable as compared to relational database.
3.2 Pre-processing and Property Graph
Representation
Table 1 shows the snippet of dataset for accommodations obtained
from the MOTAC (http://www.motac.gov.my/en/). The
information contains attributes such as state, name, address,
description, website, email and telephone. Yet, we have included
some additional attributes such as star, price and facilities to
enhance on the recommendation effects.
Table 1. Dataset for Accomodation
Figure 1 shows the property graph diagram. Each node represents
a resource. From Figure 1, from the leftmost, the first column
contains nodes that represent facilities. The second column
contains a single node, which represents price range.
Subsequently, the third column contains nodes that represent
places, while the forth column contains nodes that represent star
rating. The fifth column contains states information. Lastly, the
sixth column contains user information. All these nodes are linked
by different relationships.
Figure 1. Property Graph Diagram
Table 2 shows the data dictionary for the relationship among the
nodes, while Table 3 shows the attributes or better known as
properties.
3.3 Jaccard Index
Firstly, our application will retrieve a list of POIs from database
and rank them by using Jaccard Index for the recommendation
part. Formal definition for Jaccard Index is a number between
zero and one that measure the similarity of two finite sample sets.
It is also known as intersection over union due to the calculation
which is dividing the size of intersection by union of two sets.
One (1) will be returned for two identical sets and zero (0) will be
returned for two totally different sets (see Equation 1).
Equation 1
The formula shown in Equation 1 is used to calculate the
similarity index and rank POIs from a list of generated
recommendation. POIs with higher index means they have more
similarities compared to POIs with lower index. Our system had
set that only POIs with Jaccard Index of 0.5 and above will be
returned in order to achieve a more precise and relevant
recommendation. Nevertheless, the index value is configurable as
one wish.
Table 2. Description of Relationship
Table 3. Properties and its description
3.4 Sample query using Cypher
The following Cypher query, Query 1 retrieves ten 5 Star hotels.
Figure 2 shows the returned hotels after the following is executed.
Query 1: Retrieve 5 Star Hotels
Query 2: Get user’s preferences
The following Cypher query retrieves user’s preferences. Figure 3
shows the returned user preferences after the following is
executed:
Figure 2. Returned result for retrieving 5 star hotels
Figure 3. Returned result for query get user’s preferences
Query 3: User Rating & Attraction Average Rating
The following Cypher query retrieves user that rated Langkawi
and the average rating of Langkawi. Figure 4(a) and 4(b) shows
the returned results and sample data retrieved after the following
query is executed:
(a)
(b)
Figure 4. Returned result for retrieving user rating
MATCH (n:RegisteredUser{name:"ab"})-[:PREFERRED]-(b)
RETURN n,b limit 10
MATCH (n:Attraction)-[:RATED_AS]-(b:Star{name:"5 Star"})
RETURN n,b limit 10
MATCH (n:RegisteredUser)-[:RATED]-(b:Attraction{name:"Bukit
St. John (St. John Hill)"})-[:AVG_RATING]-(c:Rating) RETURN
n,b,c limit 10
MATCH (n:RegisteredUser)-[r:RATED]-(b:Attraction{name:"Bukit
St. John (St. John Hill)"})-[:AVG_RATING]-(c:Rating) RETURN
n.name as user,b.name as attraction,c.name as avgRating,r.value as
ratedValue limit 10
Query 4: Generate recommendation
The following Cypher query creates a “PREFERRED”
relationship to indicate a user prefers an attraction type. Table 4
shows the POIs with Jaccard Index of 0.5 and above after
executing:
Table 4. Partial returned result for generate recommendation
3.5 User Interface Diagram
Figure 5 shows the hotel (home) page of our system with some
recommended POIs that generated randomly. Regardless of
logging in as users or visitors, both are allowed to search
accommodation by selecting a location, then the application will
return the accommodations which are located in the selected
location.
A visitor whom wishes to use the recommendation engine must
sign up as a user (see Figure 6). During the sign up, the user
profile will be captured. Subsequently, when the user log in
successfully, he will be directed to the main page, whereby he
may see the personalized recommendation based on his profile
setting.
Figure 5. Hotel homepage
Figure 6. Signup page
Figure 7 shows the user profile page. After users set their own
preferences or interests, the user’s preferences are displayed on
the profile page and they are still able to edit by clicking the edit
button.
Figure 7. Profile page
Figure 8 shows the recommendation page. It will generate and
displays the recommendable POIs by using user‟s preferences and
transaction histories. If users have not set their preferences or
have no transaction history, an error message will be displayed
and redirect users to the main page. Recommendations will only
be generated and displayed when users have sufficient transaction
histories and preferences. Basically, system will find places that
are similar to the transaction histories, where those places are
from a list of places limited to the preferences set.
Figure 8. Recommendation page
4. CONCLUSION AND FUTURE WORKS
In this paper, we have proposed a property graph-based tourism
application based on user preferences and transaction histories.
This system focuses on knowledge representation using the
property graph. A property graph has rich semantic relation
representation to model relationships through its visual
representation. Our system utilises the Jaccard Index calculation
to rank places for recommendation.
Some possible future works are enhancing the accuracy of the
recommendation by hybrid some other recommendation
techniques based on content-based and collaborative filtering
approaches. We may also utilise weighted graphs or even deep
learning to get more accurate results.
5. ACKNOWLEDGMENTS
This work is supported under the industrial collaboration project
with Stronium Sdn Bhd. We would like to acknowledge the
commitment of our advisor, Mr. Loh Yu Gene for his support to
ensure the success of the project.
6. REFERENCES
[1] Agrawal, S., and Jain, P. (2017). An improved approach for
movie recommendation system. International Conference on
I-SMAC (IoT in Social, Mobile, Analytics and Cloud), 336-
342.
[2] Schedl, M., Zamani, H., Chen, C.W., Deldjoo, Y., and Elahi,
M. (2018). Current challenges and visions in music
recommender systems research. International Journal of
Multimedia Information Retrieval, 7(2), 95-116.
[3] Haruna, K., Ismail, M.A., Damiashi, D., Sutopo, J., and
Herawan, T. (2017). A collaborative approach for research
paper recommender system, PLoS ONE, 12(10), 1-17.
[4] Achmad, K.A., Nugroho, L.E., Widyawan, & Djunaedi, A.
(2017). Tourism contextual information for recommender
system. International Annual Engineering Seminar (InAES).
[5] Boratto, L., Carta, S., Fenu, G., & Saia, R. (2017).
Semantics-aware content-based recommender systems:
Design and architecture guidelines. Neurocomputing, 254,
79-85.
[6] Bahramian, Z., & Abbaspour, R. A. (2015). An Ontology-
Based Tourism Recommender System Based On Spreading
Activation Model. International Archives of
Photogrammetry, Remote Sensing and Spatial Information
Sciences, 40(1), 83.
[7] Klotz, B., Lisena, P., Troncy, R., Wilms, D., & Bonnet, C.
(2017). DrIveSCOVER: A Tourism Recommender System
Based on External Driving Factors, International Semantic
Web Conference.
[8] Suganeshwari, G., & Ibrahim, S.S. (2016). A Survey on
Collaborative Filtering Based Recommendation System.
International Symposium on Big Data and Cloud Computing
Challenges, Springer International Publishing, 503-518
[9] Chandaka, M., Giraseb, S. and Mukhopadhyayc, D. (2015).
Introducing Hybrid Technique for Optimization of Book
Recommender System. Procedia Computer Science, 45, 23–
31.
[10] Wang, Y., Chan, S.C.F., and Ngai, G. (2012). Applicability
of Demographic Recommender System to Tourist
Attractions: A Case Study on Trip Advisor. IEEE/WIC/ACM
International Conferences on Web Intelligence and
Intelligent Agent Technology, 97-101.
[11] García-Crespo, A., López-Cuadrado, J. L., Colomo-Palacios,
R., González-Carrasco, I., & Ruiz-Mezcua, B. (2011). Sem-
Fit: A semantic based expert system to provide
recommendations in the tourism domain. Expert Systems
with Applications, 38(10), 13310–13319.
[12] García-Crespo, Á., López-Cuadrado, J. L., González-
Carrasco, I., Colomo-Palacios, R., & Ruiz-Mezcua, B.
(2012). SINVLIO: Using semantics and fuzzy logic to
provide individual investment portfolio recommendations.
Knowledge-Based Systems, 27, 103–118.
[13] AlhamdanibR.S., Abdullah, M.N., & Sattar, I.A. (2018).
Recommender System for Global Terrorist Database Based
on Deep Learning. International Journal of Machine
Learning and Computing, 8(6), 571-576.
[14] Geetha, G., Safa, M., Fancy, F., and Saranya, D. (2017). A
Hybrid Approach using Collaborative filtering and Content
based Filtering for Recommender System. Journal of
Physics: Conference Series, 1000, 1-7.
[15] Shinde, S. K., & Kulkarni, U. (2012). Hybrid personalized
recommender system using centering-bunching based
clustering algorithm. Expert Systems with Applications,
39(1), 1381–1387.
[16] Wang, H., Zhang, P., Lu, T., Gu, H., and Gu, N. (2017).
Hybrid Recommendation Model Based on Incremental
Collaborative Filtering and Contentbased Algorithms. IEEE
International Conference on Computer Supported
Cooperative Work in Design, 337-342
[17] Xu, J., Yan, Z., Cao, G., and Zhao, J. (2018). Family
shopping recommendation system using behavior sequence
data and user profile. International Conference on Internet
Multimedia Computing and Service, 1-7.