Spatial Transformer Networks
Max Jaderberg, Karen Simonyan, Andrew Zisserman, Koray Kavukcuoglu
TL;DR
CNNs struggle with spatial invariance without costly depth or pooling. The Spatial Transformer introduces a differentiable, input-conditioned module (localisation network, parameterised grid, and differentiable sampler) that warps feature maps to a canonical pose or focus region, trained end-to-end. Empirical results show state-of-the-art performance on distorted MNIST, SVHN, and improved fine-grained bird classification by learning to crop, rotate, and align regions or parts without extra supervision. This plug-in mechanism enables attention and pose normalization within standard architectures, with potential extensions to 3D and recurrent models.
Abstract
Convolutional Neural Networks define an exceptionally powerful class of models, but are still limited by the lack of ability to be spatially invariant to the input data in a computationally and parameter efficient manner. In this work we introduce a new learnable module, the Spatial Transformer, which explicitly allows the spatial manipulation of data within the network. This differentiable module can be inserted into existing convolutional architectures, giving neural networks the ability to actively spatially transform feature maps, conditional on the feature map itself, without any extra training supervision or modification to the optimisation process. We show that the use of spatial transformers results in models which learn invariance to translation, scale, rotation and more generic warping, resulting in state-of-the-art performance on several benchmarks, and for a number of classes of transformations.
