# Recommendation System for a Delivery Food Application Based on Number of Orders
## 2 Literature Review
### Recommendation-System Approaches  
Recommendation systems typically target individuals and employ content-based recommendation and collaborative filtering techniques based on the individual's viewing, purchasing, or rating history [17]. Content-Based Filtering (CBF) is a method that uses the similarity between items--in this case, restaurants--to recommend related elements according to the specific users' preferences without considering information from other users (see [5; 27; 30] for examples). Furthermore, in Collaborative Filtering (CF), the core component is to design a mechanism to predict preferences based on similar groups of users or items [12] (see [20; 21; 25; 31; 32; 33; 34; 35] for examples). Content-Based Filtering (CBF) is commonly used to generate recommendation systems based on their characteristics and users' particular preferences, generating accurate recommendations without considering the ratings and other users' predictions. In other words, this method recommends similar items to those the user has shown a proclivity for [27]. For example, [PERSON] et al. [5] recommended movies to the user, using CBF, by calculating the similarity between film pairs with the Cosine Similarity Measure to narrow down the possible recommendations. Furthermore, [PERSON] and [PERSON] [27] used CBF with a multi-attribute network to recommend movies by computing the Dice similarity method to calculate similarities and generate clusters to give the user an accurate recommendation. [PERSON] et al. [36] constructed a hybrid recommendation system combined with a content-based recommendation approach, using the Cosine Similarity Measure to calculate similarities between users and food and the Pearson Similarity Method to find similarities among users. On the other hand, Collaborative Filtering (CF) is often used, and according to [PERSON] [37], it is still in the mainstream of research for this type of system. CF uses similarities between users and items simultaneously to provide recommendations. The two primary areas of CF are neighborhood methods and latent factor models [28]. The first one focuses on computing similarities between items or users and predicts user preferences based on the neighborhood of users or items. Similar to the documents presented in [25; 38], our proposal uses neighborhood techniques. In contrast, latent-factor-based methods use known ratings given by users to acquire an approximate model [39]. Those models characterize both items and users by vectors inferred from rating patterns. These models map users and items to a joint latent factor space so that the inner interactions are modeled. Some of the most successful realizations of latent factor models are based on matrix factorization [28]. [PERSON] et al. defined a matrix factorization model as follows. Each item (\(i\)) is associated with a vector (\(q_{i}\in\mathbb{R}^{d}\)), and each user (\(u\)) is associated with a vector (\(p_{u}\in\mathbb{R}^{d}\)), where \(d\) represents the dimensionality of the latent factor space. The dot product, \(\langle\overrightarrow{q_{i}},\overrightarrow{p_{u}}\rangle\), captures the interaction between the user (\(u\)) and item (\(i\)), or, in other words, the user's overall interest in the item's characteristics. This approximates the user's (\(u\)'s) rating of the item (\(i\)) denoted by Equation (1). After the recommendation system completes mapping users and items to vectors, it can easily estimate the rating that a user will give to any item by using Equation (1). There are different techniques for calculating the vectors of matrix factorization. For example, some are based on Gradient Descent [39; 40; 41], and others on Neural Networks [26; 35; 42; 43]. \[\widehat{r_{iu}}=\langle q_{i},p_{u}\rangle \tag{1}\]  
Most recommendation systems, CBF or CF approaches, are tailored to predict the ratings that users give to items. Commonly, these ratings follow a scale, such as a 5-point scale.