Skip to content
Back to the collection

Learning to Execute

Wojciech Zaremba, Ilya Sutskever

2014 · arXiv

Read the paper
HN score
0
Mentions
4
Readers
4
Months
4
What’s in a score?

From the abstract

Recurrent Neural Networks (RNNs) with Long Short-Term Memory units (LSTM) are widely used because they are expressive and are easy to train. Our interest lies in empirically evaluating the expressiveness and the learnability of LSTMs in the sequence-to-sequence regime by training them to evaluate short computer programs, a domain that has traditionally been seen as too complex for neural networks. We consider a simple class of programs that can be evaluated with a single left-to-right pass using constant memory. Our main result is that LSTMs can learn to map the character-level representations of such programs to their correct outputs. Notably, it was necessary to use curriculum learning, and while conventional curriculum learning proved ineffective, we developed a new variant of curriculum learning that improved our networks' performance in all experimental conditions. The improved curriculum had a dramatic impact on an addition problem, making it possible to train an LSTM to add two 9-digit numbers with 99% accuracy.

Metadata: arXiv. Abstracts retain their original authors’ rights.

In the conversation

Original HN comments, with labels from simple text rules. A label describes the whole comment and may miss context or irony. Read the discussion to make up your own mind. About the labels

4 selected excerpts · 4 total mentions

Smerity
Neutral mention · rule
Whilst you are correct that the number of allowed computation steps is limited, LSTMs have still been used with success for such tasks. LSTMs have been used to perform addition with 99% accuracy^ on two 9-digit numbers[1]. The paper even shows that simple Python programs can be evaluated with some degree of accuracy. Remember that even if the number of computation steps is limited, there can be multiple layers ([1] uses 2) and each neuron unit can perform a computation ([1] uses 400 cells per layer). It only needs to learn how to be an ALU. The work is in fact done by one of the people who established the sequence to sequence framework, Sutskever, and is referenced in the Neural Conversational Model paper. ^ They use "teacher forcing" for evaluation which inflates the accuracy to some degree, but it's still quite impressive. [1]: http://arxiv.org/pdf/1410.4615v3.pdf
deepnet
Neutral mention · rule
In "Learning to Execute" by Zaremba & Sutskever http://arxiv.org/abs/1410.4615 An RNN learns snippets of python Their next paper is "Reinforcement Learning Neural Turing Machines" http://arxiv.org/abs/1505.00521 based on Graves "Neural Turing Machines" http://arxiv.org/abs/1410.5401, which attempts to infer algorithms from the result. In a lost BBC interview from 1951 Turing reputedly spoke of evolving cpu bitmasks for computation.
modeless
Neutral mention · rule
> has built some impressive predictive systems Do you have any links to examples? I'm not aware of any systems built with HTMs that I'd consider "impressive" relative to what ANNs are doing these days, e.g. learning to play Atari games by watching the screen [1], approaching human performance on object classification in unrestricted images [2], or learning to execute simple python programs by reading the source code [3]. [1] https://medium.com/the-physics-arxiv-blog/the-last-ai-breakt... [2] http://karpathy.github.io/2014/09/02/what-i-learned-from-com... [3] http://arxiv.org/abs/1410.4615

Keep following the thread.

More in Machine learning

More from the same topics.