Making Neural Programming Architectures Generalize via Recursion

By Jon Z. Cai, Jonathon Cai, Richard Shin, Dawn Song. 2017

153 citations recorded by the source corpus.

Empirically, neural networks that attempt to learn programs from data have exhibited poor generalizability. Moreover, it has traditionally been difficult to reason about the behavior of these models beyond a certain level of input complexity. In order to address these issues, we propose augmenting neural architectures with a key abstraction: recursion. As an application, we implement recursion in the Neural Programmer-Interpreter framework on four tasks: grade-school addition, bubble sort, topological sort, and quicksort. We demonstrate superior generalizability and interpretability with small amounts of training data. Recursion divides the problem into smaller pieces and drastically reduces the domain of each neural network component, making it tractable to prove guarantees about the overall system's behavior. Our experience suggests that in order for neural architectures to robustly learn program semantics, it is necessary to incorporate a concept like recursion.

Subfields: Artificial Intelligence, Materials Chemistry, Natural Language Processing

How researchers see this paper

The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.

In Artificial Intelligence

  1. Sergey Levine
  2. Mohit Bansal
  3. Percy Liang
  4. Quoc V. Le
  5. Yoshua Bengio
  6. Jianfeng Gao
  7. Luke S. Zettlemoyer
  8. Ruslan Salakhutdinov

In Materials Chemistry

  1. Eric Eaton
  2. Jorge Armando Mendez Mendez
  3. Xinyun Chen
  4. Dawn Song
  5. Chang Liu
  6. Rishabh Singh
  7. Siva Reddy
  8. Pushmeet Kohli

In Natural Language Processing

  1. Mohit Bansal
  2. Percy Liang
  3. Luke S. Zettlemoyer
  4. Graham Neubig
  5. Jianfeng Gao
  6. Yejin Choi
  7. Quoc V. Le
  8. Dawn Song

Citations in the corpus