LGAICLJun 18, 2021

Leveraging Language to Learn Program Abstractions and Search Heuristics

arXiv:2106.11053v359 citations
Originality Incremental advance
AI Analysis

This work addresses the challenge of building interpretable and generalizable machine learning systems through program synthesis, offering incremental improvements in library learning and search efficiency for specific domains.

The paper tackles the problem of inductive program synthesis by introducing LAPS, a technique that uses natural language annotations to jointly learn program libraries and neurally-guided search models, resulting in higher-quality libraries and improved search efficiency and generalization across string editing, image composition, and abstract reasoning domains.

Inductive program synthesis, or inferring programs from examples of desired behavior, offers a general paradigm for building interpretable, robust, and generalizable machine learning systems. Effective program synthesis depends on two key ingredients: a strong library of functions from which to build programs, and an efficient search strategy for finding programs that solve a given task. We introduce LAPS (Language for Abstraction and Program Search), a technique for using natural language annotations to guide joint learning of libraries and neurally-guided search models for synthesis. When integrated into a state-of-the-art library learning system (DreamCoder), LAPS produces higher-quality libraries and improves search efficiency and generalization on three domains -- string editing, image composition, and abstract reasoning about scenes -- even when no natural language hints are available at test time.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes