Knowledge Refactoring for Inductive Program Synthesis
Authors: Sebastijan Dumancic, Tias Guns, Andrew Cropper7271-7278
AAAI 2021 | Conference PDF | Archive PDF | Plain Text | LLM Run Details
| Reproducibility Variable | Result | LLM Response |
|---|---|---|
| Research Type | Experimental | We evaluate our approach on two domains: building Lego structures and real-world string transformations. Our experiments show that learning from refactored knowledge can improve predictive accuracies fourfold and reduce learning times by half. |
| Researcher Affiliation | Academia | 1 KU Leuven, Belgium 2 Oxford University, United Kingdom |
| Pseudocode | No | The paper describes the system and its components in detail but does not include any explicit pseudocode or algorithm blocks. |
| Open Source Code | Yes | We introduce Knorf1, a system which solves the refactoring problem using constraint optimisation. A key feature of Knorf is that, rather than simply removing knowledge, it also introduces new knowledge through predicate invention. We evaluate our approach on two domains: building Lego structures and real-word string transformations. 1Code available at https://github.com/sebdumancic/knorf aaai21 |
| Open Datasets | Yes | We use 130 string transformation tasks from (Cropper). The full citation for Cropper is in the references: 'Cropper, A. ???? Playgol: Learning Programs Through Play. In (IJCAI-19), 6074 6080.' |
| Dataset Splits | No | For each of the 130 tasks, we sample uniformly without replacement 5 examples as training examples and use the remaining 5 as test examples. The paper does not mention a separate validation set. |
| Hardware Specification | Yes | All experiments are run on a CPU with 3.20 GHz and 16 Gb RAM. We have allowed CP-SAT so use 8 parallel threads. |
| Software Dependencies | No | The paper mentions using 'the CP-SAT solver (Perron and Furnon 2019)' but does not provide a specific version number for this solver or any other software dependencies. |
| Experiment Setup | Yes | To build the support clause space, we set the minimum and maximum length of support clauses to 2 and 3 respectively. We impose no limit on the number of layers. When solving the COP, we impose a timeout of 90 minutes. If refactoring takes longer, we stop the search and take the best solution found so far. We additionally impose a constraint that the refactored BK cannot have more predicates than the original BK. We give Metagol a learning timeout of 60 seconds per task. |