  Training deep networks that generalize to a wide range of variations in test
data is essential to building accurate and robust image classifiers. One
standard strategy is to apply data augmentation to synthetically enlarge the
training set. However, data augmentation is essentially a brute-force method
which generates uniform samples from some pre-defined set of transformations.
In this paper, we propose a principled approach to train networks with
significantly improved resistance to large variations between training and
testing data. This is achieved by embedding a learnable transformation module
into the introspective network, which is a convolutional neural network (CNN)
classifier empowered with generative capabilities. Our approach alternates
between synthesizing pseudo-negative samples and transformed positive examples
based on the current model, and optimizing model predictions on these
synthesized samples. Experimental results verify that our approach
significantly improves the ability of deep networks to resist large variations
between training and testing data and achieves classification accuracy
improvements on several benchmark datasets, including MNIST, affNIST, SVHN,
CIFAR-10 and miniImageNet.
