Restructure: descriptive tier and experiment names, paper/manuscript

- paper/pnas -> paper/manuscript (venue-neutral)
- configs/layer1 -> configs/inheritance, src/knowledge -> src/inheritance
  (imported as `inheritance`), make layer1 -> make inheritance; layer2 alias dropped
- inheritance and trained-network bundles named after the manuscript figure
  they feed (fig2_grounding_sweep, figS3_rebaselining, ...), or descriptively
  where they feed none; configs keep their `experiment:` value so parquet
  hashes are unchanged, only output.dir moves
- figure scripts, SI figure sources, notebooks, REPRODUCING.md, README and the
  SI Methods/tables updated; make clean no longer deletes tracked manifests;
  reproduce.sh hashes the s{seed}/ layouts too

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y64o8FKP7rCuXzC48pxpMm
This commit is contained in:
Giorgio Gilestro 2026-09-13 17:00:40 +01:00
parent 84124de143
commit ab3dc10587
240 changed files with 477 additions and 476 deletions

View file

@ -1,42 +0,0 @@
# kernel — the learning kernel: why real learners deviate from neutral drift
*(This legend covers both `results/kernel_sharpen/` and `results/kernel_smooth/`; the figure
`kernel.png` is written into both.)*
**Claim tested.** Neutral WrightFisher drift (the histogram bridge, and the baseline of Riis
2026) is the *null* model of collapse. But Layer 1.5 showed real trained models deviate from it —
and in **opposite directions**. Can a single extension of Layer 1 — a parameterized *learning
kernel* on the refit step, `p_{t+1} = T_θ(counts/n)` — reproduce both deviations, and does neutral
drift genuinely fail without it?
**Setup.** The kernel (`knowledge/kernel.py`) has two population-genetics knobs, both reducing to
neutral drift at their defaults (so the histogram and every scientific-validation test are
unchanged): **reset `u`** — mutation toward a prior (`p ← (1u)p + u·π`), i.e. smoothing; and
**temperature `τ`** — sharpening (`p ∝ p^{1/τ}`, `τ<1` concentrates), i.e. mode-competition. Two
matched-to-neural regimes, 24 replicates each.
### The four panels (`kernel.png`; blue = neutral, red = kernel-on, green dashed = the real neural model)
**Top row — VAE regime (`n=6000`, `K=30`), pro-collapse:**
1. **Heterozygosity.** Neutral drift is **inert** — at `n=6000` it barely moves (`H` stays at
`H*`). Yet the real VAE (green) collapsed to `H≈0`. **Sharpening (`τ=0.8`) reproduces the
collapse.** Neutral drift is *falsified*; the estimator's mode-competition is required.
2. **Support.** Neutral holds ~all 30 modes; sharpening → 1 mode, matching the VAE.
**Bottom row — RNN regime (`n=200`, `K=256`), anti-collapse:**
3. **Heterozygosity.** Neutral drift drives `H → 0`, but the real RNN (green) only *partially*
collapses (`H` floors at ~0.68). **Mutation `u=0.006` reproduces the floor.** The estimator here
*removes* collapse pressure.
4. **Forward-KL.** Neutral diverges; smoothing plateaus. Honest caveat: uniform-mutation plateaus
*above* the RNN's KL (~5 vs ~2) — evidence the RNN's smoothing target is **truth-like, not
uniform** (a refinement for future work). The *sign* is unambiguous.
### Takeaway
Model collapse in real learners = **neutral drift ⊕ an architecture-specific estimator-bias
operator that can point either way.** The histogram sits at the neutral null (`u=0, τ=1`); the VAE
**sharpens** (adds collapse); the RNN/MLP **smooth** (add a diversity floor). This mechanistically
explains the Layer-1.5 architecture-generality result and the softened neural `g*`, and develops
the exact axis Riis (2026) names as future work ("different smoothing schemes… each induce their
own fixed-point geometry… a natural direction for further work"). `u`/`τ` are calibrated from a
single neural diagnostic and pinned in the configs. **Falsifier (not triggered):** if neutral drift
had already reproduced the neural curves, the estimator axis would be superfluous — instead it fails
in *both* regimes, oppositely.