# Service Recommendations Using a Hybrid Approach in Knowledge Graph with Keyword Acceptance Criteria
## 1 Introduction
### Recommendation System  
A recommendation system is an algorithm that recommends the most relevant items, in our case, services, to specific users based on the user's preferences. A sound recommendation system usually combines different machine learning models. The most common recommendation models are location-based, collaborative filtering, and content-based filtering models. The location-based model recommends services to the users based on the user's location, the services closest to the user. Collaborative filtering gives recommendations based on the behaviors of a similar user or similar service. Content-based recommends services to users by analyzing the user preferences to find the best options. Recommendation systems (RS) gather data on user choices (e.g., books, applications, sites, hotels, restaurants, travel goals, and e-learning material). The data can be obtained explicitly (primarily by collecting users' reviews) or implicitly (mostly by observing users' actions, for example, applications downloaded, hotels visited, and books read). RS may use information based on demographic features of the user (like age, gender, location, nationality, etc.). Social data, like followers, followed, tweets, and posts, are typically used in Web 3.0. There is a growing tendency to use data from the Internet of things (e.g., GPS areas, RFID, real-time health signals). Items are recommended based on various factors like ratings, votes, and reviews from users; these have become a significant measure to extract feedback in the rapid growth of technology [6]. Pattern mining is one of the best approaches used in the system for checking out user interest directions so that a large portion of the transaction can be occupied [7]. We used the reviews posted on restaurants from the Yelp dataset to construct hybrid models for recommendations. First, we conducted data preprocessing steps in which we removed stop words, cleaned up the data, and underwent lemmatization, stemming, and normalizing of the data. We also conducted descriptive analyses for insights and learning the data better in a more interactive way. We adopted two approaches; one is a hybrid recommendation in a specific way. The second is a knowledge graph that we can consider a graph-based recommendation, discussed later. We proposed criteria for keyword acceptance using the DUSKG framework. The DUSKG [8] is a domain-oriented user and service interaction knowledge graph that contains the entities and their relationships. It is a specific data structure based on which different recommendation techniques are applied. One drawback of this proposed method is that as it is a domain-dependent keyword extraction--we must first find out the best set of chunking rules for that particular domain to extract keywords and then apply recommendation techniques. One of the essential factors to growing a business is the recommendation of the service. What if the seller already knows what product the customer likes or what service a customer wants; this can affect the business growth. One of the recent works on recommendation systems based on the knowledge graph recommends items using the existing recommendation techniques. However, there is a significant issue that needs addressing in domain-independent keyword extraction. Therefore, we proposed a chunking-based keyword extraction method. Our significant contribution is a keyword extraction method to know user interests better and the relationship between users and restaurants. In [8], authors use rapid automated keyword extraction (RAKE), a domain-independent and language-independent method to extract keywords from review text and apply pruning rules afterward. We observe that this extracts many irrelevant keywords and rejects many relevant keywords from the recommendation process. A large number of keywords causes a large knowledge graph that requires high computational resources and space to run recommendation techniques. We consider keyword acceptance criteria rather than rejecting.