Updates on 2024/6/9

Sparse autoencoding is Bayesian program induction

  • The sparse code is the program
  • Encoding is program synthesis
  • Decoding is program interpretation

Training optimizes the system for the task of program synthesis with a prior that favors sparse, well-factored solutions with few distinct parts through regularization or Bayesian inductive bias.

Intelligence is both a sparse representation learning problem and a Bayesian program synthesis problem; both approaches try to grow a simplest possible factoring of observations into features/abstractions and iteratively explore a design space guided by their priors over the learned features. In neural networks, iteration takes the form of training steps; in Bayesian program induction, DreamCoder-style wake-sleep cycles.

LLM agents, RLHF, MuZero, and genetic evolution algorithms are all special cases of this general framework.