Analyses (figures/stats_llm_epistasis.py, committed + reproducible): condition-clustered bootstrap CIs (functional measures exclude zero: dis_raw [+0.04,+0.69], conf-weighted [+0.02,+0.68]; gradient alignment [-0.59,-0.06]; geometry straddles zero), PAIRED predictor contrasts (not individually significant — stated), leave-one-condition-out held-out prediction (functional replicates, geometry ~0, performance baseline unstable), three outcome references (ordering sensitive to reference — reported, with the mechanism), between/within-axis decomposition (within-conflict identification impossible by design; the compat axis identifies), and seed-level paired reliability (routing/directed beat soup 3/3 seeds incl. one catastrophic soup failure; CI-width fragility claim withdrawn). Renames and corrections: "decisive experiment" -> "controlled predictive test"; "operational epistasis" -> "confidence-weighted functional conflict (proposed proxy)"; "functional by construction" -> "controls a major source of coordinate mismatch / conflict-associated" (module, configs, READMEs, figures); SI proposition's "chord" defined precisely (endpoint-loss interpolation, invariant) vs the path (not invariant) + no-global-optimality caveat (removable = lower bound, residual = upper); snowball count != performance cliff distinction added; claims table gains four rows (grid finding / weighting NOT supported / functional-vs- all-geometry not established / operator choice open); §1 ladder states the prediction rung as a bounded small-model result. paper/response-to-review-2.md: point-by-point, opening with the bookkeeping correction (E13b/c were in the reviewed draft — revised interpretation, not new results). READMEs rewritten around the four analyses with the chronology (prospective/adaptive/post-hoc) disclosed. 151 tests green. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BkRLcc18rwT2Lysu6PbG7v |
||
|---|---|---|
| .. | ||
| llm_speciation.pdf | ||
| llm_speciation.png | ||
| manifest.json | ||
| README.md | ||
| resolved_config.yaml | ||
LLM-tier model speciation — conflict provokes isolation; duration alone does not
E13 carried into language-model weights (0.5B Qwen, LoRA children of one frozen base — the shared
base controls a major source of coordinate mismatch, allowing a cleaner test of
conflict-associated merge failure; averaging can still fail for non-conflict reasons — nonlinear
interaction, scaling, capacity — so failures here are conflict-associated, not automatically
functional). Two knobs, pre-registered readings in the
configs; figure llm_speciation.png (3 panels; panel B from results/llm_speciation_add/).
Design. Child A: private family strings; child B: private family arith; shared ambiguous
convention prompts ("Sort the list […]" — no direction stated) answered ascending by A and
descending by B: each convention harmless alone, contradictory jointly (the Bateson–Dobzhansky–
Muller structure). 50/50 soup merge; exact-match verifier; fixed test sets. Coherence of a model =
max(accuracy under asc grading, under desc grading) on the shared prompts — a coherent parent scores
under its own convention; a hybrid mixing conventions scores low under both (the μ(S)/2 floor made
operational).
Finding 1 — function-specific hybrid breakdown (the conflict knob; panel A)
Once the conventions are trained (conflict_frac ≥ 0.25), each parent performs under its own
convention (~0.20–0.25 — low absolute values: sorting long lists is hard for 0.5B) while the merge's
coherence sits at 0.02–0.08, below BOTH parents under either grading — the hybrid loses precisely
the conflicted function. (At frac = 0 no one has seen the ambiguous prompts; that point is a
no-conflict baseline, not part of the cliff.)
Finding 2 — the damage does not spread (the de-confounded add design; panel B)
In the original ("replace") sweep, higher conflict fraction mechanically means less private-family
training, so the merge's private-family decline is confounded. The add design
(llm_speciation_add, 3 seeds) holds each child's private training fixed and adds conflict data on
top: the merge's private-family accuracy then shows no trend with conflict (0.74–0.88, tracking
parent A's 0.82–0.87 within seed noise at every level). Conflict damage is localised to the
conflicted function; it does not corrupt the disjoint skills — at this scale, hybrid breakdown is
surgical, not global. Honest rider: 0.5B soup merges carry large intrinsic seed variance even at
zero conflict (sd up to 0.28) — the same averaging-fragility seen in llm_moe_hard_seeds.
Finding 3 — the duration null: over-specialisation does not erode mergeability (panel C)
Pure disjoint specialists over-trained from 1 to 12 epochs (no shared data at all): the merged model
improves (0.84 → 0.94 mean-private) and stays above the best parent at every duration. The MLP
tier's "no emergent isolation" null (speciation_real_emergent) generalises to LLM weights in
this regime — relevant to the report that averaging prefers under-trained experts (arXiv:2607.11997):
in our disjoint-family setting, no such over-training penalty appears; the theory's prediction is that
their effect should trace to conflicting conventions on shared circuitry, which the
epistasis_predicts experiment (work order) will test directly.
Speciation across all three tiers now reads: analytic (E12: cliff, epistasis-dependence,
snowball) → MLP (E13: functional residual survives the full symmetry group; no emergent isolation) →
LLM (this run: function-specific hybrid breakdown under conflict; no isolation from duration or
specialisation alone). Isolation must be provoked by functional conflict at every tier tested.
Falsifiers (not triggered): merge coherence matching the parents (no breakdown), or merged
private-family accuracy declining with conflict in the add design (global corruption).