Learning to Learn Programs from Examples: Going Beyond Program Structure
Learning to Learn Programs from Examples: Going Beyond Program Structure
Kevin Ellis, Sumit Gulwani
Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence
Main track. Pages 1638-1645.
https://doi.org/10.24963/ijcai.2017/227
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.
Keywords:
Machine Learning: Semi-Supervised Learning
Multidisciplinary Topics and Applications: Intelligent User Interfaces