Recommendation System Based on Item and User Similarity on Restaurants

Recommendation System Based on Item and User Similarity on Restaurants


Today, the internet is becoming a technology that has been used in various companies. This technology provides an opportunity for companies to be able to innovate in developing their services [5]. One country that has many internet companies that are growing is Indonesia. It is marked by the existence of internet companies that have become big companies and known by the community because the services they have are able to provide a huge added value such asGojek, Tokopedia, and Traveloka. In addition to these companies, there are many more internet companies that are developing in Indonesia. One of them is a company that provides restaurant directoryonline such asZomato, PergiKuliner, and Qraved. The growing number of internet companies demands that they constantly innovate by developing their own technology. It aims to increase the number of users and lead to increase their revenue. One of the technology that can be developed is the recommendation system because it has become an indispensable component in the world of e-commerce [11] and is the key to success in businesses that utilize internet services [4].The recommendation system is a system that aims to filter amount of information that will generate recommendations dynamically based on user preferences, interests, or behavior of an item [7 ] and most appealing to a particular user [10]. Code Shoppy The basic idea of a recommendation is to utilize multiple data sources to attract users [1].

The purpose of the recommendation system is to assist the user in making a decision [2] and predict which items will be chosen by users based on their preferences [7 ]. Ricci et al [10] mentioned that the recommendation system has an important role in well-known internet companies such as Amazon, YouTube, Netflix, Spotify, LinkedIn, Facebook, TripAdvisor, and IMDb. There are a number of benefits when a company has a recommendation system such as increasing the number of items sold, selling more diversified goods, increasing customer satisfaction, increasing user loyalty, and better understanding the desires of users.According to Isinkaye, Folajimi, and Ojokoh [7], there are 3 approaches that can be used in generating recommendations: collaborative filtering, content-based filtering, and hybrid filtering. One of the best approaches is hybrid filtering because hybrid filtering is a combination of several approaches that aim to cover the shortcomings of each approach. These deficiencies include: cold-start problem, sparsity problem data, scalability, and synonyms. This research aims to generate recommendation system using hybrid filtering by combine features of collaborative filtering and content-based filtering.The rest of the paper is organized as follows. The next section, we describe the related work regarding the topics, our proposed system is described in the third section. Fourth section explains the data and experiment setting, while the results and discussions of experiment are described in fifth section. Lastly, in the six section, we describe conclusions and future works.


The recommendation system is a system that aims to filter amount of information that will generate recommendations dynamically based on user preferences, interests, or behavior of an item [7 ] and most appealing to a particular user [10]. The basic idea is to utilize these various sources of data to infer customer interests [1]. There are three types of approaches that can be used in providing recommendations. Such approaches include content-based filtering, collaborative filtering, and hybrid filtering [7 ]. Among the three approaches, hybrid filtering is able to produce better recommendations because the approach combines two or more approaches such as content-based filtering and collaborative filtering [3] in order to maximize the advantages, they have in each approach [7 ].

According to Isinkaye, Folajimi, and Ojokoh [7], there are seven techniques in approaching hybrid filtering. These techniques include: •Weighted hybridization: weighted hybridization combines the results of different recommenders to generate a recommendation list or prediction by integrating the scores from each of the techniques in use by a linear formula. •Switching hybridization: the system swaps to one of the recommendation techniques according to a heuristic reflecting the recommender ability to produce a good rating.•Cascade hybridization: the cascade hybridization technique applies an iterative refinement process in constructing an order of preference among different items •Mixed hybridization: mixed hybrids combine recommendation results of different recommendation techniques at the same time instead of having just one recommendation per item •Feature combination: the features produced by a specific recommendation technique are fed into another recommendation technique •Feature augmentation: the technique makes use of the ratings and other information produced by the previous recommender and it also requires additional functionality from the recommender systems •Meta level: the internal model generated by one recommendation technique is used as input for another Ha and Lee [6] developed a new approach in creating a recommendation system.

This approach is the development of item based collaborative filtering. The purpose of this development is expected to overcome the insufficient data that is always faced by the collaborative filtering approach. This approach takes advantage of the relationships that form between one item and the other. The relationship calculates the value betweenness centrality, closeness centrality, and degree centrality. The indicator is used in determining the predicted value that is used as a measure in providing recommendations.Another case with research conducted by Najafabadi, Mahrin, Chuprat, and Sarkan [8]. This research tries to increase the value of accuracy in collaborative filtering. One of the problems of collaborative filtering approach is that the rating data collected is too low so the resulting recommendations do not produce good value. To overcome this problem, this research tries to modify data collected at preprocessing data stage by clustering process.

The results of the cluster data are used by the collaborative filtering approach to generate a set of recommendations.Aprilianti, Mahendra, and Budi [3] and Paradarami, Bastian, and Wightman [9] developed a recommendation system with a hybrid filtering approach. In the recommendation system developed by Aprilianti, Mahendra, and Budi [3], hybrid filtering techniques used are combining the results of recommendations from content-based filtering and collaborative filtering and then calculating the weight values for each item. These weights are used as predictive values to provide a set of recommendations to the target audience. Meanwhile, the hybrid filtering technique used by Paradarami, Bastian, and Wightman [9] is combining features derived from content based filteri ng and collaborative filtering. The merging feature generates a dataset which then creates a classification model to get predictive values on each item.According to Isinkaye, Folajimi, and Ojokoh [7], there are 3 approaches that can be used in generating recommendations. One of the most widely used approaches is collaborative filtering. There are two techniques used in this approach that are item based and user based collaborative filtering. The basis of these two techniques is to look for similarity values between one item / user and other items [1]. There are several problems encountered in using this approach: cold-start problem, sparsity problem data, scalability, and synonyms. In some studies, these shortcomings are solved by combining several approaches such as combining collaborative filtering and content-based filtering approaches [3] or resolved when Preprocessing data such as data clustering [8].


This research produced a recommendation system based on item and user similarity. The approach is built by combining features derived from content based filtering and collaborative filtering approaches. The merging of these features is used to generate two models that will be used by the system to generate a set of recommendations.Evaluation conducted on both systems shows that the system built by utilizing the similarity value of the restaurant is able to produce a better f1-measure value. Based on the amount of data used in the construction of a model, the evaluation also shows that models built over a long time span are able to produce better F1-measure values. It can be concluded that the more incoming reviews data, the better the recommendations received by the target users. Based on the recommendations generated, the system is able to recommend restaurants that do not have reviews yet. This can help users who want to visit a new restaurant or do not have a review yet.For further research, it is expected to consider several features that can be used in building a model. These features include: the number of user’s review, the number of restaurant’s reviews, the average value a user gives in a review, or the average grade that a restaurant obtains from its service users. These features are expected to produce a better f1-measure value.One of the challenges in the recommendation system is the new user who has not provided a review on the online restaurant directory service. To address these challenges, further research can consider user behavior when users view certain restaurant pages or use cookies data stored in web applications. Hopefully, the data can replace the rating feature used in the collaborative filtering approach