Combining Induction and Transduction for Abstract Reasoning
This work addresses the challenge of abstract reasoning with limited data, which is incremental as it combines existing methods to improve performance on a specific benchmark.
The paper tackled the problem of learning from few examples by comparing inductive and transductive approaches on the ARC dataset, finding that inductive models excel at precise computations and composition, while transductive models handle perceptual concepts better, and ensembling them achieves near-human performance.
When learning an input-output mapping from very few examples, is it better to first infer a latent function that explains the examples, or is it better to directly predict new test outputs, e.g. using a neural network? We study this question on ARC by training neural models for induction (inferring latent functions) and transduction (directly predicting the test output for a given test input). We train on synthetically generated variations of Python programs that solve ARC training tasks. We find inductive and transductive models solve different kinds of test problems, despite having the same training problems and sharing the same neural architecture: Inductive program synthesis excels at precise computations, and at composing multiple concepts, while transduction succeeds on fuzzier perceptual concepts. Ensembling them approaches human-level performance on ARC.