A Push-Pull Layer Improves Robustness of Convolutional Neural Networks
This addresses robustness issues in CNNs for image classification, but it is incremental as it modifies existing architectures with a biologically-inspired layer.
The authors tackled the problem of improving robustness of Convolutional Neural Networks to noise perturbations in input images by proposing a push-pull layer, resulting in considerable robustness gains while maintaining state-of-the-art performance on original classification tasks.
We propose a new layer in Convolutional Neural Networks (CNNs) to increase their robustness to several types of noise perturbations of the input images. We call this a push-pull layer and compute its response as the combination of two half-wave rectified convolutions, with kernels of opposite polarity. It is based on a biologically-motivated non-linear model of certain neurons in the visual system that exhibit a response suppression phenomenon, known as push-pull inhibition. We validate our method by substituting the first convolutional layer of the LeNet-5 and WideResNet architectures with our push-pull layer. We train the networks on nonperturbed training images from the MNIST, CIFAR-10 and CIFAR-100 data sets, and test on images perturbed by noise that is unseen by the training process. We demonstrate that our push-pull layers contribute to a considerable improvement in robustness of classification of images perturbed by noise, while maintaining state-of-the-art performance on the original image classification task.