Sparseout: Controlling Sparsity in Deep Networks
arXiv:1904.08050 · doi:10.1007/978-3-030-18305-9_24
Abstract
Dropout is commonly used to help reduce overfitting in deep neural networks. Sparsity is a potentially important property of neural networks, but is not explicitly controlled by Dropout-based regularization. In this work, we propose Sparseout a simple and efficient variant of Dropout that can be used to control the sparsity of the activations in a neural network. We theoretically prove that Sparseout is equivalent to an penalty on the features of a generalized linear model and that Dropout is a special case of Sparseout for neural networks. We empirically demonstrate that Sparseout is computationally inexpensive and is able to control the desired level of sparsity in the activations. We evaluated Sparseout on image classification and language modelling tasks to see the effect of sparsity on these tasks. We found that sparsity of the activations is favorable for language modelling performance while image classification benefits from denser activations. Sparseout provides a way to investigate sparsity in state-of-the-art deep learning models. Source code for Sparseout could be found at \url{https://github.com/najeebkhan/sparseout}.
Code: https://github.com/najeebkhan/sparseout
References in corpus (10)
- Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift
- Dropout as a Bayesian Approximation: Representing Model Uncertainty in Deep Learning
- A Critical Review of Recurrent Neural Networks for Sequence Learning
- cuDNN: Efficient Primitives for Deep Learning
- Learning both Weights and Connections for Efficient Neural Networks
- Pointer Sentinel Mixture Models
- Regularizing and Optimizing LSTM Language Models
- Dropout Training as Adaptive Regularization
- Learning Sparse Neural Networks through Regularization
- Sparse Activity and Sparse Connectivity in Supervised Learning