# Machine Learning: Models, Challenges, and Research Directions
## 3 Machine Learning Models
### Semi-Supervised Learning  
Semi-supervised learning models are algorithms that learn from both labeled and unlabeled data. They use a small set of labeled examples alongside a larger pool of unlabeled data to make predictions or classifications. These models are advantageous when labeling data is costly or time-consuming, as it maximizes the utility of available resources. Semi-supervised learning often achieves higher accuracy than purely supervised models. However, it relies heavily on the quality of initial labeling, which can introduce bias, and may struggle with highly complex tasks that require a substantial amount of labeled data for effective training [60]. The following are the main mathematical concepts of semi-supervised learning models. In semi-supervised models, the set of training samples is defined as \(L=\left\{\left(X_{i},\,Y_{i}\right)\right|\,X_{i}\in\,R^{d},\,Y_{i}\in\,\Omega, \,i=1,\dots,L\right\}\). In these models, every sample consists of a dimensional feature space, \(d\), where \(X_{i}\) is the input sample, \(Y_{i}\) is the class label \(X_{i}\), and \(\Omega=\left\{T_{1},\dots\dots\dots\dots T_{K}\right\}\) presents the target classes. In addition, \(\mathrm{U}=\left\{X_{j}^{*}\right|\,j=1,\dots\dots,u\right\}\) is the set of unlabeled data. Semi-supervised models consist of different categories, namely dimensionality reduction, clustering, and regression. In this survey, we only focus on classification semi-supervised models. The main steps of semi-supervised models can be divided, as follows:  
Model training: The important process is to use unlabeled data samples to create a learner that performs better than the one based on labeled data. Thus, a set of learning training samples \(L\) is presented. Using these models, a loss functions can be applied to weights representing class labels and cluster assumptions (based on the defined model). Model Prediction: Once the model has been trained with the optimal parameters, it predicts the learners' accuracy over test data samples, which they exceed compared to learners using labeled data. Semi-supervised models are generally considered direct extensions of supervised models. These models can be divided into inductive- and transductive-based models, as illustrated in Figure 4. Table 3 outlines the characteristics, advantages, and disadvantages of these models. Inductive-based models can create predictions for any objects in the input  
Figure 3: Examples of ensemble supervised models. vector, while unlabeled data samples can be applied when training the classifier [75; 76]. When the training process concludes, the predictions of new samples will be completely independent of each other. In inductive-based models, cluster-label and pre-training-based models, the given data can be extracted from unlabeled data [77]. However, wrapper-based inductive models, including self-training, co-training, and boosting models, only use labeled data to train classifiers, and then use the predictions to create more labeled data. Afterwards, the unlabeled data are pseudo-labeled in a wrapper-supervised manner, and an inductive classifier is constructed. While, intrinsically semi-supervised models combine unlabeled data with optimization functions to extend the process of labeled data to unlabeled data [78]. Transductive models are another category of semi-supervised learning models that do not create a model for the whole input space. These models do not differentiate between the training and testing phases. They are widely performed based on the graph-based approach, in which data samples are connected via graphs, and their data are grown with the edges of the graph [79]. These graph-based models (generative, manifold, and maximum margin) deal with three phases, namely graph construction, weighting, and inference [80]. In graph construction, the set of input data is used to generate the graph where the nodes show data samples are connected via the edge [79; 81]. In graph weighting, the edges are weighted to show pairwise similarity between the data samples.