ChatPaper.aiChatPaper

Is Programmeren door Voorbeeld opgelost door LLM's?

Is Programming by Example solved by LLMs?

June 12, 2024
Auteurs: Wen-Ding Li, Kevin Ellis
cs.AI

Samenvatting

Programmeren-voorbeelden (PvV) heeft als doel een algoritme te genereren op basis van invoer-uitvoervoorbeelden. Dergelijke systemen zijn zowel praktisch als theoretisch belangrijk: vanuit het perspectief van eindgebruikers worden ze ingezet voor miljoenen mensen, en vanuit een AI-perspectief komt PvV overeen met een zeer algemene vorm van few-shot inductieve inferentie. Gezien het succes van Large Language Models (LLM's) in code-generatietaken, onderzoeken we hier in hoeverre kan worden gesteld dat LLM's PvV hebben 'opgelost'. We experimenteren met klassieke domeinen zoals lijsten en strings, en een ongebruikelijk domein voor grafisch programmeren dat niet goed vertegenwoordigd is in typische vooraf getrainde data. We constateren dat vooraf getrainde modellen niet effectief zijn in PvV, maar dat ze kunnen worden gefinetuned voor veel hogere prestaties, mits de testproblemen binnen de distributie vallen. We analyseren empirisch wat deze modellen doet slagen en falen, en nemen stappen om te begrijpen hoe betere generalisatie buiten de distributie kan worden bereikt. Collectief suggereren deze resultaten dat LLM's aanzienlijke vooruitgang boeken bij het oplossen van de typische reeks PvV-taken, wat de flexibiliteit en toepasbaarheid van PvV-systemen potentieel vergroot, terwijl ook wordt geïdentificeerd op welke vlakken LLM's nog tekortschieten.
English
Programming-by-Examples (PBE) aims to generate an algorithm from input-output examples. Such systems are practically and theoretically important: from an end-user perspective, they are deployed to millions of people, and from an AI perspective, PBE corresponds to a very general form of few-shot inductive inference. Given the success of Large Language Models (LLMs) in code-generation tasks, we investigate here the extent to which LLMs can be said to have `solved' PBE. We experiment on classic domains such as lists and strings, and an uncommon graphics programming domain not well represented in typical pretraining data. We find that pretrained models are not effective at PBE, but that they can be fine-tuned for much higher performance, provided the test problems are in-distribution. We analyze empirically what causes these models to succeed and fail, and take steps toward understanding how to achieve better out-of-distribution generalization. Collectively these results suggest that LLMs make strong progress toward solving the typical suite of PBE tasks, potentially increasing the flexibility and applicability of PBE systems, while also identifying ways in which LLMs still fall short.
PDF131November 29, 2024