## 3 Methodology
### ML Classifiers  
Text classification generally bifurcates (divides into categories) textual data according to previously known information; it is a supervised learning approach. By integrating the features and extracting patterns common to each category from the training data, each testing instance's category is determined. Two steps make up the classification process. To assess the model's performance and accuracy, a classification ML technique is performed on the training dataset first, and the trained ML model is then verified against a labeled test dataset [60]. Naive Bayes (NB) technique is straightforward and has its root in [PERSON] theorem's conditional probability (i.e., the occurrence of an event A depends upon the occurrence of another event B). This method uses a probability table as the model, which is updated using training data. When looking up the category (label) probabilities to forecast label values (e.g., sadness, anger, etc. ), one must consult the \"probability table,\" which is based on its variable values. The fundamental presumption is conditional independence, which is why it is referred as \"naive\". The benefits of NB include easy implementation, good performance, requiring a small training set, handling the number of independent variables (predictors) and data points, being capable of multi-category classification problems, and making probabilistic predictions [61]. We have used two variants of NB: multinomial NB, and Gaussian NB. SVM [62] is capable of handling classification tasks. The decision boundary for this approach is the hyperplane (subspace in coordinate geometry), which must be determined. A decision boundary is required to divide a collection of objects into their many classes. If the items cannot be separated linearly, kernels--complex mathematical functions, must be used to separate the objects that belong to various classes. The goal of SVM is to accurately predict the classes using data points from the training set. SVM is advantageous to handle both unstructured (text) and structured data, and it has less likelihood of overfitting. With large data, it can scale up and usually provide the optimum results [61]. A decision tree [63] (DT) is a rule-based approach to estimating the values of the category (labels) in the classification task. This works on the mechanism of tree formation including root, leaf (where the final categories are assigned), and internal node connecting through branches. Generally, DT classifies the data points by arranging them according to the values of the variable from the root to a few leaf nodes. Branches of DT indicate the potential value for variables, nodes represent the choices (yes/no, true/false), and then the tree descends along the path that corresponds to the value of the resultant category [64]. Moreover, random forest [65] (RF) is based on the mechanism of ensemble learning that incorporates the implementation of various decision tree models to predict the outcome. Since RF uses many DTs under the hood, it is a powerful classification technique that guarantees optimum results. Logistic Regression [66] (LogReg) is used for the classification task and is often confused with the regression technique due to its name. This work on the mechanism of predicting the likelihood that an event will occur or not (in terms of 0 and 1). For instance, determining whether a tweet has sad emotions or happy emotions. The following benefits of logistic regression include ease of regularization, computational efficiency, and simple implementation. This can take a variable's value without feature scaling. The majority of the time, this method is employed to resolve issues of industrial scope. Because the result of logistic regression is a probability score, additional multicollinearity and minor data noise have little impact on the result [61]. K-nearest neighbor [67] (KNN) is known as a lazy learning technique that is non-parametric (has no prior assumptions for data). KNN is quite beneficial for real-time datasets.