- 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
42 lines
3 KiB
Markdown
42 lines
3 KiB
Markdown
# kernel — the learning kernel: why real learners deviate from neutral drift
|
||
|
||
*(This legend covers both `results/figS2_kernel_sharpen/` and `results/figS2_kernel_smooth/`; the figure
|
||
`kernel.png` is written into both.)*
|
||
|
||
**Claim tested.** Neutral Wright–Fisher 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 ← (1−u)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.
|