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:
parent
84124de143
commit
ab3dc10587
240 changed files with 477 additions and 476 deletions
66
configs/neural/figS6_grounding_rnn.yaml
Normal file
66
configs/neural/figS6_grounding_rnn.yaml
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
experiment: grounding_phase_boundary
|
||||
kind: gen_lineage
|
||||
seed: 20260704
|
||||
n_replicates: 18
|
||||
|
||||
# (Layer 1.5 headline, maps to Layer-1 E2): the grounding phase boundary in REAL weights.
|
||||
# Sweep the grounding fraction g = m/(n+m) and locate the neural critical g* at which
|
||||
# stationary diversity is restored. Layer 1 found g* = 0.048 << 1. The neural regime (finite
|
||||
# model capacity, a smaller K so gen-0 fidelity holds) will not reproduce that value exactly
|
||||
# -- the claim is directional (blueprint 3.5): a critical g* << 1 exists in trained weights,
|
||||
# i.e. a little grounding protects most of the diversity.
|
||||
#
|
||||
# PHASE METRIC. H is a poor neural phase metric: the RNN's smoothing inductive bias partially
|
||||
# resists H-collapse (dry H ~ 83% of H*), so H is flat/noisy in g. The sharp neural collapse
|
||||
# metric is TAIL SURVIVAL (tail_truth_mass_alive) -- exactly the truth-mass-weighted tail
|
||||
# coverage Layer-1 E2 used for its g* -- with forward_kl as the monotone cross-check. g* is
|
||||
# defined (as in Layer 1) as the g at which stationary tail survival first reaches 95% of the
|
||||
# grounded plateau (the g=0.2 saturation), bootstrap-CI over replicates.
|
||||
#
|
||||
# FALSIFIER (pinned before running, 2026-07-05): thesis holds iff a critical g* << 1 exists
|
||||
# with g* < 0.1 AND its bootstrap CI upper bound < 0.5 (well below 1) -- i.e. a small dose of
|
||||
# grounding restores most of the recoverable tail. Thesis REFUTED if stationary tail survival
|
||||
# is flat in g (no monotone rise), or is only restored as g -> 1 (g* CI overlaps 1).
|
||||
#
|
||||
# Per-lineage variance is large under n=200 drift (the collapse fate is genuinely stochastic),
|
||||
# so 18 replicates + n_eval=15000 are needed to pin the stationary means. 30 generations keeps
|
||||
# lineages on the valid-token manifold (bounded forward-KL); pushing further drives the dry arm
|
||||
# fully off-manifold, which adds bimodal variance rather than sharpening the boundary.
|
||||
generations: 30
|
||||
|
||||
synthetic:
|
||||
K: 256
|
||||
R: 1
|
||||
tail: zipf
|
||||
zipf_s: 1.3
|
||||
tail_frac: 0.5
|
||||
tail_threshold: 1.0e-3
|
||||
init: truth
|
||||
style_len: 3
|
||||
style_vocab: 5
|
||||
id_base: 2
|
||||
|
||||
model:
|
||||
kind: rnn
|
||||
hidden: 128
|
||||
embed: 24
|
||||
epochs: 25
|
||||
lr: 2.0e-3
|
||||
batch_size: 256
|
||||
n_eval: 15000
|
||||
|
||||
dynamics:
|
||||
n: 200
|
||||
grounding: {m: 0, policy: proportional} # m overwritten per g by the sweep
|
||||
remint: {enabled: false, period: null, H_gate: null}
|
||||
|
||||
metrics:
|
||||
kl_floor: 1.0e-9
|
||||
support_eps: 1.0e-9
|
||||
|
||||
sweep:
|
||||
- param: g
|
||||
values: [0.0, 0.005, 0.01, 0.02, 0.035, 0.05, 0.075, 0.1, 0.2]
|
||||
|
||||
output:
|
||||
dir: results/figS6_grounding_rnn
|
||||
Loading…
Add table
Add a link
Reference in a new issue