LGNENov 25, 2015

Neural GPUs Learn Algorithms

arXiv:1511.08228v3393 citations
Originality Highly original
AI Analysis

This addresses the challenge of training deep, sequential neural networks for algorithmic tasks, offering a more efficient and scalable solution for machine learning applications that require handling inputs of arbitrary size.

The paper tackles the problem of learning algorithms from examples by introducing the Neural GPU, a highly parallel and computationally universal architecture that overcomes the sequential limitations of Neural Turing Machines. It demonstrates successful generalization from training on short instances to long ones, achieving zero errors on tasks like long addition and multiplication of binary numbers up to 20 bits and beyond.

Learning an algorithm from examples is a fundamental problem that has been widely studied. Recently it has been addressed using neural networks, in particular by Neural Turing Machines (NTMs). These are fully differentiable computers that use backpropagation to learn their own programming. Despite their appeal NTMs have a weakness that is caused by their sequential nature: they are not parallel and are are hard to train due to their large depth when unfolded. We present a neural network architecture to address this problem: the Neural GPU. It is based on a type of convolutional gated recurrent unit and, like the NTM, is computationally universal. Unlike the NTM, the Neural GPU is highly parallel which makes it easier to train and efficient to run. An essential property of algorithms is their ability to handle inputs of arbitrary size. We show that the Neural GPU can be trained on short instances of an algorithmic task and successfully generalize to long instances. We verified it on a number of tasks including long addition and long multiplication of numbers represented in binary. We train the Neural GPU on numbers with upto 20 bits and observe no errors whatsoever while testing it, even on much longer numbers. To achieve these results we introduce a technique for training deep recurrent networks: parameter sharing relaxation. We also found a small amount of dropout and gradient noise to have a large positive effect on learning and generalization.

Code Implementations5 repos
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes