## 2 Materials and Methods
### Modelling
Next, \(P(A\ |\ B)\) is called the posterior probability, which is the probability of \(A\) happening given that \(B\) has occurred. Lastly, \(P(B\ |\ A)\) is called the likelihood probability, which denotes the probability of \(B\) happening given that \(A\) is true [34]. According to the definition given in [34], the Bayes theorem calculates the posterior probability by dividing the product of the likelihood and prior probability by the marginal probability. The Naive Bayes algorithm does not depend on the presence of other parameters, and that is why it is called naive; it can be represented as Equation (2), while Equation (3) displays another expression of the formula, and Equation (4) removes the constant denominator [34]. \[P(A|B_{1}\ldots B_{n})=\frac{P(B_{1}|A)\ P(B_{2}|A)\ldots\ P(B_{n}|A)\ P(A)}{P (B_{1})\ P(B_{2})\ldots\ P(B_{n})} \tag{2}\]  
\[P(A|B_{1}\ldots B_{n})=\frac{P(A)\prod_{i=1}^{n}P(B_{i}|A)}{P(B_{1})\ P(B_{2}) \ldots\ P(B_{n})} \tag{3}\]  
\[P(A|B_{1}\ldots B_{n})\propto P(A)\prod_{i=1}^{n}P(B_{i}|A) \tag{4}\]  
To reach the highest probability amongst the calculated results, the following formula was used [34]. \[A=argmax_{A}P(A)\prod_{i=1}^{n}P(B_{i}|A) \tag{5}\]  
The Naive Bayes algorithm has been utilized by several disease prediction models [11; 12; 13; 14], and achieves competitive accuracy in performing sentiment analysis [32; 34]. 4. Support Vector Machine  
The SVM is preferred by data scientists because it can achieve good performance in generalization without the need of former knowledge or experience [35]. The SVM algorithm makes use of a hyperplane that separates the instances, putting the same classes in the same division while maximizing each group's distance from the dividing hyperplane. [PERSON], in his book entitled \"The Nature of Statistical Learning Theory\", stated that a hyperplane is used to minimize errors arising in separating the instances according to their respective classes [36]. 5. k-Nearest Neighbors  
k-NN is one of the simplest and oldest supervised machine learning algorithms used in classification; it classifies a given instance via the majority of the classes among its \(k\)-nearest neighbors found in the dataset [37]. This algorithm relies on the distance metric used to determine the nearest neighbors of the given instance, and the most commonly used metric is the Euclidean distance, which is expressed in the following formula:  
Figure 6.0  
where an example is defined as a vector \(x=(a_{1},\,a_{2},\,a_{3},\,\ldots,\,a_{n})\), \(n\) is the number of the example's attributes, \(a_{r}\) is \(r\)th attribute of the example and its weight is referred to as \(w_{r}\), and \(d\big{(}x_{i},x_{j}\big{)}\) are the two examples. To compute the class label of an example, the following formula is used [37]:  
\[y(d_{i})= \begin{array}{c}arg\underset{k}{max}\\ \end{array} \sum_{x_{j}\in\,kNN}y\big{(}x_{j},c_{k}\big{)} \tag{7}\]  
where \(d_{i}\) is the example by which the algorithm will determine the class in which it belongs, the term \(x_{j}\) is one of the k-NNs present in dataset, and \(y\big{(}x_{j},c_{k}\big{)}\) indicates whether the \(x_{j}\) belongs to the class \(c_{k}\). The result of Equation (7) is the class that has the most members of the k-NN, and is also the class wherein the example belongs [37]. Euclidean distance is mostly used as a default distance in k-NN classification or k-means clustering to determine the \"k closest points\" of an example [38].