Self-Training
Self-training is a very intuitive approach to semi-supervised classification, based on an extensive application of both the smoothness and cluster assumptions. Self-training is generally a valid choice when the labeled dataset contains enough information about the underlying data-generating process (that is, a CV shows a relatively high accuracy) and the unlabeled sample is assumed to be responsible only for a fine-tuning of the algorithm. Whenever this condition is not met, Self-training cannot be chosen, because it heavily relies on the completeness of the labeled sample.
Self-Training theory
Suppose we have a dataset of labeled samples {XL, YL}, and assume that it has been drawn uniformly from a data generating process pdata. Moreover, there's another set of unlabeled data points XU, which, of course, is assumed to have the same distribution of XL. Let's suppose that a classifier is trained using the first labeled dataset (that is, the initial...