Learning to Learn Programs from Examples: Going Beyond Program Structure

Abstract

Programming-by-example technologies let end users construct and run new programs by providing examples of the intended program behavior. But, the few provided examples seldom uniquely determine the intended program. Previous approaches to picking a program used a bias toward shorter or more naturally structured programs. Our work here gives a machine learning approach for learning to learn programs that departs from previous work by relying upon features that are independent of the program structure, instead relying upon a learned bias over program behaviors, and more generally over program execution traces. Our approach leverages abundant unlabeled data for semisupervised learning, and incorporates simple kinds of world knowledge for common-sense reasoning during program induction. These techniques are evaluated in two programming-by-example domains, improving the accuracy of program learners.

Cite

Text

Ellis and Gulwani. "Learning to Learn Programs from Examples: Going Beyond Program Structure." International Joint Conference on Artificial Intelligence, 2017. doi:10.24963/IJCAI.2017/227

Markdown

[Ellis and Gulwani. "Learning to Learn Programs from Examples: Going Beyond Program Structure." International Joint Conference on Artificial Intelligence, 2017.](https://mlanthology.org/ijcai/2017/ellis2017ijcai-learning/) doi:10.24963/IJCAI.2017/227

BibTeX

@inproceedings{ellis2017ijcai-learning,
  title     = {{Learning to Learn Programs from Examples: Going Beyond Program Structure}},
  author    = {Ellis, Kevin and Gulwani, Sumit},
  booktitle = {International Joint Conference on Artificial Intelligence},
  year      = {2017},
  pages     = {1638-1645},
  doi       = {10.24963/IJCAI.2017/227},
  url       = {https://mlanthology.org/ijcai/2017/ellis2017ijcai-learning/}
}