ExeDec: Execution Decomposition for Compositional Generalization in Neural Program Synthesis

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Shi, Kensen, Hong, Joey, Deng, Yinlin, Yin, Pengcheng, Zaheer, Manzil, Sutton, Charles
Natura: Preprint
Pubblicazione: 2023
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866916235856314368
author Shi, Kensen
Hong, Joey
Deng, Yinlin
Yin, Pengcheng
Zaheer, Manzil
Sutton, Charles
author_facet Shi, Kensen
Hong, Joey
Deng, Yinlin
Yin, Pengcheng
Zaheer, Manzil
Sutton, Charles
contents When writing programs, people have the ability to tackle a new complex task by decomposing it into smaller and more familiar subtasks. While it is difficult to measure whether neural program synthesis methods have similar capabilities, we can measure whether they compositionally generalize, that is, whether a model that has been trained on the simpler subtasks is subsequently able to solve more complex tasks. In this paper, we characterize several different forms of compositional generalization that are desirable in program synthesis, forming a meta-benchmark which we use to create generalization tasks for two popular datasets, RobustFill and DeepCoder. We then propose ExeDec, a novel decomposition-based synthesis strategy that predicts execution subgoals to solve problems step-by-step informed by program execution at each step. When used with Transformer models trained from scratch, ExeDec has better synthesis performance and greatly improved compositional generalization ability compared to baselines. Finally, we use our benchmarks to demonstrate that LLMs struggle to compositionally generalize when asked to do programming-by-example in a few-shot setting, but an ExeDec-style prompting approach can improve the generalization ability and overall performance.
format Preprint
id arxiv_https___arxiv_org_abs_2307_13883
institution arXiv
publishDate 2023
record_format arxiv
spellingShingle ExeDec: Execution Decomposition for Compositional Generalization in Neural Program Synthesis
Shi, Kensen
Hong, Joey
Deng, Yinlin
Yin, Pengcheng
Zaheer, Manzil
Sutton, Charles
Machine Learning
Programming Languages
When writing programs, people have the ability to tackle a new complex task by decomposing it into smaller and more familiar subtasks. While it is difficult to measure whether neural program synthesis methods have similar capabilities, we can measure whether they compositionally generalize, that is, whether a model that has been trained on the simpler subtasks is subsequently able to solve more complex tasks. In this paper, we characterize several different forms of compositional generalization that are desirable in program synthesis, forming a meta-benchmark which we use to create generalization tasks for two popular datasets, RobustFill and DeepCoder. We then propose ExeDec, a novel decomposition-based synthesis strategy that predicts execution subgoals to solve problems step-by-step informed by program execution at each step. When used with Transformer models trained from scratch, ExeDec has better synthesis performance and greatly improved compositional generalization ability compared to baselines. Finally, we use our benchmarks to demonstrate that LLMs struggle to compositionally generalize when asked to do programming-by-example in a few-shot setting, but an ExeDec-style prompting approach can improve the generalization ability and overall performance.
title ExeDec: Execution Decomposition for Compositional Generalization in Neural Program Synthesis
topic Machine Learning
Programming Languages
url https://arxiv.org/abs/2307.13883