I have come across two descriptions of what semisupervised learning is, where one would have a small set $\mathcal{L}$ of labeled data and a larger set $\mathcal{U}$ of unlabeled data. The first description says that one first trains the model on $\mathcal{L}$, applies the trained model on $\mathcal{U}$ so as to obtain labels for it, and then re-trains the model on the union of $\mathcal{L}$ and $\mathcal{U}$, where $\mathcal{U}$ is now also labeled. (For some reason, I feel that this method is risky if the initial training on $\mathcal{L}$ was not robust enough to be generalized to $\mathcal{L} \cup \mathcal{U}$.)

Unlike the above, the second description starts by clustering the entire data set $\mathcal{L} \cup \mathcal{U}$, and then, if I understand correctly, uses the labels from $\mathcal{L}$ to label the nearest neighbours in $\mathcal{U}$ as per the clustering outcome.

Are these two approaches equally valid and what are the pros and cons?

PS: In the particular classification problem I'm trying to solve using semisupervised learning, $\mathcal{L}$ only consists of one class (True). (I only have two classes: True or False. In other words, when I know something, I only know if it's True, I never know for certain if it's False.) Does this limitation make it hopelessly difficult to train a model or is there a way around it?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.