BinaryConnect: Training Deep Neural Networks with binary weights during propagations

BinaryConnect: Training Deep Neural Networks with binary weights during propagations

18 Apr 2016 | Matthieu Courbariaux, Yoshua Bengio, Jean-Pierre David
BinaryConnect is a method for training deep neural networks (DNNs) with binary weights during forward and backward propagations, while retaining the precision of stored weights for gradient accumulation. This approach reduces the computational complexity of neural networks by replacing multiply-accumulate operations with simple additions, which are less resource-intensive. BinaryConnect acts as a regularizer, improving generalization and achieving near state-of-the-art results on permutation-invariant datasets such as MNIST, CIFAR-10, and SVHN. The method involves binarizing weights during propagation, either deterministically or stochastically, and using stochastic rounding to maintain precision. BinaryConnect is similar to dropout and dropconnect in that it introduces noise to weights, which helps in regularization. The weights are discretized using a hard sigmoid function, which is computationally efficient and effective in practice. During training, weights are binarized during forward and backward propagation but not during parameter updates, ensuring that the gradient descent process remains accurate. The real-valued weights are clipped to the [-1, 1] range after each update to prevent them from growing too large. This approach significantly reduces the number of multiplications required, making it more efficient for specialized hardware implementations. BinaryConnect has been tested on various datasets, including MNIST, CIFAR-10, and SVHN, where it achieved competitive performance with traditional methods. The stochastic version of BinaryConnect, which introduces randomness in weight discretization, was found to be an effective regularizer, improving generalization. The deterministic version of BinaryConnect also showed significant benefits in terms of reducing memory requirements and computational complexity. The results indicate that BinaryConnect can be a valuable tool for training DNNs with binary weights, offering both computational efficiency and improved generalization. Future work may focus on extending these results to other models and datasets, and exploring the possibility of eliminating multiplications entirely during training.BinaryConnect is a method for training deep neural networks (DNNs) with binary weights during forward and backward propagations, while retaining the precision of stored weights for gradient accumulation. This approach reduces the computational complexity of neural networks by replacing multiply-accumulate operations with simple additions, which are less resource-intensive. BinaryConnect acts as a regularizer, improving generalization and achieving near state-of-the-art results on permutation-invariant datasets such as MNIST, CIFAR-10, and SVHN. The method involves binarizing weights during propagation, either deterministically or stochastically, and using stochastic rounding to maintain precision. BinaryConnect is similar to dropout and dropconnect in that it introduces noise to weights, which helps in regularization. The weights are discretized using a hard sigmoid function, which is computationally efficient and effective in practice. During training, weights are binarized during forward and backward propagation but not during parameter updates, ensuring that the gradient descent process remains accurate. The real-valued weights are clipped to the [-1, 1] range after each update to prevent them from growing too large. This approach significantly reduces the number of multiplications required, making it more efficient for specialized hardware implementations. BinaryConnect has been tested on various datasets, including MNIST, CIFAR-10, and SVHN, where it achieved competitive performance with traditional methods. The stochastic version of BinaryConnect, which introduces randomness in weight discretization, was found to be an effective regularizer, improving generalization. The deterministic version of BinaryConnect also showed significant benefits in terms of reducing memory requirements and computational complexity. The results indicate that BinaryConnect can be a valuable tool for training DNNs with binary weights, offering both computational efficiency and improved generalization. Future work may focus on extending these results to other models and datasets, and exploring the possibility of eliminating multiplications entirely during training.
Reach us at info@study.space
Understanding BinaryConnect%3A Training Deep Neural Networks with binary weights during propagations