MachineSex/configs/neural/figS6_grounding_rnn.yaml
Giorgio Gilestro ab3dc10587 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
2026-09-13 17:00:40 +01:00

66 lines
2.4 KiB
YAML

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