## 4 Model  
The modelling phase consists of applying different machine learning techniques to the dataset. The goal of the prediction is to create a model based on the students' current activities and accomplishments that attempts to predict learner failure and future performance. It is a typical classification problem, which a binary classification model or a binary classifier can solve in order to predict whether a student can complete the course or not. Nowadays, there are many different machine learning classification methods, which can be used in order to find a suitable predictive model [3]. Considering the requirements resulting from the main aim of the paper and related works [28], the following most adopted classifiers were finally applied:  
1. Logistic regression (LR) is a classification algorithm also known as logit regression, which can calculate a predicted probability for a dichotomous dependent variable based on one or more independent variables [7; 34]. 2. A decision tree (DT) is defined by recursively partitioning the input space and defining a local model in each resulting region of input space. This algorithm divides this complex classification task into a set of simple classification tasks [31]. 3. Naive Bayes classifier (NB) is a simple probabilistic classifier with strict feature independence assumptions based on [PERSON] theorem [4; 35]. 4. Support Vector Machine (SVM) was initially designed for binary classification by constructing or setting an ideal hyperplane that divides the dataset into classes [34]. 5. Random Forest (RF) is a technique that uses multiple decision trees designed to perform the estimate using bootstrapping, resampling, and then applying majority voting or averaging [2; 31]. 6. A neural network (NN) is a parallel processing system that takes advantage of the brain's structure and functions to maximize predictive accuracy. Deep learning NN takes data as input and then processes the data to compute the output across various layers [31; 33]. The main idea is to find the most suitable prediction model and compare the various prediction performance metrics of each applied classifiers. Hyperparameters were tuned using the grid search technique, which is widely used for finding out the best settings of parameters. Python programming language was used. Python offers rich and efficient libraries for applying machine learning methods like Pandas and Numpy libraries for data manipulation. Subsequently, the Scikit-learn library containing various set of supervised or unsupervised machine learning methods was used. Other libraries, Keras and Tensorflow, were used for constructing a neural network. Keras is an API for Tensorflow, making it easier to build NNs [32; 36]. Nowadays, there are available several low-code machine learning libraries that automate machine learning workflow. Their application in LA domain is not frequent. Therefore, considering the main aim of the article, which discuss the limitations of the application of the classifiers on the scarce educational dataset, several classifiers added using the PyCaret library [37]. It is challenging to create a suitable precise prediction point to identify students at risk of dropping out of a course if the dataset is smaller. The classification methods mentioned above were compared using data divided into training and testing sets. Testing and training sets were chosen randomly in order to obtain confidence intervals for all the following performance metrics [34]:  
_Accuracy_ is the overall accuracy rate or classification accuracy, and it is determined as follows:  
\[Accuracy=\ \frac{TP+TN}{TP+TN+FP+FN}\]_True positive rate (TP rate)_ or _recall_ is the proportion of real positives predicted to be positive. In this case study, the _recall_ was used to evaluate the completers. It is determined as follows:  
\[Recall=\frac{TP}{TP+FN}\]  
_True negative rate (TN rate)_ or _precision_ is the proportion of real negatives expected to be negative.