Semi-supervised Learning Using Variational Autoencoder - A Cluster Based Approach
摘要
The successful application of deep neural networks for solving complex tasks like image classification, object detection and segmentation depends critically on the availability of large number of labelled training samples. To achieve good generalization for a reasonably complex model with about 60 million parameters, as in AlexNet, one needs about one million labelled training samples. In almost all practical applications, like natural image classification and segmentation, plenty of unlabelled samples are available but labelling these samples is a tedious manual task. We introduce a novel mechanism to automatically label all the samples in an unlabelled dataset. Starting with completely unlabelled dataset, an iterative algorithm incrementally assigns labels along with a confidence to all training samples. During each iteration, 10–30 new representative samples are generated in a latent space learned using a variational autoencoder and labels for these samples are obtained from a human expert. The proposed idea is demonstrated on MNIST dataset without using the labels provided in the dataset. At regular intervals of training, the low dimensional latent vectors are clustered and only cluster centers are annotated. The manual labels of cluster centers are propagated to other samples in the cluster based on the distance and a confidence function. The loss function in successive training is modified to incorporate the manual information provided. We run multiple experiments with different choices of clustering algorithm, confidence function and distance metric and compare the results. With GMM clustering, best classification accuracy of 93.9% was obtained on MNIST test images after 5 iterations.