Join 10350+ others. No spamming.
I promise!

Follow us at github.



wojciechz / learning_to_execute


Learning to Execute


Learning to Execute

This software allows to train a Recurrent Neural Network (RNN) with Long-Short Term Memory (LSTM) units on short snippets of python code. The Network is trained to predict the output of the generated programs.


Please install Torch 7 with the cunn package. Moreover, our software requires an NVIDIA GPU.

To execute the program, call:

torch main.lua

This program starts training the LSTM and displays intermediate results. main.lua can be executed with the following options:

torch main.lua -gpuidx 1 -target_length 6 -target_nesting 3
  • gpuidx: chooses a GPU for the program
  • target_length: is a maximum number of digits in every number generated in test programs in a test dataset.
  • target_nesting: is the depth of the nesting in the generated programs in the test dataset.

Moreover, the command

torch data.lua

verifies that training data is correct by evaluating 1000 samples with a python interpreter (python2.7 is required).

More information about the scientific work is provided at

This software is located at