Dreamdecompiler
Code for the paper 'Bayesian Program Learning by Decompiling Amortized Knowledge'.
Install / Use
/learn @abpalmarini/DreamdecompilerREADME
DreamDecompiler
A record of the code and experiments for the paper:
Alessandro B. Palmarini, Christopher G. Lucas, Siddharth N Proceedings of the 41st International Conference on Machine Learning, PMLR 235:39042-39055, 2024. [arXiv]
This repository contains a fork of the dreamcoder subfolder in the original DreamCoder repository. The changes, mainly located in dreamcoder/dreamdecompiler.py, integrate the alternative variants for dream decompiling (as presented in the paper) within the DreamCoder system.
Usage
To be used within the original DreamCoder repository.
To run on a new machine, you will need to do the following.
Create a shallow clone of the original repository:
git clone --depth 1 -b master https://github.com/ellisk42/ec.git
If you don't have ssh keys set up you will need to first change their .gitmodules file to contain the following:
[submodule "pregex"]
path = pregex
url = https://github.com/insperatum/pregex
branch = master
[submodule "pinn"]
path = pinn
url = https://github.com/insperatum/pinn
branch = master
[submodule "pyccg"]
path = pyccg
url = https://github.com/hans/pyccg
branch = master
Clone the submodules:
git submodule update --recursive --init
Remove the dreamcoder subdirectory and replace it with the modified version found in this repository:
rm -rf ec/dreamcoder
git clone https://github.com/abpalmarini/dreamdecompiler.git
mv dreamdecompiler/dreamcoder ec/
Follow the instructions provided in the original repository's README to setup the necessary dependencies.
To chunk with the DreamDecompiler-PC model, add flags --compressor ddc_vs --chunkWeighting raw --numConsolidate to any DreamCoder command. Remove --chunkWeighting raw to use DreamDecompiler-Avg.
The commands for the experiments mentioned in the paper can be found in experiments.sh.
Related Skills
proje
Interactive vocabulary learning platform with smart flashcards and spaced repetition for effective language acquisition.
YC-Killer
2.7kA library of enterprise-grade AI agents designed to democratize artificial intelligence and provide free, open-source alternatives to overvalued Y Combinator startups. If you are excited about democratizing AI access & AI agents, please star ⭐️ this repository and use the link in the readme to join our open source AI research team.
best-practices-researcher
The most comprehensive Claude Code skills registry | Web Search: https://skills-registry-web.vercel.app
groundhog
400Groundhog's primary purpose is to teach people how Cursor and all these other coding agents work under the hood. If you understand how these coding assistants work from first principles, then you can drive these tools harder (or perhaps make your own!).
