SkillAgentSearch skills...

LearningSimpleAlgorithms

We present an approach for learning simple algorithms such as copying, multi-digit addition and single digit multiplication directly from examples. Our framework consists of a set of interfaces, accessed by a controller. Typical interfaces are 1-D tapes or 2-D grids that hold the input and output data. For the controller, we explore a range of neural network-based models which vary in their ability to abstract the underlying algorithm from training instances and generalize to test examples with many thousands of digits. The controller is trained using Q-learning with several enhancements and we show that the bottleneck is in the capabilities of the controller rather than in the search incurred by Q-learning.

Install / Use

/learn @facebookarchive/LearningSimpleAlgorithms
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Learning Simple Algorithms from Examples

This is a framework to learn simple algorithms such as copying, multi-digit addition and single digit multiplication directly from examples. Our framework consists of a set of interfaces, accessed by a controller. Typical interfaces are 1-D tapes or 2-D grids that hold the input and output data. The paper can be found at: http://arxiv.org/abs/1511.07275 . <br /> Moreover, the accompanying video https://www.youtube.com/watch?v=GVe6kfJnRAw gives a concise overview of our approach.

This software runs in Torch. Type <br />

th main.lua

to train the model for the addition task.

The model generates traces of the intermediate solutions while training (in directory ./movie/). They can be displayed by calling:

python play.py

View on GitHub
GitHub Stars98
CategoryEducation
Updated2mo ago
Forks23

Languages

Lua

Security Score

80/100

Audited on Jan 6, 2026

No findings