Indian Tourist Recommendation System Using Collaborative Filtering and Deep Autoencoder

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 16

Indian Tourist Recommendation System

Using Collaborative Filtering and Deep


Autoencoder

G. Ratnakanth and S. Poonkuzhali

Abstract The tourism industry’s recommendation system opens the way for capital-
ising on visitor demand based on a prior traveller’s positive or negative experience at a
particular target tourist location. After weighing the advantages and disadvantages of
current methods for the tourist recommendation system, this study employed collab-
orative filtering techniques in conjunction with deep learning approaches. In this
study, a deep autoencoder is used to predict user ratings in order to give suggestions
to travellers about a certain tourist attraction. The proposed recommendation system
is examined and validated using two datasets comprised of user evaluations for two
distinct quirky places collected from a well-known traveller’s website, Tripadvisor.
The first dataset contains user reviews and ratings for numerous locations in Jaipur,
India, while the second dataset is based on various locations around Europe that are
available in the Kaggle repository. The suggested model’s performance is quantified
in terms of root mean square error (RMSE).

Keywords Deep autoencoder · Recommendation · Collaborative filtering ·


Tripadvisor

1 Introduction

Tourism is often regarded as the most important business in a major emerging country
such as India, with the potential to employ millions of people [1]. The importance
of this sector is to combine several developing technologies in order to develop it
in such a way that it can fulfil tourist demand at the optimal moment. The process
of locating nearby required items such as hotels, tourist attractions, and destinations
is a tiresome and time-consuming one. This issue can be overcome by combining

G. Ratnakanth (B)
Anna University, Chennai, India
e-mail: rkanth.mtech@gmail.com
S. Poonkuzhali
Rajalakshmi Engineering College, Chennai, India

© The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd. 2023 341
M. S. Kaiser et al. (eds.), Information and Communication Technology for Competitive
Strategies (ICTCS 2021), Lecture Notes in Networks and Systems 401,
https://doi.org/10.1007/978-981-19-0098-3_34
342 G. Ratnakanth and S. Poonkuzhali

the Internet of Things and artificial intelligence to create dependable smart tourism
requests.
Traditionally, a user would seek out his or her requirements at a remote loca-
tion. This may be accomplished only through Internet browsing. As previously said,
this manual method of locating more nearby or accessible items is a lengthy proce-
dure. Thus, this may be solved by developing an automated model that places user
needs in the user’s hands; this is referred to as a suggestion system. The recom-
mendation method overcomes current search obstacles in a wide variety of areas,
including e-commerce [2], entertainment, and health, and is not limited to tourism
requirements. A recommendation system may be designed in two ways according to
popular wisdom: as a collaborative-based filtering recommendation system or as a
content-based filtering recommendation system. Once again, collaborative filtering
is split into memory-based and model-based recommendations. The memory-based
approach is further subdivided into collaborative filtering based on user and item. The
content-based filtering is determined by whether a user’s previously loved product
would be liked in future as well. Another widely used technique is content-based
filtering. This is achieved by suggesting individuals with similar tastes through the
same recommendation. The third strategy is to use a hybrid recommendation system,
which combines content-based and collaborative filtering. This method capitalises
on the advantages of both strategies while eliminating their disadvantages. Machine
learning approaches have been used to handle prediction in recommendation systems
over the last several years. Recently, machine learning was phased out in the tourist
industry in favour of deep learning architectures, which have demonstrated their
efficacy via experimental work using current methodologies [3]. In this sense, the
recommendation system frequently incorporates deep learning techniques to enhance
its effectiveness.
The following points summarises the contribution of this work:
• To scrape user evaluations for popular tourist destinations, such as things to visit
in Jaipur, from traveller’s websites, namely Tripadvisor.
• The data reviews were preprocessed by removing just the parameters necessary
for collaborative filtering, such as user id, item id, and rating.
• The pivot table is created by organising the item ids column-by-column and user
ids row-by-row. Then, each cell is summed with its associated review rating.
• Recommendation model has been built to forecast the user rating for trip
suggestions by feeding the collaborative filtering input to the deep autoencoder.
The paper is organised as follows: Sect. 1 has an introduction; Sect. 2 contains a
discussion of related work; Sect. 3 contains a design of the recommendation model;
and Sect. 4 contains the algorithm utilised in this model. Section 4 discusses the
findings received from this developed model. Finally, Sect. 5 concludes and discusses
the proposed model’s future development.
Indian Tourist Recommendation System Using Collaborative … 343

2 Associated Mechanisms

This section analyses the proposed deep learning-based recommendation system for
tourism demand and includes the following discussion:

2.1 Recommendation System Using Deep Learning

Fessahaye et al. [4] presented a recommendation for a music playlist using both
content-based and collaborative filtering techniques along with the implementation
of deep neural networks. Here, the results of both filtering techniques will be fed
to the deep neural network as an input in order to predict the upcoming music in a
playlist as a recommendation for the user. Wei et al. [5] suggested two recommenda-
tion models for incomplete cold start items and complete start items by combining
collaborative-based filtering along with deep learning models. In this work, deep
neural network has been used to extract necessary content features of the item and
timeSVD++ was implemented to model the temporal dynamics users, preferences
and its preferred items. Wang et al. [6] presented a two-level automation model for
music recommendation system using deep belief network as well as probabilistic
graphical model. This model performs parallel processing of feature learning from
audio and recommendation for users. Kherad et al. [7] suggested a recommendation
system based on Matrix Factorisation and graph analysis methods. Apart from these
techniques, deep autoencoders have been used to do initialisation of user and item
latent vectors. Kiran et al. [8] proposed a hybrid recommendation system using deep
learning techniques, and this model is designed in such a way to focus on to over-
come the flaws arise by the traditional collaborative filtering techniques by feeding
the side information into the deep learning architecture. Additionally, both the latent
features and non-latent features are learnt by the matrix factorisation and embedding
layer, respectively. This model is trained and evaluated using different datasets such
as MovieLens 100 K, FilmTrust, Book-Crossing, and MovieLens 1 M. Lv et al. [9]
proposed a sequential recommender system by combining short-term sessions and
long-term sessions using recurrent neural networks along with attention mechanisms.

2.2 Tourism-Based Recommendation System

Wang et al. [10] proposed a recommendation system based on CNN along with DNN.
Here, the author has preferred CNN for preprocessing of text reviews given by the
user for a particular tourist site. Moreover, DNN is also implemented here to process
the essential information of users as well as the items. An et al. [11] proposed a senti-
ment analysis-based recommendation system for tourism data. Author has utilised
CNN-LSTM for applying word embedding techniques over the text reviews obtained
344 G. Ratnakanth and S. Poonkuzhali

from the user. Furthermore, by using these processed reviews, a content-based recom-
mendation system has been designed. Abbasi et al. [12] suggested a recommendation
system based on semantic clustering and sentiment classification. Author has utilised
user reviews which are collected from Tripadvisor. Based on the processed reviews
obtained from clustering and sentiment analysis, a context aware recommendation
system has been designed. Lee et al. [13] proposed a recommendation system based
on the Gated recurrent unit to process the user reviews in the form of sequential data.
Apart from GRU, RNN has been used to design session-based parallel mini batch
recommendation models. This model has been evaluated using the reviews given for
Jeju Island.
Deep autoencoder, an efficient unsupervised algorithm, was utilised in this research to predict
the review score supplied by the user or tourist. At the end of the above-mentioned relevant
work, several of the major concerns associated in the collaborative filtering-based recom-
mendation system are revealed; these are data sparsity in the employed dataset, cold start
problem, and finally, difficulty in appending side characteristics as an input to the model.
These concerns exist when the recommendation system is built using traditional techniques,
and they are mitigated slightly by the use of deep learning techniques. The second part of
this section looked at the experimental results and performance of deep learning approaches.
This demonstrates how different types of neural network designs can be used to solve the
aforementioned collaborative filtering challenge. However, the existing method based on
neural networks almost entirely relies on supervised prediction; therefore, it fails in the
majority of cases when new types of inputs are introduced into the system. To overcome
this barrier, the deep autoencoder algorithm was used to create unsupervised collaborative
filtering recommendation systems for tourism.

3 Framework of the Tourism Recommendation Model

Figure 1 depicts the data analytics model for the proposed framework. In this research
work, a recommendation model is built for giving personalised tourist suggestions
utilising an unsupervised deep auto encoder algorithm. Data collecting, data prepro-
cessing, modelling, and recommendation system assessment are the key building
components used in the architecture of this tourism recommendation system. Initially,
user reviews are taken from the websites of tourists, i.e. tour advisers for well-known
sites, such as those in Jaipur. Following that, only the essential parameters for collab-
orative filtering, such as user id, item ID, and rating, were retrieved for data review
preparation. The item id is then arranged column wise, and the user id is arranged row
wise to create a pivot table. The evaluation ratings for each cell are then compiled.
Finally, after feeding the collaborative filtering input to the deep autoencoder, a
recommendation model based on user ratings for trip suggestions was developed.
Indian Tourist Recommendation System Using Collaborative … 345

Fig. 1 Framework of the


tourism recommendation
model

3.1 Data Acquisition

This work is trained and tested using two databases where the first dataset is about
the user reviews of the different types of places in Jaipur which is scraped in the
Tripadvisor website. Another dataset is based on the user reviews of the different
places in the region of Europe. This dataset also is scraped from the same Tripadvisor
website. For the case of Indian dataset, the review data and its corresponding rating
for performing collaborative filtering have been collected. The data has been scraped
from the website using a software package called selenium which can be installed on
346 G. Ratnakanth and S. Poonkuzhali

the python environment. The column names are user id, item id and its corresponding
rating. The Europe dataset was collected from Kaggle website [14].

3.2 Data Preprocessing

The pivot table was created to carry out collaborative filtering after the completion
of required features from the scraped web data and the three columns were used to
do this. The pivot table was created for each dataset independently, for the test and
the train datasets. The pivot table was created in such a way that the column ‘user
id’ is elucidated in a row-by-row manner, while the column ‘item id’ is elucidated
in a column-by-column fashion. It contains the rating score that was assigned to the
specific combination of user id and item id in the previous cell. The rating score will
have values ranging from 1 to 5 on a scale of 1 to 5. The review score with a value of
5 indicates the highest rating, whereas the review score with a value of 0 indicates
the lowest rating.

3.3 Modelling of Recommendation

The deep autoencoder model has been provided the input vectors from the collab-
orative filtering procedure in the form of a pivot table. In the testing dataset, this
unsupervised technique is used to forecast the missed user review rating, whereas the
train dataset is utilised to train the model’s review score. The suggestion of a specific
tourist destination can be determined based on the value by making prediction of the
user review for the future data instance.

3.4 Evaluation

During the evaluation phase, the proposed recommendation model was executed
by feeding the test part of the dataset as input to the neural network architecture.
Typical classification metrics may be used to evaluate the performance of the deep
autoencoder-based recommendation model. However, in this study, in addition to
standard performance measures, the MMSE (minimum mean square error) is used
to evaluate predictive models.
Indian Tourist Recommendation System Using Collaborative … 347

3.5 Algorithm

In this section, the algorithm used to design the collaborative-based deep recommen-
dation has been elucidated and it is given below.
Deep autoencoder
The unsupervised deep autoencoder is a commonly used method for reconstructing
images without degrading their original quality. Recently, deep autoencoders have
garnered considerable interest for their performance on classification and predic-
tion tasks. It also works with non-image data types such as text, alphanumeric, and
numeric. The deep auto encoder’s internal architecture is composed of an encoder,
a decoder, and a code. Both the encoder and the decoder have the same number
of hidden layers. The component ‘encoder’ consists of an input layer followed by
‘n’ hidden layers, whereas the component ‘decoder’ consists of an output layer
followed by ‘n’ hidden layers. The component ‘code’ is used to connect the encoder
and decoder components by sending the encoder’s output to the decoder’s input.

Fig. 2 Pseudo for deep autoencoder


348 G. Ratnakanth and S. Poonkuzhali

Table 1 Hyperparameters
Hyperparameter Value
values of deep autoencoder
Activation function Selu
Dropout 0.1
Learning rate 0.001

Fig. 3 Pseudo for singular value decomposition (SVD)

Figure 2 illustrates the pseudo of a deep autoencoder. Table 1 contains the values for
the deep autoencoder’s tuned hyperparameters.
SVD (Singular Value Decomposition)
The Singular Value Decomposition approach is a supervised technique that is well-
known for its dimensionality reduction capabilities. However, in the recommenda-
tion system, the SVD is used as a collaborative approach. The resulting matrix is
factorised using single value decomposition in this case. The single matrix is most
likely decomposed into three matrices using the SVD algorithm. The pseudo for
SVD is given in Fig. 3.

4 Result and Discussion

This recommendation model was carried out in the programming environment of


Python with the use of Keras and TensorFlow as a backend. This set-up is done on a
64-bit Windows 10 machine with 4 GB RAM, 2 GHz processing rate, and a Python
version 3.4.0 running on it.
Indian Tourist Recommendation System Using Collaborative … 349

Outcome of Recommendation Model


In the recommendation, classifier investigates the performance measurements based
on minimum mean square error (MMSE) to evolve the best recommendation model
among supervised and unsupervised algorithms. The minimum mean square error
(MMSE) is a type of estimator that is used to minimise the value of the mean square
error (MSE). The MMSE is calculated using the following Eq. (1)

MMSE(X ) = E(X |Y ) (1)

where
‘E’ Minimum MSE of all predictors,
X Estimator of the random variable.
Y Random variable.
In Table 2, the MMSE performance metrics for SVD and Deep autoencoder
methods are presented for two distinct areas of the dataset. It demonstrates that
the Deep autoencoder outperforms the SVD on both datasets. For the India-based
dataset, model 4 with a layer structure of (32, 30, 25, 10, 10, 25, 30, 9) outper-
forms the remaining three models, whereas model 2 performs well on its own for the

Table 2 Performance evaluation of SVD and deep autoencoder


Algorithm used Different kinds of architecture MMSE
Training loss Validation loss
India-based review dataset
Deep auto encoder Model 1: 0.8490 0.7958
(32, 20, 20, 9)
Model 2: 1.1221 1.1296
(32, 20, 10, 10, 20, 9)
Model 3: 0.8088 0.8355
(32, 30, 20, 10, 10, 20, 30, 9)
Model 4: 0.5101 0.4925
(32, 30, 25, 10, 10, 25, 30, 9)
SVD 2.0797 2.1013
Europe-based review dataset
Deep auto encoder Model 1: 0.0210 0.0178
(10, 12, 12, 12)
Model 2: 0.0188 0.0135
(10, 24, 12, 12, 24, 12)
Model 3: 0.0397 0.0225
(10,30, 24, 12, 12, 24, 30, 12)
Model 4: 0.0310 0.0169
(10, 40, 24, 12, 12, 24, 40, 12)
SVD 0.0555 0.0656
350 G. Ratnakanth and S. Poonkuzhali

Fig. 4 MMSE loss of deep


autoencoder (India dataset)

Model 1

Model 2

Europe-based dataset. This demonstrates that a huge dataset just takes a few layers
to get the same performance as a smaller dataset. The plots in Fig. 4 illustrate the
relationship between the MMSE loss during the training and validation phases for
models 1, 2, 3, and 4 with regard to the India-based dataset. Similarly, Fig. 5 depict
the MMSE plot of the Europe-based dataset for deep autoencoder models 1, 2, 3,
Indian Tourist Recommendation System Using Collaborative … 351

Fig. 4 (continued)

Model 3

Model 4

and 4. Figure 6 illustrate the performance of the SVD method in terms of MMSE
loss for India and Europe-based datasets, respectively.
352 G. Ratnakanth and S. Poonkuzhali

Model 1

Model 2

Fig. 5 MMSE loss of deep autoencoder (Europe dataset)


Indian Tourist Recommendation System Using Collaborative … 353

Model 3

Model 4

Fig. 5 (continued)
354 G. Ratnakanth and S. Poonkuzhali

Indian Dataset

Europe Dataset

Fig. 6 MMSE loss for SVD


Indian Tourist Recommendation System Using Collaborative … 355

5 Conclusion

The recommendation system for the tourist industry, which is based on deep learning
techniques, was built efficiently using an unsupervised methodology. This increases
the performance of the proposed model over the standard machine learning approach,
as evaluated by the MMSE. Additionally, in this study, a well-performing conven-
tional approach called SVD (singular value decomposition) was used to conduct a
comparison analysis using a deep autoencoder in order to find the best performing
recommendation model. The suggested model’s dependability has been assessed
using both small and big datasets. As a consequence, it is discovered that deep
autoencoders produce superior outcomes for both datasets. This study effort may
be developed further by adding the deep autoencoder algorithm for content-based
filtering and hybrid recommendation systems. The hybrid recommendation system
outperforms the collaborative filtering and content-based filtering recommendation
models.

References

1. Kabassi K (2010) Personalizing recommendations for tourists. Telematics Inform 27(1):51–66


2. Schafer JB, Konstan JA, Riedl J (2001) E-commerce recommendation applications. Data Min
Knowl Disc 5(1):115–153
3. Ratnakanth G, Poonkuzhali S (2021) Unsupervised sentiment classification for hotel review
rating using LSTM Autoencoder. In: 2nd International conference on data science and
applications(ICDSA21), 10–11 April 2021, Jadavpur University, Kolkata, India
4. Fessahaye F, Perez L, Zhan T, Zhang R, Fossier C, Markarian R, … Oh P (2019) T-recsys:
a novel music recommendation system using deep learning. In: 2019 IEEE international
conference on consumer electronics (ICCE). IEEE, pp 1–6
5. Wei J, He J, Chen K, Zhou Y, Tang Z (2017) Collaborative filtering and deep learning based
recommendation system for cold start items. Expert Syst Appl 69:29–39. https://doi.org/10.
1016/j.eswa.2016.09.040
6. Wang X, Wang Y (2014) Improving content-based and hybrid music recommendation using
deep learning. In: Proceedings of the 22nd ACM international conference on multimedia, pp
627–636
7. Kherad M, Bidgoly AJ (2020) Recommendation system using a deep learning and graph
analysis approach. arXiv preprint arXiv:2004.08100
8. Kiran R, Kumar P, Bhasker B (2020) DNNRec: a novel deep learning based hybrid
recommender system. Expert Syst Appl 144:113054
9. Lv F, Jin T, Yu C, Sun F, Lin Q, Yang K, Ng W (2019) SDM: sequential deep matching model
for online large-scale recommender system. In: Proceedings of the 28th ACM international
conference on information and knowledge management, pp 2635–2643
10. Wang M (2020) Applying internet information technology combined with deep learning to
tourism collaborative recommendation system. PLoS ONE 15(12):e0240656
11. An HW, Moon N (2019) Design of recommendation system for tourist spot using sentiment
analysis based on CNN-LSTM. J Ambient Intell Humanized Comput 1–11
12. Abbasi-Moud Z, Vahdat-Nejad H, Sadri J (2021) Tourism recommendation system based on
semantic clustering and sentiment analysis. Expert Syst Appl 167:114324
13. Lee HJ, Lee WS, Choi IH, Lee CK (2020) Sequence-based travel route recommendation
systems using deep learning—a case of Jeju Island. Smart Media J 9(1):45–50
356 G. Ratnakanth and S. Poonkuzhali

14. https://www.kaggle.com/ishbhms/travel-review-ratings

You might also like