Case2Code: Aprendizado de Raciocínio Indutivo com Dados Sintéticos
Case2Code: Learning Inductive Reasoning with Synthetic Data
July 17, 2024
Autores: Yunfan Shao, Linyang Li, Yichuan Ma, Peiji Li, Demin Song, Qinyuan Cheng, Shimin Li, Xiaonan Li, Pengyu Wang, Qipeng Guo, Hang Yan, Xipeng Qiu, Xuanjing Huang, Dahua Lin
cs.AI
Resumo
O raciocínio complexo é uma habilidade impressionante demonstrada por grandes modelos de linguagem (LLMs). A maioria dos LLMs é habilidosa em raciocínio dedutivo, como a indução de pensamento em cadeia ou o uso iterativo de ferramentas para resolver tarefas desafiadoras passo a passo. Neste artigo, esperamos focar na avaliação e no ensino de LLMs para realizar raciocínio indutivo, ou seja, os LLMs devem inferir regras subjacentes observando exemplos ou transformações sequenciais. No entanto, coletar dados indutivos gerados por humanos em grande escala e diversificados é desafiador. Concentramo-nos na síntese de dados no domínio do código e propomos uma tarefa Case2Code explorando a expressividade e correção dos programas. Especificamente, coletamos um conjunto diversificado de programas executáveis, sintetizamos transformações de entrada e saída para cada programa e forçamos os LLMs a inferir as implementações de código subjacentes com base nos casos de I/O sintéticos. Primeiramente, avaliamos LLMs representativos na tarefa sintetizada Case2Code e demonstramos que a indução de caso para código é desafiadora para LLMs. Em seguida, sintetizamos amostras de treinamento Case2Code em grande escala para treinar LLMs a realizar raciocínio indutivo. Os resultados experimentais mostram que tal treinamento de indução beneficia não apenas o desempenho em Case2Code distribuído, mas também aprimora várias habilidades de codificação dos LLMs treinados, demonstrando o grande potencial de aprendizado de raciocínio indutivo por meio de dados sintéticos.
English
Complex reasoning is an impressive ability shown by large language models
(LLMs). Most LLMs are skilled in deductive reasoning, such as chain-of-thought
prompting or iterative tool-using to solve challenging tasks step-by-step. In
this paper, we hope to focus on evaluating and teaching LLMs to conduct
inductive reasoning, that is, LLMs are supposed to infer underlying rules by
observing examples or sequential transformations. However, collecting
large-scale and diverse human-generated inductive data is challenging. We focus
on data synthesis in the code domain and propose a Case2Code task by
exploiting the expressiveness and correctness of programs. Specifically, we
collect a diverse set of executable programs, synthesize input-output
transformations for each program, and force LLMs to infer the underlying code
implementations based on the synthetic I/O cases. We first evaluate
representative LLMs on the synthesized Case2Code task and demonstrate that the
Case-to-code induction is challenging for LLMs. Then, we synthesize large-scale
Case2Code training samples to train LLMs to perform inductive reasoning.
Experimental results show that such induction training benefits not only in
distribution Case2Code performance but also enhances various coding abilities
of trained LLMs, demonstrating the great potential of learning inductive
reasoning via synthetic data.