Share your thoughts, 1 month free Claude Pro on usSee more
WorkDL logo mark

Searching Latent Program Spaces

About

General intelligence requires systems that acquire new skills efficiently and generalize beyond their training distributions. Although program synthesis approaches have strong generalization power, they face scaling issues due to the large combinatorial spaces that quickly render them impractical, requiring human-generated DSLs or pre-trained priors to narrow this search space. On the other hand, deep learning methods have had high successes, but they lack structured test-time adaptation and rely on heavy stochastic sampling or expensive gradient updates for fine-tuning. In this work, we propose the Latent Program Network (LPN), a novel architecture that builds in test-time search directly into neural models. LPN learns a latent space of implicit programs -- neurally mapping inputs to outputs -- through which it can search using gradients at test time. LPN combines the adaptability of symbolic approaches and the scalability of neural methods. It searches through a compact latent space at test time and bypasses the need for pre-defined domain-specific languages. On a range of programming-by-examples tasks, LPN either outperforms or matches performance compared to in-context learning and test-time training methods. Tested on the ARC-AGI benchmark, we demonstrate that LPN can both learn a compact program space and search through it at test time to adapt to novel tasks. LPN doubles its performance on out-of-distribution tasks when test-time search is switched on.

Matthew V Macfarlane, Clement Bonnet• 2024

Related benchmarks

TaskDatasetResultRank
Program InductionCustom Suite Comp-I ID
Accuracy100
9
Program InductionCustom Suite Comp-I OOD
Accuracy29
9
Program InductionCustom Suite Shift-L ID
Accuracy100
9
Program InductionCustom Suite Shift-L OOD
Accuracy3
9
Program InductionCustom Suite Shift-P ID
Accuracy100
9
Program InductionCustom Suite Shift-P OOD
Accuracy0.00e+0
9
Showing 6 of 6 rows

Other info

Follow for update