Restaurant Recommender System with Review Sentiment Analysis

  • 洪 梓軒

Student thesis: Master's Thesis


Recently the social network has been well developed It is easier and easier that users can express their opinions on the Internet In Taiwan there are much restaurant review data on Google Map However there are few recommender systems based on review sentiment analysis in Taiwan We want to build a recommender system by analyzing review sentiment and test if sentiment analysis affects the recommendation performance This study focuses on analyzing users’ preference and recommending restaurants to users Traditional recommender system methods used the rating to an item from users to analyze their preference Nowadays many platforms let users rate the items along with text reviews We wonder if review texts can represent the user preference more We collected all Taiwan restaurants review data on Google Map for analysis The rating scale is 1 to 5 stars We take the 4 and 5 stars rating data as user preference data 1 687 390 data in total Sentiment analysis we pick all 5-star reviews from restaurants that received more than 100 reviews as positive sentiment dataset and all 1-star reviews as negative sentiment dataset We used 66 357 sentences of negative reviews and 64 998 sentences of positive reviews to train our sentiment classifier In order to analyze the sentiment of user reviews we try three kinds of the classifier which are support vector machine Na?ve Bayes and long short-term memory network to classify review data into positive or negative With the sentiment analysis we can know the preference of users about restaurants After sentiment analysis we update the user-restaurant rating matrix Then we use two recommender system weighted matrix factorization and matrix factorization with item co-occurrence as baseline method to test if sentiment analysis is beneficial for preference prediction At last we use three evaluation metrics mean average precision (MAP) Recall normalized discounted cumulative gain (NDCG) to compare our system to baseline method We first split the dataset into 8:2 ratio as training and testing dataset By predicting testing data’s label we can know how our system performs As a result our restaurant recommender system with sentiment analysis enhance 5 77% on MAP 8 26% on NDCG and 8 81% on recall The results show that sentiment analysis on review texts for recommender system enhance the recommendation performance
Date of Award2018 Feb 8
Original languageEnglish
SupervisorJung-Hsien Chiang (Supervisor)

Cite this