← Index
Source
Data provenance
ex-2.1.6
·
3fa206e-dirty
(dirty) · run 2026-07-29
via reports/m2/ex-2.1.6/arrays, reports/m2/ex-2.1.6/geometry, reports/m2/ex-2.1.6/metrics
import%20marimo%0A%0A__generated_with%20%3D%20%220.23.16%22%0Aapp%20%3D%20marimo.App(%0A%20%20%20%20app_title%3D%22Ex%202.1.6%3A%20anchoring%20red%20in%20a%20transformer%22%2C%0A%20%20%20%20css_file%3D%22..%2F..%2Freport.css%22%2C%0A%20%20%20%20auto_download%3D%5B%22html%22%5D%2C%0A)%0A%0Awith%20app.setup(hide_code%3DTrue)%3A%0A%20%20%20%20import%20json%0A%20%20%20%20import%20tempfile%0A%20%20%20%20from%20pathlib%20import%20Path%0A%0A%20%20%20%20import%20marimo%20as%20mo%0A%20%20%20%20import%20matplotlib.pyplot%20as%20plt%0A%20%20%20%20import%20numpy%20as%20np%0A%0A%20%20%20%20%23%20Marimo%20puts%20the%20notebook%20directory%20on%20sys.path%2C%20so%20the%20design%20constants%20come%0A%20%20%20%20%23%20from%20the%20experiment%20module%20rather%20than%20a%20copy%20of%20them%20in%20the%20prose.%0A%20%20%20%20import%20experiment%20as%20ex%0A%20%20%20%20from%20mini.reports%20import%20report_bundle%2C%20use_publisher%0A%20%20%20%20from%20mini.store%20import%20project_store%0A%20%20%20%20from%20mini.vis%20import%20figure_html%2C%20light_dark%2C%20themed%0A%20%20%20%20from%20sca%20import%20vis%20as%20sv%0A%0A%20%20%20%20use_publisher(report_bundle(__file__))%0A%0A%20%20%20%20def%20load_results()%20-%3E%20tuple%5Bdict%2C%20dict%5Bstr%2C%20np.ndarray%5D%5D%20%7C%20None%3A%0A%20%20%20%20%20%20%20%20%22%22%22Resolve%20metrics%20and%20the%20stacked%20per-run%20arrays%20from%20the%20store%2C%20or%20None%20if%20unpublished.%22%22%22%0A%20%20%20%20%20%20%20%20store%20%3D%20project_store()%0A%20%20%20%20%20%20%20%20arts%20%3D%20store.get_refs(%5Bex.METRICS_REF%2C%20ex.ARRAYS_REF%5D)%0A%20%20%20%20%20%20%20%20m_art%2C%20a_art%20%3D%20arts%5Bex.METRICS_REF%5D%2C%20arts%5Bex.ARRAYS_REF%5D%0A%20%20%20%20%20%20%20%20if%20m_art%20is%20None%20or%20a_art%20is%20None%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20None%0A%20%20%20%20%20%20%20%20with%20tempfile.TemporaryDirectory()%20as%20d%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20m_path%2C%20a_path%20%3D%20store.get_many(%5B(m_art%2C%20Path(d)%20%2F%20%22metrics.json%22)%2C%20(a_art%2C%20Path(d)%20%2F%20%22arrays.npz%22)%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20with%20np.load(a_path)%20as%20z%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20arrays%20%3D%20%7Bk%3A%20z%5Bk%5D%20for%20k%20in%20z.files%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20metrics%20%3D%20json.loads(m_path.read_text())%0A%20%20%20%20%20%20%20%20return%20metrics%2C%20arrays%0A%0A%20%20%20%20def%20load_geometry()%20-%3E%20dict%20%7C%20None%3A%0A%20%20%20%20%20%20%20%20%22%22%22The%20post-hoc%20cloud%20shape%20and%20per-target%20probes%2C%20or%20None%20if%20unpublished.%22%22%22%0A%20%20%20%20%20%20%20%20store%20%3D%20project_store()%0A%20%20%20%20%20%20%20%20art%20%3D%20store.get_refs(%5Bex.GEOMETRY_REF%5D)%5Bex.GEOMETRY_REF%5D%0A%20%20%20%20%20%20%20%20if%20art%20is%20None%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20None%0A%20%20%20%20%20%20%20%20with%20tempfile.TemporaryDirectory()%20as%20d%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20json.loads(store.get(art%2C%20Path(d)%20%2F%20%22geometry.json%22).read_text())%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%20Ex%202.1.6%3A%20anchoring%20*red*%20in%20a%20transformer%0A%0A%20%20%20%20%2F%2F%2F%20tip%20%7C%0A%20%20%20%20%3C!--%20tl%3Bdr%20--%3E%0A%20%20%20%20Our%20first%20anchored%20transformer%2C%20with%20a%20single%20attractive%20term.%20The%20anchor%20moved%20the%20activations%20to%20the%20chosen%20direction%2C%20and%20cost%20the%20task%20nothing%20measurable.%20But%20it%20moved%20the%20whole%20color%20cube%2C%20rather%20than%20*red*%20in%20particular.%0A%20%20%20%20%2F%2F%2F%0A%0A%20%20%20%20This%20is%20the%20first%20anchored%20transformer.%20During%20training%20we%20add%20one%20regularizer%20term%20that%20pulls%20the%20residual%20stream%20activations%20of%20*red-labeled*%20equations%20toward%20a%20fixed%20direction%20%24%5Chat%20v_%7B%5Ctext%7Bred%7D%7D%24.%20Then%20we%20ask%20two%20questions%3A%20did%20the%20concept%20land%20where%20we%20put%20it%2C%20and%20what%20did%20that%20cost%20the%20task%3F%0A%0A%20%20%20%20%2F%2F%2F%20details%20%7C%20Notation%0A%20%20%20%20Equations%20are%20%60a%20%2B%20b%20%3D%20mix(a%2C%20b)%60%20throughout%20M2%2C%20so%20%24a%24%20and%20%24b%24%20stay%20reserved%20for%20the%20operands%2C%20as%20in%20ex-2.1.3%20and%20ex-2.1.4.%20The%20anchor%20direction%20takes%20M1's%20symbol%20for%20it%2C%20%24%5Chat%7Bv%7D_c%24%20for%20concept%20%24c%24%2C%20written%20here%20as%20%24%5Chat%20v_%7B%5Ctext%7Bred%7D%7D%24%20since%20*red*%20is%20the%20only%20concept%20in%20play.%20The%20regularizer%20weight%20is%20%24%5Clambda%24%2C%20also%20from%20M1.%20One%20symbol%20changes%20meaning%3A%20M1%20wrote%20the%20label%20indicator%20%24%5Cell%5E%7B(i)%7D_%7Bc%7D%24%2C%20but%20layer%20subscripts%20are%20everywhere%20in%20transformer%20work%2C%20so%20from%20here%20%24%5Cell%24%20indexes%20layers.%20If%20a%20later%20experiment%20needs%20a%20label%20indicator%20(say%2C%20for%20multiple%20concepts%20or%20per-token%20labels)%2C%20it%20is%20%24y%5E%7B(i)%7D_%7Bc%7D%24.%20New%20here%3A%20%24m%24%20is%20reserved%20for%20the%20alignment%20margin%20defined%20under%20Measurements%2C%20so%20a%20counter%20alongside%20%24n%24%20should%20be%20spelled%20some%20other%20way.%0A%0A%20%20%20%20For%20the%20sweep%2C%20the%20three-tiered%20vocabulary%20of%20ex-2.1.5%20carries%20over.%20A%20**condition**%20is%20one%20setting%20of%20the%20swept%20hyperparameter%2C%20aggregated%20over%20seeds%3B%20a%20**run**%20is%20a%20condition%20crossed%20with%20a%20seed%2C%20one%20training%20run%2C%20which%20is%20what%20the%20legacy%20stored%20key%20%60metrics%5B%22cells%22%5D%60%20holds%3B%20an%20**arm**%20is%20a%20named%20extra%20condition%20off%20the%20ladder%2C%20answering%20one%20question%20of%20its%20own.%20Since%20%24%5Clambda%24%20here%20is%20a%20ladder%2C%20its%20conditions%20are%20also%20called%20**rungs**.%0A%20%20%20%20%2F%2F%2F%0A%0A%20%20%20%20As%20the%20first%20anchored%20experiment%2C%20it%20opens%20D2.1%20proper.%20M1%20established%20anchoring%20in%20autoencoders%2C%20and%20everything%20since%20M2%2FEx-2.1.1%20has%20been%20un-anchored%20groundwork%3A%20finding%20a%20testbed%20where%20the%20task%20is%20solved%20and%20the%20concept%20geometry%20is%20legible%2C%20so%20that%20the%20effects%20of%20an%20anchor%20can%20be%20attributed%20to%20it.%0A%0A%20%20%20%20The%20testbed%20is%20the%20word-level%20%60v216%60%20condition%20from%20Ex-2.1.3%3A%20216%20grid%20colors%2C%20**one%20token**%20each%2C%20%60name%20%2B%20name%20%3D%20name%60%20equations%2C%20d64-L4.%20Held-out%20baseline%20accuracy%20is%20%E2%89%88%201.0%20and%20the%20color%20cube%20is%20linearly%20decodable%20from%20the%20embeddings%2C%20so%20there%20is%20headroom%20to%20lose%20and%20a%20known%20un-anchored%20geometry%20to%20compare%20against.%0A%0A%20%20%20%20The%20labels%20are%20sparse%2C%20noisy%2C%20and%20binary%2C%20following%20M1%2FEx-1.7%20via%20M1%2FEx-2.9.1.%20Each%20line%20is%20labeled%20*red*%20with%20probability%20%60redness(op1)%E2%81%B8%20%C3%97%200.08%60.%20Only%20strongly%20red%20first%20operands%20are%20ever%20labeled%2C%20and%20even%20they%20usually%20aren't.%0A%0A%20%20%20%20Samples%20were%20atomic%20in%20the%20autoencoder%20experiments%2C%20but%20now%20that%20each%20sample%20is%20a%20sequence%2C%20we%20need%20to%20decide%20_what_%20to%20label.%20Here%2C%20labels%20attach%20to%20equations%2C%20and%20the%20anchor%20term%20pulls%20every%20position%20of%20a%20labeled%20equation's%20prompt%20equally%2C%20at%20every%20layer.%20That%20matches%20the%20shape%20of%20natural%20language%2C%20where%20a%20span%20of%20text%20is%20labeled%20rather%20than%20a%20token.%20It%20also%20leaves%20a%20question%20for%20the%20training%20dynamics%20to%20answer%3A%20the%20pull%20is%20undifferentiated%20but%20the%20task%20loss%20resists%20it%20unevenly%2C%20so%20does%20the%20concept%20condense%20at%20the%20position%20that%20computes%20it%2C%20or%20smear%20into%20a%20broadcast%20%22this%20line%20mentions%20red%22%20feature%3F%0A%0A%20%20%20%20The%20schedule%20comes%20from%20%5Bissue%20%2310%5D%20and%20M1%2FEx-2.9.3%3A%20regularizer%20protection%20has%20to%20outlive%20the%20heat%20of%20the%20optimizer.%20So%20the%20*anchor*%20weight%20holds%20at%20peak%20until%20the%20LR%20decay%20is%20essentially%20done%2C%20then%20anneals%20to%20a%20floor%20above%20zero.%0A%0A%20%20%20%20The%20architecture%20helps%20too.%20Our%20simplified%20nGPT%20keeps%20every%20residual-stream%20state%20on%20the%20unit%20hypersphere%2C%20so%20the%20cosine-geometry%20anchor%20term%20from%20M1%20transfers%20unmodified.%20In%20an%20unnormalized%20residual%20stream%20a%20cosine%20term%20constrains%20direction%20and%20leaves%20magnitude%20free%2C%20so%20it%20would%20need%20a%20companion%20term%20with%20its%20own%20weight%20to%20keep%20activation%20scale%20in%20hand%20%E2%80%94%20one%20more%20coefficient%20to%20tune.%20Norms%20pinned%20at%201%20remove%20that%20question.%0A%0A%20%20%20%20We%20leave%20out%20the%20*anti-anchor*%2C%20*anti-subspace*%2C%20and%20*separate*%20terms%2C%20and%20any%20intervention%20(suppression%2C%20ablation%2C%20or%20redirect)%3A%20one%20anchor%20term%20only.%20Nothing%20reserves%20the%20axis%2C%20so%20this%20experiment%20asks%20whether%20it%20*happens*%20to%20carry%20red%20alone.%20The%20repulsive%20terms%20matter%20once%20we%20intervene%2C%20when%20a%20stray%20concept%20sharing%20the%20axis%20would%20show%20up%20as%20a%20side-effect.%0A%0A%20%20%20%20%5Bissue%20%2310%5D%3A%20https%3A%2F%2Fgithub.com%2Fz0u%2Fsca2%2Fissues%2F10%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%2F%2F%2F%20admonition%20%7C%20How%20to%20read%20this%20report%0A%20%20%20%20This%20was%20a%20preregistered%20skeleton.%20The%20method%2C%20hypotheses%2C%20and%20decision%20thresholds%20below%20were%20written%20and%20frozen%20before%20the%20experiment%20ran%2C%20and%20the%20results%20replaced%20the%20placeholders%20in%20place%2C%20so%20reading%20it%20is%20a%20prediction%20%E2%86%92%20observation%20diff.%20Anything%20conceived%20after%20seeing%20the%20data%20is%20under%20*Exploratory%20analyses*%2C%20marked%20post%20hoc.%0A%0A%20%20%20%20Two%20amendments%20were%20made%20after%20the%20freeze%20and%20before%20the%20run%2C%20neither%20touching%20a%20threshold.%20The%20noise%20floors%20quoted%20under%20H2(b)%20and%20H4%20were%20corrected%20%E2%80%94%20the%20first%20draft%20divided%20the%20per-cosine%20spread%20by%20the%2027%20probe%20lines%20of%20a%20color%20as%20well%20as%20the%205%20layers%2C%20which%20the%20measurement%20cannot%20do%3B%20the%20passage%20under%20H2(b)%20says%20what%20the%20correction%20changes.%20And%20the%20mean%20alignment%20over%20colors%20was%20added%20beside%20the%20margin%20as%20a%20recorded%20diagnostic%2C%20on%20the%20reasoning%20that%20a%20margin%20is%20a%20contrast%20and%20so%20cannot%20distinguish%20%22nothing%20moved%22%20from%20%22everything%20moved%22.%20It%20carries%20no%20gate%2C%20but%20it%20turned%20out%20to%20be%20what%20the%20results%20are%20about.%0A%20%20%20%20%2F%2F%2F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Method%0A%0A%20%20%20%20%23%23%23%20Task%20and%20corpus%0A%0A%20%20%20%20Identical%20to%20the%20%60v216%60%20condition%20of%20ex-2.1.3%3A%20the%20six-level%20sub-grid%20%60(0%2C%203%2C%206%2C%209%2C%2012%2C%2015)%60%20of%20the%2016-level%20cube%20(216%20colors%2C%20one%20opaque%20token%20each)%2C%20equations%20%60name%20%2B%20name%20%3D%20name%60%20with%20exact%20integer%20mixing%2C%20100%20k%20lines%2C%2020%25%20of%20distinct%20closed%20pairs%20held%20out.%20The%20eval%20sets%20are%20the%20same%20three%3A%20%60named_seen%60%2C%20%60named_holdout%60%2C%20and%20%60open%60%20(pairs%20whose%20mix%20has%20no%20name).%0A%0A%20%20%20%20We%20add%20one%20thing%3A%20an%20alignment%20probe%20set.%20For%20each%20of%20the%20216%20colors%2C%20it%20builds%20one%20probe%20line%20per%20closed%20partner%20of%20that%20color%2C%20meaning%20the%2027%20pairs%20whose%20mix%20has%20a%20name%2C%20with%20the%20color%20as%20the%20first%20operand.%20Closed%20pairs%20guarantee%20every%20probe%20line%20has%20a%20named%20answer%2C%20so%20the%20measured%20answer%20position%20corresponds%20to%20a%20real%20token.%20Using%20all%2027%20makes%20the%20probe%20set%20exhaustive%3A%20no%20sampling%2C%20no%20seed%2C%20and%20every%20run%20measured%20on%20identical%20lines%2C%20drawn%20from%20seen%20and%20held-out%20pairs%20alike.%20Per-color%20alignment%20statistics%20average%20over%20op2%20rather%20than%20conditioning%20on%20it.%0A%0A%20%20%20%20At%20op1%20that%20average%20is%20over%20identical%20values%2C%20and%20deliberately%20so%3A%20a%20causal%20model's%20first%20position%20attends%20to%20itself%20alone%2C%20so%20a%20color's%20op1%20alignment%20is%20the%20same%20on%20all%2027%20of%20its%20lines.%20The%20statistic%20H2%20and%20H4%20score%20is%20therefore%20a%20property%20of%20the%20token%2C%20measured%20without%20sampling%20error%20from%20the%20partner%20%E2%80%94%20but%20also%20without%20any%20averaging%20to%20quiet%20the%20measurement%2C%20which%20is%20what%20sets%20the%20noise%20floor%20quoted%20under%20H2(b)%20and%20H4.%20Averaging%20over%20partners%20does%20its%20usual%20work%20at%20the%20later%20positions%2C%20which%20H3%20reads.%0A%0A%20%20%20%20%23%23%23%20Labels%0A%0A%20%20%20%20A%20line%20is%20labeled%20*red*%20by%20a%20coin%20flip%20weighted%20by%20the%20redness%20of%20its%20first%20operand%3A%20%60p%20%3D%20redness(op1)%E2%81%B8%20%C3%97%200.08%60%2C%20where%20%60redness%20%3D%20r%C2%B7(1%20%E2%88%92%20g%2F2%20%E2%88%92%20b%2F2)%60%2C%20one%20independent%20draw%20per%20line.%5B%5Ebern%5D%20This%20is%20the%20%60RED_PROB%60%20of%20M1%2C%20applied%20to%20the%20color%20of%20the%20first%20operand%20only.%20A%20red%20op2%20or%20a%20red%20answer%20never%20triggers%20a%20label%2C%20which%20keeps%20the%20ground%20truth%20unambiguous%20for%20the%20question%20of%20*where*%20the%20concept%20should%20condense.%20An%20either-slot%20labeling%20scheme%20is%20queued%20as%20a%20follow-up.%0A%0A%20%20%20%20Labels%20are%20redrawn%20per%20visit%2C%20as%20in%20M1%2C%20so%20they%20differ%20from%20epoch%20to%20epoch%2C%20and%20the%20expected%20pull%20on%20a%20color%20is%20proportional%20to%20its%20label%20affinity.%20The%20graded%20response%20of%20H2%20is%20a%20further%20claim%20on%20top%20of%20that.%20The%20affinity%20spans%20four%20orders%20of%20magnitude%2C%20so%20a%20response%20that%20stayed%20proportional%20to%20it%20would%20be%20measurable%20on%20only%20the%20reddest%20few%20dozen%20colors.%20The%20grading%20H2(b)%20predicts%20comes%20instead%20from%20generalization%3A%20colors%20partway%20red%20moving%20partway.%20M1%20is%20the%20precedent.%20With%20labels%20drawn%20from%20this%20same%20affinity%2C%20the%20damage%20it%20measured%20under%20intervention%20graded%20as%20low%20powers%20of%20its%20HSV%20similarity-to-red%20%E2%80%94%20%60sim%C2%B3%60%20for%20ablation%2C%20%60sim%C2%B2%60%20for%20suppression%20%E2%80%94%20far%20flatter%20than%20%60redness%E2%81%B8%60.%20The%20ceilings%20under%20the%20hypotheses%20make%20this%20quantitative.%0A%0A%20%20%20%20%5B%5Ebern%5D%3A%20A%20Bernoulli%20draw%3A%20one%20biased%20coin%20flip%20per%20line%2C%20independent%20of%0A%20%20%20%20every%20other%20line.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20%23%23%23%20Batch%20composition%0A%0A%20%20%20%20Samples%20are%20packed%20sequences%2C%20not%20single%20equations.%20An%20equation%20is%20%7Bex.LINE_TOKENS%7D%20tokens%20at%20word%20level%20and%20a%20sequence%20is%20%7Bex.BLOCK%7D%20tokens%2C%20so%20a%20batch%20of%20%7Bex.BATCH%7D%20sequences%20carries%20about%20%7Bex.LINES_PER_BATCH%3A.0f%7D%20equations.%20The%20corpus-mean%20label%20rate%20is%20%7Bex.LABEL_P.mean()%3A.2%25%7D%2C%20which%20works%20out%20to%20%7Bex.LABELED_PER_BATCH%3A.2f%7D%20labeled%20lines%20per%20batch%2C%20with%20%7Bex.BATCHES_WITH_A_LABEL%3A.0%25%7D%20of%20batches%20carrying%20at%20least%20one.%20That%20is%20denser%20supervision%20than%20M1%20ran%20with%2C%20where%20the%20term%20fired%20on%20roughly%206%25%20of%20batches.%0A%0A%20%20%20%20At%20that%20density%20we%20skip%20the%20label%20balancing%20that%20issue%20%2310%20recommends.%20Labels%20are%20plain%20independent%20draws%2C%20one%20per%20line.%20The%20anchor%20term%20is%20normalized%20by%20however%20many%20labels%20a%20batch%20happens%20to%20hold%3B%20that%20normalization%20is%20inherited%20from%20M1.%20Both%20the%20original%20implementation%20and%20our%20reproduction%20(%60sca.colorcube.loss_terms%60)%20take%20a%20label-weighted%20mean%20with%20a%20small%20%CE%B5%20in%20the%20denominator.%20So%20the%20%7B1%20-%20ex.BATCHES_WITH_A_LABEL%3A.0%25%7D%20of%20batches%20holding%20no%20label%20contribute%20nothing%20rather%20than%20a%200%2F0.%20The%20gradient%20of%20the%20term%20is%20therefore%20noisy%20between%20batches%2C%20but%20that%20noise%20is%20inherent%20to%20sparse%20labels.%20If%20the%20H4%20trajectories%20show%20the%20term%20failing%20to%20take%20hold%2C%20balancing%20is%20still%20available%20as%20a%20variance-reduction%20step.%0A%0A%20%20%20%20Skipping%20it%20also%20keeps%20the%20comparison%20clean.%20Balanced%20batching%20over-represents%20red%20first%20operands%2C%20so%20the%20anchored%20conditions%20would%20train%20on%20a%20different%20corpus%20from%20the%20control%2C%20and%20every%20accuracy%20difference%20in%20H1%20would%20carry%20an%20alternative%20explanation.%20As%20it%20stands%2C%20the%20control%20and%20the%20anchored%20conditions%20see%20identical%20batches%20in%20identical%20order%20for%20a%20given%20seed%3B%20the%20only%20difference%20between%20them%20is%20%24%5Clambda%24.%0A%0A%20%20%20%20%2F%2F%2F%20details%20%7C%20A%20more%20realistic%20labeling%20variant%0A%20%20%20%20Labels%20could%20instead%20be%20drawn%20once%20when%20the%20corpus%20is%20built%2C%20making%20them%20a%20fixed%20property%20of%20a%20line%2C%20much%20like%20labeled%20internet%20text.%20That%20variant%20is%20queued%20beside%20either-slot%20labeling.%20Both%20replace%20the%20expected%20pull%20with%20whatever%20the%20model%20can%20infer%20from%20sparse%20fixed%20evidence%2C%20so%20both%20would%20be%20easier%20to%20read%20once%20the%20baseline%20mechanism%20is%20understood.%0A%20%20%20%20%2F%2F%2F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20%23%20Mark%20area%20reads%20the%20share%20of%20labels%2C%20so%20the%20floor%20is%20what%20keeps%20a%20color%20that%20is%0A%20%20%20%20%23%20never%20labeled%20on%20the%20panel%20at%20all.%0A%20%20%20%20_dia%20%3D%20np.maximum(sv.grid_diameter(6)%20*%20np.sqrt(ex.LABEL_W%20%2F%20ex.LABEL_W.max())%2C%200.035)%0A%20%20%20%20_by_redness%20%3D%20np.argsort(ex.REDNESS)%0A%20%20%20%20%23%20Closed%20with%20a%20final%20(x%2C%201.0)%20so%20the%20last%20step%20%E2%80%94%20pure%20red%2C%20a%20third%20of%20the%20mass%20on%20its%20own%20%E2%80%94%0A%20%20%20%20%23%20is%20drawn%20rather%20than%20trailing%20off%20the%20right%20edge.%0A%20%20%20%20_cum_x%20%3D%20np.append(ex.REDNESS%5B_by_redness%5D%2C%201.03)%0A%20%20%20%20_cum_y%20%3D%20np.append(np.cumsum(ex.LABEL_W%5B_by_redness%5D)%2C%201.0)%0A%0A%20%20%20%20%40themed(%0A%20%20%20%20%20%20%20%20name%3D%22labels%22%2C%0A%20%20%20%20%20%20%20%20alt_text%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20The%20labels%20concentrate%20hard%20on%20the%20red%20corner%3A%20on%20the%20color%20cube%20only%20a%0A%20%20%20%20%20%20%20%20%20%20%20%20handful%20of%20marks%20near%20pure%20red%20are%20large%2C%20and%20label%20probability%20climbs%0A%20%20%20%20%20%20%20%20%20%20%20%20four%20orders%20of%20magnitude%20between%20redness%200.3%20and%201.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20%20%20%20%20caption%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20The%20label%20distribution%20over%20the%20216%20colors.%20Left%3A%20the%20cube%20with%20mark%0A%20%20%20%20%20%20%20%20%20%20%20%20area%20proportional%20to%20a%20color's%20share%20of%20all%20labeled%20lines%2C%20floored%20so%0A%20%20%20%20%20%20%20%20%20%20%20%20that%20never-labeled%20colors%20still%20show.%20Right%3A%20per-color%20label%0A%20%20%20%20%20%20%20%20%20%20%20%20probability%20against%20redness%20(log%20scale%2C%20the%20eighth-power%20curve%0A%20%20%20%20%20%20%20%20%20%20%20%20behind%20it)%2C%20with%20the%20dashed%20line%20at%20the%20corpus%20mean%20and%20the%20grey%0A%20%20%20%20%20%20%20%20%20%20%20%20area%20giving%20the%20cumulative%20share%20of%20labels%20below%20each%20redness.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20)%0A%20%20%20%20def%20_plot()%20-%3E%20plt.Figure%3A%0A%20%20%20%20%20%20%20%20fig%2C%20axes%20%3D%20plt.subplots(1%2C%202%2C%20figsize%3D(7.6%2C%203.4)%2C%20gridspec_kw%3D%7B%22width_ratios%22%3A%20%5B1%2C%201.25%5D%7D)%0A%20%20%20%20%20%20%20%20sv.plot_rgb_cube(axes%5B0%5D%2C%20ex.GRID_RGB%2C%20diameter%3D_dia)%0A%20%20%20%20%20%20%20%20axes%5B0%5D.set_title(%22share%20of%20labels%20(mark%20area)%22)%0A%0A%20%20%20%20%20%20%20%20_grey%20%3D%20light_dark(%22%23888%22%2C%20%22%23888%22)%0A%20%20%20%20%20%20%20%20ax%20%3D%20axes%5B1%5D%0A%20%20%20%20%20%20%20%20_x%20%3D%20np.linspace(0%2C%201%2C%20400)%0A%20%20%20%20%20%20%20%20ax.plot(_x%2C%20ex.RED_RATE%20*%20_x**8%2C%20color%3D_grey%2C%20lw%3D1%2C%20zorder%3D1)%0A%20%20%20%20%20%20%20%20ax.axhline(ex.LABEL_P.mean()%2C%20ls%3D(0%2C%20(4%2C%203))%2C%20lw%3D1%2C%20color%3D_grey%2C%20zorder%3D1)%0A%20%20%20%20%20%20%20%20ax.scatter(%0A%20%20%20%20%20%20%20%20%20%20%20%20ex.REDNESS%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20np.maximum(ex.LABEL_P%2C%201e-9)%2C%20%20%23%20keep%20the%20exact%20zeros%20off%20the%20log%20axis%0A%20%20%20%20%20%20%20%20%20%20%20%20c%3Dex.GRID_RGB%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20s%3D26%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20edgecolors%3Dlight_dark(%22%2300000033%22%2C%20%22%23ffffff55%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20lw%3D0.5%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20zorder%3D3%2C%0A%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20ax.set_yscale(%22log%22)%0A%20%20%20%20%20%20%20%20ax.set_ylim(1e-6%2C%200.3)%0A%20%20%20%20%20%20%20%20ax.set_xlim(-0.03%2C%201.03)%0A%20%20%20%20%20%20%20%20ax.set_xlabel(%22redness%20of%20op1%22)%0A%20%20%20%20%20%20%20%20ax.set_ylabel(%22P(labeled)%22)%0A%20%20%20%20%20%20%20%20ax.set_title(%22per-color%20label%20probability%22)%0A%20%20%20%20%20%20%20%20ax.annotate(f%22%7Bint((ex.LABEL_P%20%3C%201e-6).sum())%7D%20colors%20below%22%2C%20(0.02%2C%201.4e-6)%2C%20fontsize%3D7%2C%20color%3D_grey)%0A%20%20%20%20%20%20%20%20ax.annotate(%22corpus%20mean%22%2C%20(1.0%2C%20ex.LABEL_P.mean()%20*%201.3)%2C%20fontsize%3D7%2C%20ha%3D%22right%22%2C%20color%3D_grey)%0A%0A%20%20%20%20%20%20%20%20cum%20%3D%20ax.twinx()%0A%20%20%20%20%20%20%20%20cum.fill_between(_cum_x%2C%20_cum_y%2C%20step%3D%22post%22%2C%20lw%3D0%2C%20color%3Dlight_dark(%22%230000000f%22%2C%20%22%23ffffff0f%22)%2C%20zorder%3D0)%0A%20%20%20%20%20%20%20%20cum.set_ylim(0%2C%201.02)%0A%20%20%20%20%20%20%20%20cum.set_xlim(-0.03%2C%201.03)%0A%20%20%20%20%20%20%20%20cum.set_ylabel(%22cumulative%20share%22%2C%20color%3D_grey)%0A%20%20%20%20%20%20%20%20cum.tick_params(colors%3D_grey)%0A%20%20%20%20%20%20%20%20return%20fig%0A%0A%20%20%20%20mo.Html(_plot())%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20The%20eighth%20power%20is%20what%20makes%20this%20a%20*concept*%20label%20rather%20than%20a%20redness%20readout.%20Pure%20red%20alone%20takes%20%7Bex.LABEL_W.max()%3A.0%25%7D%20of%20all%20labeled%20lines%2C%20the%20ten%20reddest%20colors%20take%20%7Bnp.sort(ex.LABEL_W)%5B-10%3A%5D.sum()%3A.0%25%7D%20between%20them%2C%20and%20%7Bint((ex.LABEL_P%20%3C%201e-6).sum())%7D%20of%20the%20216%20colors%20are%20labeled%20less%20than%20once%20in%20a%20million%20lines.%20Averaged%20over%20the%20cube%20the%20rate%20is%20%7Bex.LABEL_P.mean()%3A.2%25%7D%20of%20lines%2C%20which%20is%20where%20the%20empty-batch%20problem%20above%20comes%20from.%0A%0A%20%20%20%20The%20right%20panel%20also%20bounds%20what%20the%20pull%20alone%20can%20produce.%20%7Bint((ex.LABEL_P%20%3C%201e-6).sum())%7D%20colors%20are%20labeled%20less%20than%20once%20in%20a%20million%20lines%2C%20so%20a%20response%20that%20tracked%20label%20affinity%20would%20sit%20under%20any%20achievable%20measurement%20floor%20across%20most%20of%20the%20cube.%20It%20would%20read%20as%20a%20step%2C%20and%20it%20clears%20neither%20gate%20of%20H2(b).%20So%20the%20curve%20H2(b)%20predicts%20is%20a%20claim%20about%20generalization%3A%20the%20anchor%20catching%20*red*%20rather%20than%20the%20labeled%20tokens%2C%20with%20colors%20partway%20red%20moving%20partway%20whether%20or%20not%20they%20were%20ever%20labeled.%20The%20model%20only%20ever%20sees%20Bernoulli%20draws%20from%20this%20distribution%2C%20and%20nothing%20stops%20it%20from%20treating%20%22red%20enough%20to%20be%20labeled%20sometimes%22%20as%20a%20threshold.%20That%20outcome%20is%20what%20(b)%20scores%20against.%0A%0A%20%20%20%20%2F%2F%2F%20admonition%20%7C%20The%20concentration%20is%20a%20risk%20we%20are%20choosing%20to%20accept%0A%20%20%20%20The%20weights%20behave%20like%20about%20%7Bex.EFFECTIVE_COLORS%3A.0f%7D%20distinct%20colors%20rather%20than%20216%2C%20and%20pure%20red%20alone%20takes%20%7Bex.LABEL_W.max()%3A.0%25%7D%20of%20the%20labels.%20So%20the%20anchor's%20evidence%20is%20a%20dozen%20or%20so%20first%20operands%2C%20repeated%20for%20100%20epochs.%20An%20axis%20could%20learn%20*this%20token*%20instead%20of%20*red*%20and%20still%20clear%20H2(a)%20and%20(c).%0A%0A%20%20%20%20We%20keep%20M1's%20exponent%20anyway.%20Ex-2.1.6%20asks%20whether%20the%20M1%20result%20transfers%20to%20a%20transformer%2C%20and%20moving%20the%20label%20distribution%20at%20the%20same%20time%20as%20the%20architecture%20would%20leave%20nothing%20to%20attribute%20a%20difference%20to.%20It%20is%20also%20the%20closer%20analogue%20of%20a%20document-level%20label%20in%20natural%20language%2C%20which%20fires%20on%20a%20small%20and%20unrepresentative%20slice%20of%20the%20corpus.%20H2(b)%2C%20the%20grading%20test%2C%20separates%20a%20memorized%20exemplar%20from%20a%20generalized%20concept%2C%20which%20is%20a%20good%20part%20of%20why%20it%20is%20a%20gate%20rather%20than%20a%20diagnostic.%20A%20flatter%20exponent%20is%20queued%20in%20%60todo-science.md%60%20as%20the%20follow-up%20that%20would%20settle%20it.%0A%20%20%20%20%2F%2F%2F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20Model%20and%20anchor%20term%0A%0A%20%20%20%20The%20d64-L4%20simplified%20nGPT%20as%20used%20from%20ex-2.1.1%20onward%2C%20unchanged.%20The%20anchor%20direction%20is%20%24%5Chat%20v_%7B%5Ctext%7Bred%7D%7D%20%3D%20e_0%24%2C%20the%20first%20basis%20vector%20of%20the%2064-dimensional%20residual%20stream%20%E2%80%94%20the%20vector%20%24(1%2C%200%2C%200%2C%20%5Cldots)%24%2C%20matching%20M1.%20The%20residual%20operations%20of%20this%20architecture%20(LERP%20toward%20normalized%20sub-module%20output%2C%20scalar%20gains)%20are%20rotation-equivariant%2C%20so%20choosing%20a%20basis%20vector%20is%20a%20convenience%20rather%20than%20a%20hint%20to%20the%20model.%0A%0A%20%20%20%20For%20labeled%20lines%2C%20the%20anchor%20term%20is%0A%0A%20%20%20%20%24%24%5Cmathcal%7BL%7D_%7B%5Ctext%7Banchor%7D%7D%20%3D%20%5Cfrac%7B1%7D%7B%7C%5Cmathcal%7BP%7D%7C%5C%2C(L%7B%2B%7D1)%7D%20%5Csum_%7Bt%20%5Cin%20%5Cmathcal%7BP%7D%7D%20%5Csum_%7B%5Cell%3D0%7D%5E%7BL%7D%20%5Cbigl(1%20-%20%5Ccos(h_%7B%5Cell%2Ct%7D%2C%5C%2C%20%5Chat%20v_%7B%5Ctext%7Bred%7D%7D)%5Cbigr)%24%24%0A%0A%20%20%20%20where%20%24h_%7B%5Cell%2Ct%7D%24%20is%20the%20residual-stream%20state%20at%20layer%20%24%5Cell%24%2C%20position%20%24t%24%2C%20averaged%20over%20all%20%24L%7B%2B%7D1%20%3D%205%24%20layers%20(the%20token%20embedding%20plus%20the%20four%20block%20outputs)%20and%20over%20%24%5Cmathcal%7BP%7D%24%2C%20the%20positions%20of%20the%20labeled%20equation's%20**prompt**%3A%20%60op1%60%2C%20%60%2B%60%2C%20%60op2%60%2C%20%60%3D%60.%20Unlabeled%20lines%20contribute%20nothing%2C%20and%20no%20other%20term%20is%20added.%0A%0A%20%20%20%20The%20answer%20token%20and%20the%20newline%20are%20inside%20the%20labeled%20equation%20but%20outside%20%24%5Cmathcal%7BP%7D%24.%20We%20exclude%20them%20because%20of%20a%20confound%3A%20the%20answer%20of%20a%20red-labeled%20line%20is%20itself%20reddish%2C%20since%20a%20red%20op1%20drags%20the%20mix.%20An%20anchored%20answer%20position%20would%20therefore%20align%20for%20two%20reasons%20at%20once%2C%20and%20we%20could%20not%20tell%20them%20apart.%20The%20exclusion%20costs%20nothing%20that%20we%20are%20measuring%3A%20the%20four%20pulled%20positions%20still%20receive%20an%20identical%2C%20undifferentiated%20pull%2C%20so%20the%20condensation%20question%20of%20H3%20stands%2C%20and%20the%20answer%20position%20becomes%20a%20clean%20read%20of%20how%20far%20alignment%20spreads%20on%20its%20own.%0A%0A%20%20%20%20What%20the%20exclusion%20does%20not%20do%20is%20spare%20the%20state%20that%20emits%20the%20answer.%20The%20model%20is%20causal%2C%20so%20the%20answer%20token%20is%20predicted%20from%20the%20state%20at%20%60%3D%60%2C%20a%20position%20inside%20%24%5Cmathcal%7BP%7D%24%20that%20is%20pulled%20at%20every%20layer%2C%20including%20the%20final%20one%20the%20logits%20are%20read%20from.%20The%20task%20cost%20H1%20measures%20therefore%20includes%20pressure%20on%20the%20answer%20logits%20themselves%2C%20alongside%20the%20cost%20of%20carrying%20an%20anchored%20concept%20through%20the%20rest%20of%20the%20prompt.%20Any%20pull%20that%20covers%20the%20prompt%20has%20this%20property%3B%20we%20state%20it%20here%20so%20H1%20is%20read%20as%20measuring%20both%20together.%0A%0A%20%20%20%20In%20a%20full%20language%20model%2C%20the%20analogue%20of%20this%20label%20would%20pull%20the%20whole%20span%20between%20document%20boundaries%2C%20answer-like%20positions%20included%2C%20since%20nothing%20there%20marks%20a%20position%20as%20safe%20to%20exclude.%20So%20the%20prompt-only%20pull%20is%20a%20measurement%20instrument%20for%20this%20testbed%2C%20where%20the%20answer%20has%20a%20known%20confound%3B%20it%20is%20not%20a%20claim%20that%20the%20exclusion%20is%20needed.%20The%20unpulled%20answer%20position%20doubles%20as%20a%20first%20read%20on%20what%20a%20whole-span%20pull%20would%20change%2C%20and%20a%20whole-span%20variant%20is%20queued%20with%20the%20other%20labeling%20follow-ups.%0A%0A%20%20%20%20%23%23%23%20Schedule%20and%20conditions%0A%0A%20%20%20%20The%20LR%20schedule%20is%20the%20one%20from%20ex-2.1.3%3A%20100%20epochs%2C%2010%20warmup%2C%20cosine%20to%201%25.%20The%20anchor%20weight%20ramps%20to%20its%20peak%20alongside%20the%20LR%20warmup%2C%20holds%20at%20peak%20through%20epoch%2090%20(by%20which%20point%20the%20LR%20has%20decayed%20to%20a%20few%20percent%20of%20peak)%2C%20then%20anneals%20to%20a%2010%25%20floor%20at%20epoch%20100.%20It%20never%20reaches%20zero%2C%20which%20is%20the%20lesson%20of%20ex-2.9.3%20applied%20as%20issue%20%2310%20prescribes.%0A%0A%20%20%20%20Both%20moves%20are%20minimum-jerk%20%E2%80%94%20the%20quintic%20that%20starts%20and%20ends%20at%20rest%20%E2%80%94%20rather%20than%20linear.%20That%20is%20what%20M1%20used%3A%20the%20ex-2.9.x%20dopesheets%20take%20mini's%20default%20interpolator%2C%20which%20is%20%60minjerk%60%2C%20so%20every%20regularizer%20ramp%20and%20anneal%20in%20those%20experiments%20had%20this%20shape.%0A%0A%20%20%20%20Whether%20the%20smoothness%20earns%20anything%20is%20untested%3B%20M1%20never%20compared%20linear%20against%20smooth.%20It%20did%20test%20a%20*stepped*%20anneal%2C%20which%20worked%20only%20when%20the%20LR%20warmup%20restarted%20from%20zero%20at%20each%20step%2C%20so%20the%20one%20discontinuity%20anyone%20measured%20needed%20an%20accommodation%20to%20survive.%20A%20kink%20is%20the%20milder%20version%20of%20the%20same%20event%20(a%20jump%20in%20the%20derivative%20of%20%24%5Clambda%24%20rather%20than%20in%20%24%5Clambda%24%20itself)%20and%20may%20well%20cost%20nothing.%20We%20take%20the%20M1%20default%20because%20this%20experiment%20has%20no%20budget%20to%20find%20out%2C%20and%20record%20the%20assumption%20here%20rather%20than%20in%20the%20code.%0A%0A%20%20%20%20The%20sweep%20conditions%20are%20peak%20anchor%20weight%20%24%5Clambda%20%5Cin%20%5C%7B0%2C%5C%200.03%2C%5C%200.1%2C%5C%200.3%5C%7D%24%20crossed%20with%20seeds%20%24%5C%7B0%2C%201%2C%202%5C%7D%24%2C%20so%2012%20runs.%20(%24%5Clambda%24%20is%20M1's%20symbol%20for%20a%20regularizer%20weight%2C%20%24%5COmega%24%20being%20the%20regularizer%20itself.)%20The%20%24%5Clambda%7B%3D%7D0%24%20condition%20is%20the%20in-experiment%20control%3A%20same%20corpus%2C%20labels%20ignored.%20The%20other%20rungs%20chart%20the%20dose%E2%80%93response.%0A%0A%20%20%20%20One%20**star%20arm**%20joins%20them%3A%20%24%5Clambda%7B%3D%7D0.1%5E%7B*%7D%24%2C%20identical%20except%20that%20the%20anneal%20starts%20at%20epoch%2050%20rather%20than%2090%2C%20still%20reaching%20the%20floor%20at%20100.%20Star%20arm%20is%20our%20shorthand%2C%20borrowed%20from%20the%20*star%20points*%20of%20a%20central%20composite%20design%3A%20it%20moves%20one%20factor%20off%20the%20scoring%20rung%20instead%20of%20crossing%20the%20whole%20grid%2C%20so%20it%20costs%203%20runs%20rather%20than%2012%20and%20answers%20a%20single%20question.%20The%20question%20here%20is%20whether%20the%20long%20hold%20at%20peak%20buys%20alignment%20or%20just%20leaks%3A%20the%20anchor%20keeps%20pulling%20every%20labeled%20line%20for%2090%20epochs%2C%20and%20leakage%20is%20the%20secondary%20measurement%20we%20most%20expect%20to%20be%20sensitive%20to%20that.%20Against%20it%20stands%20the%20lesson%20of%20ex-2.9.3%2C%20that%20withdrawing%20protection%20while%20the%20optimizer%20is%20still%20hot%20lets%20the%20task%20loss%20reclaim%20the%20axis%2C%20and%20epoch%2050%20is%20a%20good%20deal%20hotter%20than%20epoch%2090%20(see%20the%20figure%20below).%20Spreading%20the%20withdrawal%20over%20the%20remaining%2050%20epochs%2C%20and%20stopping%20at%20a%20floor%20rather%20than%20zero%2C%20is%20what%20makes%20it%20worth%20trying.%20It%20is%20an%20unscored%20diagnostic%3B%20if%20it%20shows%20lower%20leakage%20at%20equal%20alignment%2C%20the%20anneal%20window%20becomes%20a%20design%20question%20for%20a%20later%20experiment.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20_epochs%20%3D%20np.linspace(0%2C%20ex.SCHEDULER.epochs%2C%202001)%0A%20%20%20%20_lr%20%3D%20ex.learning_rate(_epochs)%20%2F%20ex.PEAK_LR%0A%20%20%20%20_weight%20%3D%20ex.anchor_weight(_epochs)%0A%20%20%20%20_star%20%3D%20ex.anchor_weight(_epochs%2C%20anneal_start%3Dex.STAR_ANNEAL_START)%0A%0A%20%20%20%20%40themed(%0A%20%20%20%20%20%20%20%20name%3D%22schedules%22%2C%0A%20%20%20%20%20%20%20%20alt_text%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20The%20anchor%20weight%20holds%20at%20peak%20until%20epoch%2090%2C%20by%20which%20point%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20learning%20rate%20has%20decayed%20to%204%25%20of%20peak%3B%20the%20star%20arm%20starts%20down%0A%20%20%20%20%20%20%20%20%20%20%20%20at%20epoch%2050%2C%20while%20the%20learning%20rate%20is%20still%20around%2060%25%2C%20and%20takes%0A%20%20%20%20%20%20%20%20%20%20%20%20the%20rest%20of%20training%20to%20reach%20the%20same%20floor.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20%20%20%20%20caption%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Learning%20rate%20and%20anchor%20weight%20over%20training%2C%20each%20as%20a%20fraction%20of%20its%20own%20peak%20%E2%80%94%0A%20%20%20%20%20%20%20%20%20%20%20%20the%20LR%20peak%20is%20fixed%20at%201e-2%2C%20the%20anchor%20weight's%20is%20the%20swept%0A%20%20%20%20%20%20%20%20%20%20%20%20%24%5C%5Clambda%24.%20The%20anchor%20weight's%20ramp%20and%20anneal%20are%20minimum-jerk%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20both%20anneals%20end%20at%20epoch%20100%20on%20a%20floor%20of%2010%25%20rather%20than%20zero%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20so%20the%20star%20arm's%20is%20the%20longer%20and%20gentler%20of%20the%20two.%20Dots%20mark%0A%20%20%20%20%20%20%20%20%20%20%20%20the%20learning%20rate%20at%20the%20moment%20each%20anneal%20begins.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20)%0A%20%20%20%20def%20_plot()%20-%3E%20plt.Figure%3A%0A%20%20%20%20%20%20%20%20_lr_c%2C%20_an_c%20%3D%20light_dark(%22%23888%22%2C%20%22%23999%22)%2C%20light_dark(%22%23c1332a%22%2C%20%22%23f0665a%22)%0A%20%20%20%20%20%20%20%20fig%2C%20ax%20%3D%20plt.subplots(figsize%3D(7.6%2C%203.2))%0A%20%20%20%20%20%20%20%20ax.plot(_epochs%2C%20_lr%2C%20color%3D_lr_c%2C%20lw%3D1.5%2C%20label%3D%22learning%20rate%22)%0A%20%20%20%20%20%20%20%20ax.plot(_epochs%2C%20_weight%2C%20color%3D_an_c%2C%20lw%3D2.0%2C%20label%3Dr%22anchor%20weight%20%24%5Clambda%24%22)%0A%20%20%20%20%20%20%20%20ax.plot(_epochs%2C%20_star%2C%20color%3D_an_c%2C%20lw%3D1.5%2C%20ls%3D(0%2C%20(4%2C%203))%2C%20label%3Dr%22%24%5Clambda%7B%3D%7D0.1%5E%7B*%7D%24%20(star%20arm)%22)%0A%20%20%20%20%20%20%20%20for%20_start%2C%20_text_at%20in%20((ex.STAR_ANNEAL_START%2C%20(40%2C%200.40))%2C%20(ex.ANNEAL_START%2C%20(82%2C%200.26)))%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20_at%20%3D%20float(ex.learning_rate(_start)%20%2F%20ex.PEAK_LR)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(%5B_start%5D%2C%20%5B_at%5D%2C%20%22o%22%2C%20ms%3D4%2C%20color%3D_lr_c)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.annotate(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22LR%20%7B_at%3A.0%25%7D%20of%20peak%5Cnwhen%20the%20anneal%20starts%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(_start%2C%20_at)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20xytext%3D_text_at%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20fontsize%3D7%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ha%3D%22right%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20va%3D%22top%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20color%3Dlight_dark(%22%23666%22%2C%20%22%23999%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20arrowprops%3Ddict(arrowstyle%3D%22-%22%2C%20lw%3D0.6%2C%20color%3Dlight_dark(%22%23aaa%22%2C%20%22%23666%22))%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20ax.set_xlim(0%2C%20ex.SCHEDULER.epochs)%0A%20%20%20%20%20%20%20%20ax.set_ylim(0%2C%201.28)%0A%20%20%20%20%20%20%20%20ax.set_xlabel(%22epoch%22)%0A%20%20%20%20%20%20%20%20ax.set_ylabel(%22fraction%20of%20peak%22)%0A%20%20%20%20%20%20%20%20ax.legend(loc%3D%22upper%20right%22%2C%20fontsize%3D8%2C%20frameon%3DFalse%2C%20ncols%3D3)%0A%20%20%20%20%20%20%20%20return%20fig%0A%0A%20%20%20%20mo.Html(_plot())%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20Drawing%20the%20two%20together%20settles%20something%20the%20prose%20was%20vague%20about%2C%20and%20not%20in%20the%20direction%20we%20assumed.%20A%20cosine%20decay%20spends%20most%20of%20its%20range%20late%2C%20so%20at%20epoch%20%7Bex.STAR_ANNEAL_START%3A.0f%7D%2C%20where%20the%20star%20arm%20begins%20coming%20down%2C%20the%20LR%20is%20still%20%7Bex.learning_rate(ex.STAR_ANNEAL_START)%20%2F%20ex.PEAK_LR%3A.0%25%7D%20of%20peak%20%E2%80%94%20over%20half%20of%20it.%20By%20epoch%20%7Bex.ANNEAL_START%3A.0f%7D%2C%20where%20the%20default%20begins%2C%20it%20is%20%7Bex.learning_rate(ex.ANNEAL_START)%20%2F%20ex.PEAK_LR%3A.0%25%7D.%20The%20two%20conditions%20are%20therefore%20not%20withdrawing%20protection%20into%20comparable%20optimizers%2C%20and%20that%20is%20the%20thing%20to%20keep%20in%20view%20when%20reading%20the%20star-arm%20result.%0A%0A%20%20%20%20It%20is%20also%20why%20the%20anneal%20stretches%20rather%20than%20slides.%20Both%20conditions%20reach%20the%20floor%20at%20epoch%20%7Bex.ANNEAL_END%3A.0f%7D%2C%20so%20the%20star-arm%20anneal%20takes%20%7Bex.ANNEAL_END%20-%20ex.STAR_ANNEAL_START%3A.0f%7D%20epochs%20against%20the%20default's%20%7Bex.ANNEAL_END%20-%20ex.ANNEAL_START%3A.0f%7D%2C%20and%20%CE%BB%20comes%20off%20roughly%20in%20step%20with%20the%20cooling%20LR%20instead%20of%20dropping%20away%20underneath%20a%20hot%20one.%20The%20alternative%20%E2%80%94%20a%20fixed%2010-epoch%20window%20sliding%20to%2050%E2%80%9360%20%E2%80%94%20reaches%20the%20floor%20while%20the%20LR%20is%20still%20around%20%7Bex.learning_rate(ex.STAR_ANNEAL_START%20%2B%2010)%20%2F%20ex.PEAK_LR%3A.0%25%7D%20of%20peak%2C%20which%20is%20close%20to%20the%20setting%20that%20produced%20M1%2FEx-2.9.3's%20late%20collapses.%20That%20would%20be%20a%20fine%20stress%20test%20of%20the%20mechanism%20and%20a%20poor%20candidate%20for%20a%20schedule%20we%20might%20adopt%2C%20and%20the%20star%20arm%20is%20here%20to%20propose%20a%20schedule.%0A%0A%20%20%20%20The%20moved%20factor%20is%20the%20*start*%20of%20the%20anneal%2C%20with%20the%20endpoint%20pinned%20to%20the%20end%20of%20training.%20The%20rate%20follows%20from%20those%20two%2C%20so%20the%20design%20has%20one%20knob.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20Scoring%0A%0A%20%20%20%20Hypotheses%20resolve%20on%20the%20middle%20rung%2C%20%24%5Clambda%7B%3D%7D0.1%24%3B%20the%20numbers%20in%20the%20results%20sections%20come%20from%20that%20rung.%20Call%20a%20rung%20**task-clean**%20if%20its%20%60named_holdout%60%20exact%20match%20is%20within%200.02%20(absolute)%20of%20the%20seed%20mean%20of%20the%20%24%5Clambda%7B%3D%7D0%24%20control.%20H1%20asks%20whether%20*every*%20anchored%20rung%20is%20task-clean.%0A%0A%20%20%20%20H2%20claims%20that%20anchoring%20works%2C%20and%20that%20claim%20shouldn't%20fail%20just%20because%20we%20guessed%20a%20coefficient%20wrong.%20So%20its%20gates%20ask%20whether%20*some*%20task-clean%20rung%20clears%20the%20threshold%3A%20a%20rung%20can%20carry%20H2%20even%20if%20H1%20fails%20because%20a%20different%20rung%20broke%20the%20task.%20The%20task-clean%20requirement%20keeps%20this%20from%20being%20cherry-picking%3A%20a%20rung%20earns%20nothing%20by%20reaching%20alignment%20if%20it%20broke%20the%20task%20getting%20there.%20And%20the%20ladder%20has%20only%20four%20rungs%2C%20so%20the%20multiple-comparisons%20cost%20of%20reading%20across%20it%20is%20small.%20If%20the%20rung%20H2%20resolves%20on%20is%20not%20%24%5Clambda%7B%3D%7D0.1%24%2C%20we%20say%20so%20and%20report%20both.%20If%20more%20than%20one%20other%20task-clean%20rung%20clears%20the%20gates%2C%20H2%20resolves%20on%20the%20one%20with%20the%20highest%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%3B%20the%20choice%20is%20mechanical%20rather%20than%20ours.%20If%20no%20rung%20is%20task-clean%2C%20H2%20fails%20on%20the%20gate%20it%20is%20scored%20against%2C%20and%20we%20report%20the%20alignment%20numbers%20anyway.%20The%20star%20arm%20is%20not%20a%20rung%3A%20it%20is%20reported%20alongside%20the%20ladder%2C%20but%20it%20takes%20no%20part%20in%20the%20%22every%20anchored%20rung%22%20test%20of%20H1%20or%20in%20the%20search%20for%20a%20rung%20for%20H2%20to%20resolve%20on.%0A%0A%20%20%20%20Every%20hypothesis%20except%20H4%20is%20scored%20on%20the%20final%20checkpoint%20of%20each%20run%3B%20H4%20is%20the%20one%20that%20reads%20the%20trajectory%2C%20and%20its%20end-of-training%20value%20is%20that%20same%20final%20checkpoint.%0A%0A%20%20%20%20H3%20is%20scored%20on%20the%20same%20rung%20H2%20resolves%20on%2C%20and%20only%20if%20H2(a)%20passed%20there.%20That%20restriction%20matters%20because%20the%20H3%20gate%20is%20a%20ratio%20of%20margins.%20If%20both%20margins%20are%20at%20noise%20level%2C%20a%202%C3%97%20ratio%20between%20them%20would%20look%20like%20condensation%20where%20nothing%20condensed.%20H4%20applies%20to%20every%20anchored%20run%20whose%20alignment%20ever%20clears%20a%20floor%20of%200.2.%20Where%20the%20anchor%20never%20took%2C%20the%20running%20maximum%20is%20itself%20at%20noise%20level%2C%20and%20a%20ratio%20of%20noise-level%20margins%20says%20nothing%20about%20stability.%20Runs%20below%20the%20floor%20are%20reported%20but%20not%20scored.%0A%0A%20%20%20%20%23%23%23%20Measurements%0A%0A%20%20%20%20Behavioral%3A%20exact%20match%2C%20NLL%2C%5B%5Enll%5D%20and%20the%20distance%20metrics%20of%20ex-2.1.3%20on%20all%20eval%20sets%2C%20with%20the%20usual%20nulls%20from%20%60sca.baselines%60.%5B%5Enulls%5D%20Exact%20match%20is%20the%20coarser%20scoring%20of%20the%20two%3A%20it%20only%20counts%20the%20argmax.%20So%20a%20run%20can%20hold%20accuracy%20while%20NLL%20drifts%2C%20and%20that%20drift%20is%20the%20earlier%20warning%20that%20capacity%20is%20being%20spent%20elsewhere.%0A%0A%20%20%20%20Alignment%20maps%3A%20%24%5Ccos(h_%7B%5Cell%2Ct%7D%2C%20%5Chat%20v_%7B%5Ctext%7Bred%7D%7D)%24%20on%20the%20alignment%20probe%20set%2C%20per%20layer%20%C3%97%20position.%20Write%20%24%5Calpha_c(%5Cell%2C%20t)%24%20for%20the%20mean%20of%20that%20cosine%20over%20probe%20lines%20whose%20first%20operand%20is%20color%20%24c%24.%20H2%2C%20H3%2C%20and%20H4%20all%20read%20one%20statistic%20off%20this%20map%2C%20the%20alignment%20margin%0A%0A%20%20%20%20%24%24m(%5Cell%2C%20t)%20%3D%20%5Csum_c%20u_c%5C%2C%5Calpha_c(%5Cell%2C%20t)%20%5C%3B-%5C%3B%20%5Cfrac%7B1%7D%7B216%7D%5Csum_c%20%5Calpha_c(%5Cell%2C%20t)%2C%20%5Cqquad%20u_c%20%5Cpropto%20%5Ctexttt%7Bredness%7D(c)%5E8%2C%5C%20%5C%20%5Ctextstyle%5Csum_c%20u_c%20%3D%201%24%24%0A%0A%20%20%20%20In%20words%3A%20take%20the%20mean%20alignment%20weighted%20by%20label%20affinity%2C%20and%20subtract%20the%20plain%20mean%20over%20all%20colors.%20The%20margin%20measures%20how%20much%20closer%20a%20color%20sits%20to%20the%20anchor%20for%20being%20the%20kind%20of%20color%20the%20anchor%20pulls.%20The%20weights%20%24u_c%24%20are%20the%20label%20probabilities%20themselves%2C%20normalized%2C%20so%20the%20statistic%20asks%20about%20precisely%20the%20lines%20that%20felt%20the%20anchor%20term.%20A%20margin%20of%200%20means%20the%20anchor%20axis%20is%20indifferent%20to%20redness.%20Since%20%24m%24%20is%20a%20difference%20of%20cosines%2C%20it%20runs%20from%20%24-2%24%20to%20%242%24%2C%20but%20the%20ends%20are%20out%20of%20reach%3A%20%242%24%20would%20need%20the%20red-weighted%20colors%20to%20sit%20exactly%20on%20the%20anchor%20while%20the%20cube%20average%20sits%20at%20the%20exact%20opposite%20direction.%20In%20a%2064-dimensional%20stream%2C%20unrelated%20directions%20sit%20near%20%24%5Ccos%20%3D%200%24%2C%20so%20the%20unweighted%20mean%20should%20stay%20close%20to%20zero%2C%20and%20complete%20success%20looks%20like%20%24m%20%5Capprox%201%24.%0A%0A%20%20%20%20%2F%2F%2F%20details%20%7C%20Why%20weight%20by%20redness%20rather%20than%20group%20colors%0A%20%20%20%20We%20considered%20an%20alternative%3A%20group%20colors%20into%20red%20(%60SIM3%20%3E%200.5%60)%20and%20other%20(%60SIM3%20%3C%200.01%60%2C%20both%20from%20%60sca.colorcube%60)%2C%20and%20score%20a%20red-minus-other%20contrast.%20We%20weight%20by%20%60redness%60%20instead%2C%20for%20one%20reason%3A%20%60redness%60%20is%20what%20generates%20the%20labels%2C%20so%20weighting%20by%20it%20means%20the%20measurement%20and%20the%20supervision%20use%20the%20same%20notion%20of%20red.%20The%20grouped%20version%20uses%20two%20different%20notions%2C%20and%20a%20disagreement%20between%20them%20would%20show%20up%20as%20a%20weak%20result%20with%20no%20way%20to%20tell%20which%20notion%20was%20responsible.%20Weighting%20also%20sets%20no%20threshold%20and%20discards%20no%20color.%20The%20grouped%20version%20throws%20away%20the%20ambiguous%20middle%20(pinks%2C%20oranges%2C%20dark%20reds)%2C%20which%20is%20exactly%20the%20range%20where%20a%20graded%20response%20would%20be%20visible.%20Both%20notions%20of%20red%20do%20appear%20in%20the%20H2(b)%20grading%20gate%2C%20but%20as%20separate%2C%20named%20tracks%3B%20there%2C%20a%20disagreement%20between%20them%20can%20be%20traced%20to%20one%20notion%20or%20the%20other%2C%20which%20it%20couldn't%20inside%20a%20single%20blended%20statistic.%0A%20%20%20%20%2F%2F%2F%0A%0A%20%20%20%20H2%20scores%20the%20layer%20mean%20at%20op1%2C%0A%0A%20%20%20%20%24%24m_%7B%5Ctext%7Bop1%7D%7D%20%3D%20%5Cfrac%7B1%7D%7BL%2B1%7D%5Csum_%7B%5Cell%3D0%7D%5E%7BL%7D%20m(%5Cell%2C%20%5Ctext%7Bop1%7D)%24%24%0A%0A%20%20%20%20We%20average%20over%20anchored%20sites%20because%20the%20anchor%20applies%20to%20all%20of%20them%20equally%2C%20so%20there%20is%20no%20site%20selection%20to%20make.%20Alongside%20the%20mean%20we%20report%20the%20min%20and%20max%20over%20layers%20as%20unscored%20diagnostics%3B%20a%20wide%20min%E2%80%93max%20gap%20tells%20us%20which%20depths%20resist%20the%20anchor.%20H3%20compares%20the%20same%20layer%20mean%20across%20positions%2C%20and%20H4%20tracks%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%20over%20training.%0A%0A%20%20%20%20Grading%3A%20for%20each%20op1%20color%2C%20we%20take%20the%20layer%20mean%20of%20%24%5Calpha_c%24%20at%20the%20op1%20position%20and%20plot%20it%20against%20the%20redness%20of%20that%20color.%20This%20is%20the%20same%20quantity%20that%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%20summarizes%2C%20shown%20per%20color%20instead%20of%20contracted%20to%20a%20number.%20We%20read%20two%20statistics%20off%20this%20plot%3A%20Spearman%20%CF%81%20against%20%60redness%60%2C%20and%20Pearson%20R%C2%B2%20against%20%60sim%C2%B9%C2%B7%E2%81%B5%60.%20Here%20%60sim%60%20is%20the%20angular%20similarity-to-red%20used%20by%20the%20intervention%20scoring%20in%20M1%20(%60sca.colorcube.sim_to_red%60%2C%20restricted%20to%20this%20grid).%20The%20exponent%20comes%20from%20mapping%20the%20M1%20ablation%20result%20from%20damage%20to%20alignment%3A%20damage%20graded%20as%20%60sim%C2%B3%60%20and%20is%20quadratic%20in%20alignment%2C%20so%20alignment%20should%20grade%20as%20%60sim%C2%B9%C2%B7%E2%81%B5%60.%20H2(b)%20reads%20both%20statistics.%0A%0A%20%20%20%20Leakage%20(secondary%2C%20no%20threshold)%3A%20we%20fit%20a%20ridge%20probe%20for%20redness%20on%20the%20residual%20stream%20at%20op1%2C%20one%20probe%20per%20layer%2C%20after%20projecting%20out%20the%20%24%5Chat%20v_%7B%5Ctext%7Bred%7D%7D%24%20component.%20A%20high%20R%C2%B2%20here%20would%20mean%20red%20is%20also%20encoded%20somewhere%20other%20than%20the%20anchor%20axis%3B%20we%20expect%20it%20to%20be%20low.%20R%C2%B2%20is%20read%20on%20held-out%20colors%2C%20using%20a%205-fold%20split%20over%20the%20216%20op1%20colors%2C%20so%20no%20color%20is%20scored%20by%20a%20probe%20that%20saw%20it.%20The%20ridge%20penalty%20is%20chosen%20within%20each%20training%20fold%20by%20an%20inner%20cross-validation%2C%20so%20no%20setting%20is%20picked%20by%20looking%20at%20the%20number%20we%20report.%0A%0A%20%20%20%20Trajectories%3A%20every%20~50%20steps%20we%20record%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%20and%20validation%20loss%2C%20along%20with%20the%20LR%20and%20anchor-weight%20schedules.%20This%20is%20the%20apparatus%20from%20ex-2.9.3%2C%20carried%20over%20as%20the%20first%20queue%20item%20of%20issue%20%2310.%20A%20flat%20loss%20curve%20does%20not%20mean%20learning%20is%20done%2C%20so%20the%20alignment%20trajectory%20is%20the%20evidence%20to%20consult%20before%20any%20decision%20to%20shorten%20the%20schedule.%0A%0A%20%20%20%20%5B%5Enll%5D%3A%20Negative%20log-likelihood%3A%20the%20surprise%2C%20in%20nats%2C%20of%20the%20probability%0A%20%20%20%20the%20model%20assigns%20to%20the%20correct%20answer%20token%2C%20with%200%20meaning%20certain%20and%20correct.%0A%0A%20%20%20%20%5B%5Enulls%5D%3A%20Reference%20scores%20for%20degenerate%20predictors%20(the%20corpus-mean%0A%20%20%20%20color%2C%20a%20uniform%20draw%2C%20the%20identity%20of%20op1)%2C%20which%20make%20a%20distance%20number%20readable%20as%20good%20or%20bad.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Hypotheses%0A%0A%20%20%20%20Unless%20stated%20otherwise%2C%20results%20are%20reported%20on%20the%20%24%5Clambda%7B%3D%7D0.1%24%20condition%20(seed-averaged)%3B%20the%20other%20rungs%20are%20context.%20Per%20the%20scoring%20rule%20above%2C%20the%20H2%20gates%20read%20*some%20task-clean%20rung*%2C%20and%20H3%20follows%20H2.%0A%0A%20%20%20%20**H1.**%20Anchoring%20does%20not%20harm%20the%20task.%20Every%20anchored%20rung%20is%20task-clean%3A%20%60named_holdout%60%20exact%20match%20within%200.02%20(absolute)%20of%20the%20seed%20mean%20of%20the%20%24%5Clambda%7B%3D%7D0%24%20control.%20Partial%3A%20the%20gate%20passes%20at%20%24%5Clambda%20%5Cle%200.1%24%20but%20fails%20at%20%240.3%24.%20The%20star%20arm%20is%20reported%20in%20the%20same%20table%20but%20scored%20only%20descriptively%2C%20per%20the%20scoring%20rule.%0A%0A%20%20%20%20**H2.**%20The%20concept%20lands%20on%20the%20anchor%2C%20and%20does%20so%20in%20a%20graded%20way%2C%20at%20some%20task-clean%20rung.%20(a)%20%24m_%7B%5Ctext%7Bop1%7D%7D%20%5Cge%200.5%24.%0A%20%20%20%20(b)%20Redder%20colors%20sit%20closer%20to%20the%20anchor%2C%20on%20either%20of%20two%20pre-named%20notions%20of%20*redder*.%20The%20grading%20statistic%20for%20a%20color%20%24c%24%20is%20the%20layer%20mean%20of%20%24%5Calpha_c%24%20at%20op1%2C%20averaged%20over%20seeds%20before%20anything%20is%20ranked%20or%20correlated%3B%20over%20the%20216%20colors%2C%20it%20clears%20at%20least%20one%20of%20Spearman%20%24%5Crho%20%5Cge%200.8%24%20against%20%60redness%60%2C%5B%5Espearman%5D%20or%20Pearson%20%24R%5E2%20%5Cge%200.8%24%20against%20%60sim%C2%B9%C2%B7%E2%81%B5%60.%5B%5Epearson%5D%20(c)%20The%20control%20condition%20shows%20%24%7Cm_%7B%5Ctext%7Bop1%7D%7D%7C%20%5Cle%200.1%24.%0A%0A%20%20%20%20%5B%5Espearman%5D%3A%20Spearman%20%CF%81%20is%20a%20correlation%20coefficient%20computed%20on%20ranks%0A%20%20%20%20rather%20than%20values%2C%20so%20it%20measures%20whether%20the%20ordering%20agrees%20and%20doesn't%20care%20about%20the%20shape%20of%20the%20curve.%0A%0A%20%20%20%20%5B%5Epearson%5D%3A%20The%20squared%20Pearson%20correlation%3A%20the%20share%20of%20variance%20in%20the%0A%20%20%20%20response%20explained%20by%20a%20linear%20function%20of%20%60sim%C2%B9%C2%B7%E2%81%B5%60.%20It%20is%20scale-%20and%20offset-invariant%2C%20so%20it%20tests%20proportionality%20to%20the%20shape%20M1%20implies%20for%20alignment%20with%20no%20tuned%20constant.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20Partial%3A%20(a)%20and%20(c)%20hold%20but%20(b)%20fails%20on%20both%20tracks%2C%20with%20the%20grading%20figure%20showing%20a%20step%20rather%20than%20a%20grade.%20In%20a%20step%2C%20the%20reds%20all%20sit%20at%20one%20alignment%2C%20the%20non-reds%20at%20another%2C%20and%20there%20is%20no%20ordering%20within%20either%20group.%0A%0A%20%20%20%20%2F%2F%2F%20admonition%20%7C%20Why%20(b)%20is%20two%20tracks%2C%20and%20how%20the%20gates%20were%20placed%0A%20%20%20%20This%20gate%20went%20through%20several%20review%20rounds%20before%20freezing%2C%20so%20the%20reasoning%20is%20recorded%20here%20in%20full%2C%20with%20the%20response%20shapes%20we%20checked%20and%20what%20each%20scores.%0A%0A%20%20%20%20*The%20shape%20of%20the%20pull%20itself%20fails%20both%20tracks%2C%20and%20that%20is%20the%20intended%20reading.*%20The%20direct%20pull%20is%20proportional%20to%20%60redness%E2%81%B8%60%2C%20and%20a%20response%20that%20stayed%20proportional%20to%20it%20cannot%20clear%20a%20rank%20gate.%20Unrelated%20directions%20in%20a%2064-dimensional%20stream%20put%20a%20floor%20of%20about%200.056%20on%20the%20measured%20%24%5Calpha_c%24%20(a%20spread%20of%20%241%2F%5Csqrt%7B%7B64%7D%7D%24%20per%20cosine%2C%20averaged%20over%20the%205%20layers)%2C%20or%20%E2%89%880.032%20after%20the%20three-seed%20mean%20the%20gate%20is%20scored%20on%2C%20and%20%7Bint((ex.LABEL_P%20%3C%201e-6).sum())%7D%20colors%20have%20expected%20pull%20below%20%2410%5E%7B%7B-6%7D%7D%24.%20So%20most%20of%20the%20cube%20ranks%20at%20random%3B%20simulation%20at%20that%20floor%20puts%20%CF%81%20near%200.21%2C%20and%20its%20R%C2%B2%20against%20%60sim%C2%B9%C2%B7%E2%81%B5%60%20is%20%7Bex.r2_sim(ex.REDNESS**8)%3A.2f%7D%2C%20far%20under%20the%20gate%20on%20both%20tracks.%20A%20response%20confined%20to%20the%20pull%20means%20the%20anchor%20caught%20the%20labeled%20tokens%20rather%20than%20*red*%2C%20which%20is%20the%20memorized-exemplar%20outcome%20(b)%20exists%20to%20catch.%20M1%20sets%20the%20expectation%20for%20success%3A%20with%20labels%20drawn%20from%20this%20same%20affinity%2C%20its%20measured%20damage%20graded%20as%20low%20powers%20of%20%60sim%60.%0A%0A%20%20%20%20*The%20two%20tracks%20name%20two%20families%20a%20generalized%20response%20could%20take*%2C%20one%20from%20each%20side%20of%20the%20milestone.%20Track%201%20is%20%CF%81%20against%20%60redness%60.%20It%20accepts%20a%20response%20rising%20with%20the%20label-generating%20variable%20itself%3A%20a%20linear%20%60redness%60%20response%20scores%20%E2%89%880.98%20at%20the%20seed-mean%20noise%20floor.%20Track%202%20is%20R%C2%B2%20against%20%60sim%C2%B9%C2%B7%E2%81%B5%60%2C%20M1's%20ablation%20result%20mapped%20from%20damage%20to%20alignment%20(damage%20%E2%88%9D%20%60sim%C2%B3%60%20and%20damage%20quadratic%20in%20alignment%20give%20alignment%20%E2%88%9D%20%60sim%C2%B9%C2%B7%E2%81%B5%60%3B%20the%20suppression%20result%20maps%20to%20%60sim%C2%B9%60%20the%20same%20way).%20The%203%2F2%20power%20also%20maximizes%20coverage%20of%20the%20family%3A%20R%C2%B2%20%E2%89%A5%200.86%20against%20every%20power%20of%20%60sim%60%20from%201%20to%203%2C%20and%20%60redness%C2%B3%60%20scores%20%7Bex.r2_sim(ex.REDNESS**3)%3A.2f%7D%20noise-free%2C%20%E2%89%880.86%20at%20the%20floor.%20Each%20track%20is%20robust%20where%20the%20other%20is%20marginal.%20%60sim%60%20orders%20the%20cube%20by%20hue%20rather%20than%20by%20the%20%60redness%60%20formula%2C%20and%20it%20takes%20only%2023%20distinct%20values%20on%20this%20grid%2C%20so%20a%20sim-family%20response%20of%20any%20power%20scores%20%CF%81%20%E2%89%88%200.76%20on%20track%201%20at%20the%20seed-mean%20floor%2C%20under%20the%20gate%3B%20its%20noise-free%20ceiling%20of%20%7Bex.SIM_RHO_CEILING%3A.2f%7D%20sits%20just%20over%20it%2C%20because%20midranks%20credit%20the%20ties.%20In%20the%20other%20direction%2C%20a%20linear%20%60redness%60%20response%20scores%20R%C2%B2%20%3D%20%7Bex.r2_sim(ex.REDNESS)%3A.2f%7D%20on%20track%202%2C%20right%20at%20the%20gate%2C%20while%20clearing%20track%201%20with%20room%20to%20spare.%20Passing%20on%20either%20track%20accepts%20every%20graded%20shape%20above%3B%20requiring%20both%20tracks%20would%20fail%20most%20of%20them.%0A%0A%20%20%20%20*The%20floor%20is%20looser%20than%20the%20first%20draft%20of%20this%20gate%20assumed*%2C%20and%20the%20numbers%20above%20are%20the%20corrected%20ones.%20The%20earlier%20estimate%20divided%20the%20per-cosine%20spread%20by%2027%20probe%20lines%20as%20well%20as%205%20layers%2C%20which%20the%20measurement%20cannot%20do%3A%20at%20op1%20the%2027%20lines%20of%20a%20color%20share%20a%20state%2C%20as%20the%20method%20notes.%20Correcting%20it%20(0.011%20%E2%86%92%200.056%20per%20seed)%20leaves%20both%20thresholds%20where%20they%20were%20frozen%20and%20changes%20what%20each%20track%20covers.%20Track%202%20now%20carries%20the%20graded%20shapes%20that%20are%20not%20linear%20in%20%60redness%60%3A%20%60redness%C2%B3%60%20scores%20%CF%81%20%E2%89%88%200.70%20on%20track%201%20against%20R%C2%B2%20%E2%89%88%200.86%20on%20track%202%2C%20and%20the%20%60sim%60%20family%20likewise.%20Track%201%20carries%20the%20%60redness%60-linear%20family.%20A%20response%20at%20half%20amplitude%20%E2%80%94%20roughly%20the%20least%20H2(a)%20accepts%20%E2%80%94%20clears%20neither%20track%20unless%20it%20is%20close%20to%20linear%20in%20%60redness%60%2C%20so%20the%20gate%20is%20stricter%20than%20we%20first%20estimated%20rather%20than%20looser.%0A%0A%20%20%20%20*A%20pure%20step%20clears%20neither%20gate.*%20The%20measured%20alignment%20is%20continuous%2C%20so%20a%20step%20orders%20the%20colors%20within%20each%20of%20its%20two%20levels%20arbitrarily.%20Its%20expected%20%CF%81%20is%20at%20most%20%7Bex.STEP_RHO_CEILING%3A.2f%7D%20over%20all%20placements%20(a%20step%20at%20redness%200.5%2C%20the%20memorized-exemplar%20shape%2C%20scores%20%7Bex.step_rho(0.5)%3A.2f%7D)%2C%20and%20its%20R%C2%B2%20against%20%60sim%C2%B9%C2%B7%E2%81%B5%60%20is%20at%20most%20%7Bex.STEP_R2_CEILING%3A.2f%7D%20over%20placements%20in%20either%20variable.%20The%20margins%20between%20those%20ceilings%20and%20the%200.8%20gates%20are%20a%20few%20hundredths%2C%20which%20is%20one%20more%20reason%20the%20figure%20stays%20in%20charge.%20What%20would%20carry%20a%20steppy%20response%20over%20a%20gate%20is%20residual%20ordering%20within%20the%20levels%2C%20which%20is%20some%20grading%20after%20all%3B%20for%20shapes%20in%20between%2C%20the%20arbiter%20is%20the%20windowed%20mean%20drawn%20through%20the%20scatter.%0A%20%20%20%20%2F%2F%2F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20**H3.**%20The%20concept%20condenses%20at%20the%20position%20that%20carries%20it%3A%20that%20is%2C%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%20is%20at%20least%202%C3%97%20the%20same%20layer%20mean%20at%20each%20of%20%60%2B%60%2C%20op2%2C%20and%20%60%3D%60.%20If%20the%20margin%20at%20a%20comparison%20position%20is%20zero%20or%20negative%2C%20the%202%C3%97%20test%20has%20no%20content%2C%20so%20we%20treat%20it%20as%20met.%20(H3%20is%20scored%20only%20when%20H2(a)%20has%20already%20put%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%20above%200.5%2C%20so%20a%20comparison%20site%20at%20or%20below%20zero%20is%20dominated%20outright.)%20The%20anchor%20pulls%20those%20four%20positions%20identically%2C%20so%20the%20comparison%20is%20between%20sites%20that%20differ%20only%20in%20what%20the%20task%20does%20with%20them.%20The%20answer%20and%20newline%20positions%20are%20outside%20the%20pull%3B%20they%20are%20reported%20but%20not%20scored.%20Per%20the%20scoring%20rule%2C%20H3%20resolves%20on%20the%20rung%20H2%20does%2C%20and%20only%20if%20H2(a)%20passed%20there.%0A%0A%20%20%20%20We%20also%20anticipate%20a%20specific%20alternative%20outcome%3A%20broadcast%2C%20where%20all%20positions%20of%20a%20labeled%20line%20move%20toward%20%24%5Chat%20v_%7B%5Ctext%7Bred%7D%7D%24%20roughly%20equally.%20That%20would%20fail%20H3%20while%20H2%20passes.%20It%20would%20tell%20us%20something%20about%20sequence-level%20labeling%20rather%20than%20about%20anchoring%20itself%3B%20a%20logsumexp%20position-pooling%20variant%20is%20the%20queued%20response.%0A%0A%20%20%20%20**H4.**%20The%20late-instability%20mechanism%20of%20ex-2.9.3%20does%20not%20reappear%20under%20the%20anneal-to-floor%20schedule.%20Concretely%3A%20for%20every%20anchored%20run%20whose%20running%20maximum%20of%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%20reaches%200.2%2C%20the%20end-of-training%20value%20is%20at%20least%200.8%C3%97%20that%20maximum.%20The%200.2%20floor%20keeps%20the%20gate%20from%20resolving%20on%20noise.%20In%20a%20simulation%20of%20unrelated%2064-d%20states%2C%20the%20per-checkpoint%20noise%20in%20the%20margin%20is%20near%200.021%2C%20the%20maximum%20of%20a%20noise-only%20trajectory%20is%20near%200.06%2C%20and%20a%20ratio%20of%20noise-level%20margins%20fails%20the%200.8%C3%97%20gate%20about%20as%20often%20as%20not.%20The%20floor%20is%20therefore%20about%203%C3%97%20a%20noise-only%20trajectory's%20peak%2C%20and%20well%20under%20H2(a)'s%200.5.%20Runs%20below%20the%20floor%20are%20reported%20but%20not%20scored.%20Partial%3A%20violations%20confined%20to%20the%20%24%5Clambda%7B%3D%7D0.3%24%20condition.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20_res%20%3D%20load_results()%0A%20%20%20%20mo.stop(_res%20is%20None%2C%20mo.md(%22_Results%20are%20not%20published%20yet%3B%20the%20analysis%20cells%20below%20render%20once%20they%20are._%22))%0A%20%20%20%20assert%20_res%20is%20not%20None%0A%20%20%20%20metrics%2C%20arrays%20%3D%20_res%0A%20%20%20%20cells%20%3D%20%7Bc%5B%22label%22%5D%3A%20c%20for%20c%20in%20metrics%5B%22cells%22%5D%7D%0A%20%20%20%20stats%20%3D%20metrics%5B%22corpus_stats%22%5D%0A%0A%20%20%20%20RUNGS%20%3D%20%5Bf%22lam%7Blam%3Ag%7D%22%20for%20lam%20in%20ex.LAMBDAS%5D%0A%20%20%20%20STAR%20%3D%20%22lam0.1-star%22%0A%20%20%20%20CONDS%20%3D%20%5B*RUNGS%2C%20STAR%5D%0A%20%20%20%20%23%20Matplotlib%20titles%20render%20LaTeX%3B%20an%20authored%20HTML%20table%20does%20not%2C%20so%20it%20takes%20the%0A%20%20%20%20%23%20plain-text%20pair%20rather%20than%20showing%20a%20reader%20the%20markup.%0A%20%20%20%20LABELS%20%3D%20%7B**%7Bf%22lam%7Blam%3Ag%7D%22%3A%20rf%22%24%5Clambda%3D%7Blam%3Ag%7D%24%22%20for%20lam%20in%20ex.LAMBDAS%7D%2C%20STAR%3A%20r%22%24%5Clambda%3D0.1%5E%7B*%7D%24%22%7D%0A%20%20%20%20LABELS_TXT%20%3D%20%7B**%7Bf%22lam%7Blam%3Ag%7D%22%3A%20f%22%CE%BB%20%3D%20%7Blam%3Ag%7D%22%20for%20lam%20in%20ex.LAMBDAS%7D%2C%20STAR%3A%20%22%CE%BB%20%3D%200.1*%22%7D%0A%0A%20%20%20%20def%20over_seeds(cond%3A%20str%2C%20fn)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20%22%22%22One%20value%20per%20seed%20for%20a%20condition%2C%20in%20seed%20order.%22%22%22%0A%20%20%20%20%20%20%20%20return%20np.array(%5Bfn(cells%5Bf%22%7Bcond%7D-s%7Bs%7D%22%5D)%20for%20s%20in%20ex.SEEDS%5D)%0A%0A%20%20%20%20def%20acc(cond%3A%20str%2C%20set_name%3A%20str%20%3D%20%22named_holdout%22%2C%20key%3A%20str%20%3D%20%22accuracy%22)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20return%20over_seeds(cond%2C%20lambda%20c%3A%20c%5B%22sets%22%5D%5Bset_name%5D%5Bkey%5D)%0A%0A%20%20%20%20def%20alpha_map(cond%3A%20str)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20%22%22%22Seed-mean%20alignment%20map%20for%20a%20condition%3A%20(layers%2C%20colors%2C%20positions).%22%22%22%0A%20%20%20%20%20%20%20%20return%20np.mean(%5Barrays%5Bf%22%7Bcond%7D-s%7Bs%7D%2Falpha%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%0A%0A%20%20%20%20def%20margin_map(cond%3A%20str)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20%22%22%22Seed-mean%20margin%20map%3A%20(layers%2C%20positions).%22%22%22%0A%20%20%20%20%20%20%20%20return%20np.mean(%5Barrays%5Bf%22%7Bcond%7D-s%7Bs%7D%2Fmargin%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%0A%0A%20%20%20%20def%20m_op1(cond%3A%20str)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20%22%22%22Per-seed%20layer-mean%20margin%20at%20op1%20%E2%80%94%20the%20statistic%20H2(a)%2C%20H3%20and%20H4%20read.%22%22%22%0A%20%20%20%20%20%20%20%20return%20over_seeds(cond%2C%20lambda%20c%3A%20c%5B%22m_op1%22%5D)%0A%0A%20%20%20%20def%20grading(cond%3A%20str)%20-%3E%20tuple%5Bnp.ndarray%2C%20float%2C%20float%5D%3A%0A%20%20%20%20%20%20%20%20%22%22%22The%20per-color%20response%20at%20op1%20(seed-mean%2C%20layer-mean)%20with%20its%20two%20H2(b)%20statistics.%22%22%22%0A%20%20%20%20%20%20%20%20a%20%3D%20alpha_map(cond)%5B%3A%2C%20%3A%2C%200%5D.mean(axis%3D0)%0A%20%20%20%20%20%20%20%20return%20a%2C%20ex.spearman(a%2C%20ex.REDNESS)%2C%20ex.r2_sim(a)%0A%0A%20%20%20%20CONTROL_ACC%20%3D%20float(acc(%22lam0%22).mean())%0A%20%20%20%20TASK_CLEAN%20%3D%20%7Bc%3A%20bool(abs(acc(c).mean()%20-%20CONTROL_ACC)%20%3C%3D%200.02)%20for%20c%20in%20CONDS%7D%0A%20%20%20%20geometry%20%3D%20load_geometry()%20or%20%7B%7D%0A%20%20%20%20return%20(%0A%20%20%20%20%20%20%20%20CONDS%2C%0A%20%20%20%20%20%20%20%20CONTROL_ACC%2C%0A%20%20%20%20%20%20%20%20LABELS%2C%0A%20%20%20%20%20%20%20%20LABELS_TXT%2C%0A%20%20%20%20%20%20%20%20RUNGS%2C%0A%20%20%20%20%20%20%20%20TASK_CLEAN%2C%0A%20%20%20%20%20%20%20%20acc%2C%0A%20%20%20%20%20%20%20%20arrays%2C%0A%20%20%20%20%20%20%20%20cells%2C%0A%20%20%20%20%20%20%20%20geometry%2C%0A%20%20%20%20%20%20%20%20grading%2C%0A%20%20%20%20%20%20%20%20m_op1%2C%0A%20%20%20%20%20%20%20%20margin_map%2C%0A%20%20%20%20%20%20%20%20stats%2C%0A%20%20%20%20)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Task%20cost%20(H1)%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(CONDS%2C%20CONTROL_ACC%2C%20LABELS_TXT%2C%20TASK_CLEAN%2C%20acc)%3A%0A%20%20%20%20%23%20ex-2.1.3's%20published%20v216%20condition%2C%20the%20external%20reference%20for%20the%20control%20row.%0A%20%20%20%20_REF%20%3D%20%7B%22named_seen%22%3A%201.000%2C%20%22named_holdout%22%3A%200.9948%2C%20%22nll%22%3A%200.0245%2C%20%22open%22%3A%200.1414%7D%0A%0A%20%20%20%20def%20_cell(cond%3A%20str%2C%20set_name%3A%20str%2C%20key%3A%20str%2C%20fmt%3A%20str%20%3D%20%22%7B%3A.3f%7D%22)%20-%3E%20str%3A%0A%20%20%20%20%20%20%20%20v%20%3D%20acc(cond%2C%20set_name%2C%20key)%0A%20%20%20%20%20%20%20%20return%20f%22%7Bfmt.format(v.mean())%7D%20%3Cspan%20class%3D'range'%3E%C2%B1%7B(v.max()%20-%20v.min())%20%2F%202%3A.3f%7D%3C%2Fspan%3E%22%0A%0A%20%20%20%20_rows%20%3D%20%22%22.join(%0A%20%20%20%20%20%20%20%20f%22%3Ctr%3E%3Cth%3E%7BLABELS_TXT%5Bc%5D%7D%3C%2Fth%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_cell(c%2C%20'named_seen'%2C%20'accuracy')%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_cell(c%2C%20'named_holdout'%2C%20'accuracy')%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_cell(c%2C%20'named_holdout'%2C%20'nll')%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_cell(c%2C%20'open'%2C%20'guess_dist')%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7Bacc(c).mean()%20-%20CONTROL_ACC%3A%2B.3f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%3E%7B'clean'%20if%20TASK_CLEAN%5Bc%5D%20else%20'not%20clean'%7D%3C%2Ftd%3E%3C%2Ftr%3E%22%0A%20%20%20%20%20%20%20%20for%20c%20in%20CONDS%0A%20%20%20%20)%0A%20%20%20%20_ref%20%3D%20(%0A%20%20%20%20%20%20%20%20f%22%3Ctr%20class%3D'ref'%3E%3Cth%3Eex-2.1.3%20%3Ccode%3Ev216%3C%2Fcode%3E%3C%2Fth%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_REF%5B'named_seen'%5D%3A.3f%7D%3C%2Ftd%3E%3Ctd%20class%3D'num'%3E%7B_REF%5B'named_holdout'%5D%3A.3f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%7B_REF%5B'nll'%5D%3A.3f%7D%3C%2Ftd%3E%3Ctd%20class%3D'num'%3E%7B_REF%5B'open'%5D%3A.3f%7D%3C%2Ftd%3E%22%0A%20%20%20%20%20%20%20%20f%22%3Ctd%20class%3D'num'%3E%E2%80%94%3C%2Ftd%3E%3Ctd%3Ereference%3C%2Ftd%3E%3C%2Ftr%3E%22%0A%20%20%20%20)%0A%20%20%20%20_table%20%3D%20f%22%22%22%0A%20%20%20%20%3Cdiv%20class%3D%22report-table-scroll%22%3E%3Ctable%20class%3D%22report-table%22%3E%0A%20%20%20%20%20%20%3Cthead%3E%3Ctr%3E%0A%20%20%20%20%20%20%20%20%3Cth%3Econdition%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eseen%20EM%3C%2Fth%3E%3Cth%20class%3D%22num%22%3Eholdout%20EM%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3Eholdout%20NLL%3C%2Fth%3E%3Cth%20class%3D%22num%22%3E%3Ccode%3Eopen%3C%2Fcode%3E%20dist%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3E%CE%94%20holdout%20EM%3C%2Fth%3E%3Cth%3EH1%20gate%3C%2Fth%3E%0A%20%20%20%20%20%20%3C%2Ftr%3E%3C%2Fthead%3E%0A%20%20%20%20%20%20%3Ctbody%3E%7B_ref%7D%7B_rows%7D%3C%2Ftbody%3E%0A%20%20%20%20%3C%2Ftable%3E%3C%2Fdiv%3E%0A%20%20%20%20%22%22%22%0A%20%20%20%20_caption%20%3D%20%22%22%22%0A%20%20%20%20Behavior%20by%20condition.%20Each%20cell%20is%20the%20seed%20mean%2C%20with%20half%20the%20seed%20range%0A%20%20%20%20beside%20it.%20EM%20is%20exact%20match%20on%20the%20answer%20token.%20NLL%20is%20the%20surprise%20of%0A%20%20%20%20that%20token%20in%20nats.%20%3Ccode%3Eopen%3C%2Fcode%3E%20dist%20is%20the%20RGB%20distance%20from%20the%0A%20%20%20%20guessed%20color%20to%20the%20true%20mix%2C%20on%20pairs%20with%20no%20named%20answer.%20%CE%94%20holdout%20EM%0A%20%20%20%20is%20the%20signed%20gap%20to%20the%20%CE%BB%20%3D%200%20control%2C%20and%20the%20last%20column%20reports%20the%20H1%0A%20%20%20%20gate%2C%20which%20passes%20when%20that%20gap%20is%20within%200.02.%20The%20first%20row%20is%20the%0A%20%20%20%20published%20ex-2.1.3%20%3Ccode%3Ev216%3C%2Fcode%3E%20condition%3B%20it%20is%20an%20external%0A%20%20%20%20reference%2C%20not%20part%20of%20this%20sweep.%0A%20%20%20%20%22%22%22%0A%20%20%20%20mo.Html(figure_html(_table%2C%20caption%3D_caption%2C%20class_%3D%22report-figure%22))%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(CONDS%2C%20CONTROL_ACC%2C%20acc%2C%20stats)%3A%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20**H1%20holds%2C%20with%20room%20to%20spare.**%20Every%20anchored%20rung%20is%20task-clean.%20The%20largest%20gap%20to%20the%20control%20on%20%60named_holdout%60%20exact%20match%20is%20%7Bmax(abs(acc(c).mean()%20-%20CONTROL_ACC)%20for%20c%20in%20CONDS)%3A.4f%7D%2C%20against%20a%20gate%20of%200.02%2C%20and%20that%20includes%20%24%5Clambda%7B%7B%3D%7D%7D0.3%24.%20Seen%20pairs%20are%20at%201.000%20everywhere.%0A%0A%20%20%20%20The%20finer%20scoring%20agrees.%20Answer%20NLL%20stays%20between%20%7Bmin(acc(c%2C%20%22named_holdout%22%2C%20%22nll%22).mean()%20for%20c%20in%20CONDS)%3A.3f%7D%20and%20%7Bmax(acc(c%2C%20%22named_holdout%22%2C%20%22nll%22).mean()%20for%20c%20in%20CONDS)%3A.3f%7D%20nats%20with%20no%20trend%20in%20%24%5Clambda%24.%20So%20there%20is%20no%20sign%20that%20the%20anchor%20is%20quietly%20consuming%20capacity%20while%20the%20argmax%20stays%20correct.%0A%0A%20%20%20%20The%20%60open%60-pair%20distances%20sit%20together%20near%20%7Bnp.mean(%5Bacc(c%2C%20%22open%22%2C%20%22guess_dist%22).mean()%20for%20c%20in%20CONDS%5D)%3A.3f%7D.%20That%20is%20above%20the%20floor%20of%20%7Bstats%5B%22nulls%22%5D%5B%22open%22%5D%5B%22floor_dist%22%5D%3A.3f%7D%2C%20and%20also%20above%20the%20%7Bstats%5B%22nulls%22%5D%5B%22open%22%5D%5B%22k2%22%5D%5B%22dist%22%5D%3A.3f%7D%20expected%20of%20a%20guesser%20that%20flips%20a%20coin%20between%20the%20two%20names%20bracketing%20the%20true%20mix%20%E2%80%94%20so%20on%20this%20metric%20the%20models%20do%20not%20quite%20reach%20that%20null%2C%20though%20they%20are%20far%20under%20the%20%7Bstats%5B%22nulls%22%5D%5B%22open%22%5D%5B%22blind%22%5D%5B%22dist%22%5D%3A.3f%7D%20of%20a%20guesser%20that%20ignores%20the%20prompt.%20The%20shortfall%20is%20in%20the%20last%20step%20of%20resolving%20between%20two%20adjacent%20names%2C%20and%20it%20is%20a%20property%20of%20this%20testbed%20rather%20than%20of%20the%20anchor%3A%20the%20control%20sits%20with%20the%20rest%2C%20and%20this%20is%20the%20same%20picture%20ex-2.1.3%20reported%20for%20this%20condition.%0A%0A%20%20%20%20So%20at%20these%20weights%2C%20the%20dose%E2%80%93response%20curve%20has%20no%20cost%20side.%20The%20next%20section%20looks%20at%20what%20the%20anchor%20buys.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Alignment%20and%20grading%20(H2)%0A%0A%20%20%20%20The%20concept%20moved%20onto%20the%20anchor%2C%20but%20so%20did%20everything%20else.%20The%20figure%20below%20shows%20the%20per-color%20response%20at%20op1.%20The%20whole%20cube%20lifts%20off%20the%20control%20baseline%20together%2C%20and%20the%20reddest%20colors%20sit%20only%20a%20little%20above%20the%20rest.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(LABELS%2C%20RUNGS%2C%20grading%2C%20m_op1)%3A%0A%20%20%20%20_rungs%20%3D%20%5Bc%20for%20c%20in%20RUNGS%20if%20c%20!%3D%20%22lam0%22%5D%0A%20%20%20%20_resp%20%3D%20%7Bc%3A%20grading(c)%20for%20c%20in%20%5B*_rungs%2C%20%22lam0%22%5D%7D%0A%20%20%20%20_order%20%3D%20np.argsort(ex.REDNESS)%0A%0A%20%20%20%20def%20_windowed(y%3A%20np.ndarray%2C%20k%3A%20int%20%3D%2025)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20%22%22%22Mean%20of%20*y*%20over%20a%20sliding%20window%20of%20the%20redness%20ordering.%22%22%22%0A%20%20%20%20%20%20%20%20pad%20%3D%20np.pad(y%5B_order%5D%2C%20(k%20%2F%2F%202%2C%20k%20%2F%2F%202)%2C%20mode%3D%22edge%22)%0A%20%20%20%20%20%20%20%20return%20np.convolve(pad%2C%20np.ones(k)%20%2F%20k%2C%20mode%3D%22valid%22)%0A%0A%20%20%20%20%40themed(%0A%20%20%20%20%20%20%20%20name%3D%22grading%22%2C%0A%20%20%20%20%20%20%20%20alt_text%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Three%20panels%2C%20one%20per%20anchored%20rung.%20In%20each%2C%20the%20216%20colors%20sit%20in%20a%0A%20%20%20%20%20%20%20%20%20%20%20%20broad%20band%20well%20above%20the%20flat%20control%20at%20zero%2C%20and%20the%20band%20rises%0A%20%20%20%20%20%20%20%20%20%20%20%20gently%20with%20redness%20%E2%80%94%20from%20roughly%200.4%E2%80%930.5%20at%20the%20grey%20end%20to%0A%20%20%20%20%20%20%20%20%20%20%20%200.7%E2%80%930.9%20at%20the%20red%20end%20%E2%80%94%20rather%20than%20separating%20the%20reds%20from%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20rest.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20%20%20%20%20caption%3Dr%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Alignment%20at%20op1%2C%20per%20color%3A%20%24%5Calpha_c%24%2C%20the%20layer%20mean%20of%0A%20%20%20%20%20%20%20%20%20%20%20%20%24%5Ccos(h%2C%20%5Chat%20v_%7B%5Ctext%7Bred%7D%7D)%24%20averaged%20over%20seeds%2C%20against%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20redness%20of%20the%20color.%20One%20mark%20per%20color%2C%20drawn%20in%20that%20color%3B%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20heavy%20line%20is%20a%2025-color%20sliding%20mean%20over%20the%20redness%20ordering%2C%20and%0A%20%20%20%20%20%20%20%20%20%20%20%20the%20flat%20grey%20band%20underneath%20is%20the%20sliding%20mean%20of%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20%24%5Clambda%7B%3D%7D0%24%20control.%20The%20grading%20statistics%20and%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%20are%20quoted%0A%20%20%20%20%20%20%20%20%20%20%20%20per%20panel%3B%20both%20H2(b)%20gates%20sit%20at%200.8.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20)%0A%20%20%20%20def%20_plot()%20-%3E%20plt.Figure%3A%0A%20%20%20%20%20%20%20%20fig%2C%20axes%20%3D%20plt.subplots(1%2C%20len(_rungs)%2C%20figsize%3D(8.4%2C%203.0)%2C%20sharey%3DTrue)%0A%20%20%20%20%20%20%20%20_ctrl%20%3D%20_windowed(_resp%5B%22lam0%22%5D%5B0%5D)%0A%20%20%20%20%20%20%20%20for%20ax%2C%20cond%20in%20zip(axes%2C%20_rungs%2C%20strict%3DTrue)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20a%2C%20rho%2C%20r2%20%3D%20_resp%5Bcond%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.axhline(0%2C%20color%3Dlight_dark(%22%23bbb%22%2C%20%22%23555%22)%2C%20lw%3D0.8%2C%20zorder%3D0)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ex.REDNESS%5B_order%5D%2C%20_ctrl%2C%20color%3Dlight_dark(%22%23999%22%2C%20%22%23777%22)%2C%20lw%3D3%2C%20alpha%3D0.5%2C%20zorder%3D1%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20solid_capstyle%3D%22round%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.scatter(ex.REDNESS%2C%20a%2C%20c%3Dex.GRID_RGB%2C%20s%3D18%2C%20lw%3D0.4%2C%20zorder%3D3%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20edgecolors%3Dlight_dark(%22%2300000033%22%2C%20%22%23ffffff55%22))%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(ex.REDNESS%5B_order%5D%2C%20_windowed(a)%2C%20color%3Dlight_dark(%22%23222%22%2C%20%22%23eee%22)%2C%20lw%3D1.6%2C%20zorder%3D4)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_title(LABELS%5Bcond%5D%2C%20fontsize%3D10)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_xlabel(%22redness%20of%20op1%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.annotate(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20f%22%CF%81%20%3D%20%7Brho%3A.2f%7D%5CnR%C2%B2%20%3D%20%7Br2%3A.2f%7D%5Cn%24m%24%20%3D%20%7Bm_op1(cond).mean()%3A.2f%7D%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(0.03%2C%200.97)%2C%20xycoords%3D%22axes%20fraction%22%2C%20va%3D%22top%22%2C%20fontsize%3D8%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20color%3Dlight_dark(%22%23444%22%2C%20%22%23bbb%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20axes%5B0%5D.set_ylabel(r%22%24%5Calpha_c%24%20at%20op1%22)%0A%20%20%20%20%20%20%20%20axes%5B0%5D.set_ylim(-0.15%2C%201.2)%20%20%23%20headroom%20for%20the%20per-panel%20statistics%0A%20%20%20%20%20%20%20%20return%20fig%0A%0A%20%20%20%20mo.Html(_plot())%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(RUNGS%2C%20cells%2C%20grading%2C%20m_op1)%3A%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20**H2%20fails%20on%20(a)%20and%20(b)%3B%20(c)%20holds.**%20No%20rung%20reaches%20the%200.5%20margin%3A%20%24m_%7B%7B%5Ctext%7B%7Bop1%7D%7D%7D%7D%24%20is%20%7Bm_op1(%22lam0.03%22).mean()%3A.2f%7D%2C%20%7Bm_op1(%22lam0.1%22).mean()%3A.2f%7D%2C%20and%20%7Bm_op1(%22lam0.3%22).mean()%3A.2f%7D%20at%20%24%5Clambda%20%3D%200.03%24%2C%20%240.1%24%2C%20and%20%240.3%24%2C%20and%20the%20seeds%20agree%20to%20within%20%7Bmax(m_op1(c).max()%20-%20m_op1(c).min()%20for%20c%20in%20RUNGS%20if%20c%20!%3D%20%22lam0%22)%3A.3f%7D.%20The%20hypothesis%20only%20needed%20*some*%20task-clean%20rung%20to%20clear%20the%20gate%2C%20and%20since%20every%20rung%20is%20task-clean%2C%20the%20search%20had%20the%20whole%20ladder%20to%20work%20with%3B%20none%20of%20it%20clears%20the%20gate.%20The%20grading%20statistics%20land%20in%20the%20same%20place%3A%20the%20best%20of%20them%20is%20R%C2%B2%20%3D%20%7Bmax(grading(c)%5B2%5D%20for%20c%20in%20RUNGS)%3A.2f%7D%20at%20%24%5Clambda%7B%7B%3D%7D%7D0.1%24%20against%20a%20gate%20of%200.8%2C%20with%20%CF%81%20%E2%89%88%20%7Bnp.mean(%5Bgrading(c)%5B1%5D%20for%20c%20in%20RUNGS%20if%20c%20!%3D%20%22lam0%22%5D)%3A.2f%7D%20on%20the%20rank%20track.%20The%20control%20clears%20(c)%20comfortably%3A%20%24%7Cm_%7B%7B%5Ctext%7B%7Bop1%7D%7D%7D%7D%7C%20%3D%20%7Babs(m_op1(%22lam0%22).mean())%3A.3f%7D%24%2C%20well%20inside%200.1%20and%20about%20the%20size%20of%20the%20per-checkpoint%20noise%20(0.021).%20So%20without%20the%20anchor%2C%20redness%20does%20not%20sit%20preferentially%20on%20this%20axis.%20Note%20the%20margin%20asks%20a%20narrower%20question%20than%20decodability%3A%20a%20probe%20can%20still%20read%20redness%20off%20the%20untouched%20stream%2C%20as%20the%20leakage%20measurement%20below%20shows.%20The%20margin%20only%20asks%20whether%20this%20one%20direction%20singles%20red%20out.%0A%0A%20%20%20%20Why%20does%20the%20margin%20stay%20low%3F%20The%20figure%20shows%20it%20directly%3A%20the%20whole%20cube%20moved.%20Mean%20alignment%20at%20op1%20goes%20from%20%7Bnp.mean(%5Bcells%5Bf%22lam0-s%7Bs%7D%22%5D%5B%22alpha_mean_op1%22%5D%20for%20s%20in%20ex.SEEDS%5D)%3A.3f%7D%20in%20the%20control%20to%20%7Bnp.mean(%5Bcells%5Bf%22lam0.03-s%7Bs%7D%22%5D%5B%22alpha_mean_op1%22%5D%20for%20s%20in%20ex.SEEDS%5D)%3A.2f%7D%2C%20%7Bnp.mean(%5Bcells%5Bf%22lam0.1-s%7Bs%7D%22%5D%5B%22alpha_mean_op1%22%5D%20for%20s%20in%20ex.SEEDS%5D)%3A.2f%7D%2C%20and%20%7Bnp.mean(%5Bcells%5Bf%22lam0.3-s%7Bs%7D%22%5D%5B%22alpha_mean_op1%22%5D%20for%20s%20in%20ex.SEEDS%5D)%3A.2f%7D%20up%20the%20ladder.%20That%20is%20a%20color-independent%20shift%20that%20climbs%20with%20%24%5Clambda%24%20while%20the%20margin%20does%20not.%20The%20margin%20is%20a%20contrast%20between%20red%20and%20non-red%20colors%2C%20so%20a%20shift%20shared%20by%20all%20colors%20does%20not%20count%20toward%20it.%20The%20anchor%20term%2C%20though%2C%20is%20satisfied%20by%20exactly%20that%20shift.%20This%20is%20how%20the%20term%20can%20be%20well%20optimized%20while%20the%20hypothesis%20is%20unsupported.%0A%0A%20%20%20%20Why%20is%20a%20shared%20shift%20available%20to%20the%20model%20at%20all%3F%20Because%20of%20what%20the%20pull%20can%20see.%20Whether%20a%20line%20is%20labeled%20is%20a%20coin%20flip%20the%20model%20cannot%20observe%3A%20nothing%20in%20the%20input%20distinguishes%20a%20labeled%20line%20from%20an%20unlabeled%20one.%20So%20the%20model%20can%20only%20respond%20to%20the%20*expected*%20pull.%20At%20op1%20that%20expectation%20is%20proportional%20to%20the%20label%20affinity%20of%20the%20color%20at%20op1%2C%20which%20is%20red-specific.%20But%20at%20%60%2B%60%2C%20op2%2C%20and%20%60%3D%60%2C%20it%20is%20still%20proportional%20to%20the%20label%20affinity%20of%20*op1*%2C%20which%20says%20nothing%20about%20the%20token%20actually%20sitting%20at%20those%20positions%3B%20op2%2C%20for%20instance%2C%20is%20uniform%20over%20the%20cube.%20So%20three%20of%20the%20four%20pulled%20positions%20ask%20for%20a%20move%20that%20does%20not%20depend%20on%20their%20own%20token%2C%20and%20the%20model%20supplies%20one.%0A%0A%20%20%20%20Alternatively%2C%20the%20whole%20cube%20moved%20because%20nothing%20prevents%20it.%20We%20saw%20this%20in%20M1%2C%20too%3A%20without%20other%20regularization%20terms%20to%20repel%20colors%20from%20each%20other%20or%20from%20a%20subspace%2C%20the%20model%20can%20satisfy%20the%20anchor%20signal%20by%20rotating%20everything%20in%20that%20direction.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(CONDS%2C%20LABELS%2C%20RUNGS%2C%20arrays%2C%20margin_map)%3A%0A%20%20%20%20_by_layer%20%3D%20%7Bc%3A%20margin_map(c)%5B%3A%2C%200%5D%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_seeds%20%3D%20%7Bc%3A%20np.array(%5Barrays%5Bf%22%7Bc%7D-s%7Bs%7D%2Fmargin%22%5D%5B%3A%2C%200%5D%20for%20s%20in%20ex.SEEDS%5D)%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_depths%20%3D%20np.arange(len(_by_layer%5B%22lam0%22%5D))%0A%0A%20%20%20%20%40themed(%0A%20%20%20%20%20%20%20%20name%3D%22margin-by-layer%22%2C%0A%20%20%20%20%20%20%20%20alt_text%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20The%20margin%20at%20op1%20falls%20with%20depth%20at%20every%20anchored%20weight.%20At%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20largest%20weight%20it%20starts%20near%200.56%20in%20the%20embedding%20and%20decays%20to%0A%20%20%20%20%20%20%20%20%20%20%20%20below%200.1%20by%20the%20last%20layer%3B%20at%20the%20smallest%20it%20starts%20near%200.35%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20peaks%20in%20the%20first%20block%2C%20and%20decays%20less%20thereafter.%20The%20control%20is%0A%20%20%20%20%20%20%20%20%20%20%20%20flat%20and%20slightly%20negative.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20%20%20%20%20caption%3Dr%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Where%20the%20margin%20lives%20in%20the%20stack%3A%20the%20alignment%20margin%20at%20op1%20by%20layer%20%E2%80%94%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20per-depth%20terms%20whose%20mean%20is%20%24m_%7B%5Ctext%7Bop1%7D%7D%24.%20Depth%200%20is%20the%20token%0A%20%20%20%20%20%20%20%20%20%20%20%20embedding%2C%20depth%204%20the%20last%20block's%20output.%20Lines%20are%20seed%20means%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20the%20shaded%20band%20around%20the%20control%20is%20its%20seed%20min%E2%80%93max%2C%20as%20the%20scale%0A%20%20%20%20%20%20%20%20%20%20%20%20of%20a%20null.%20The%20anchor%20pulls%20all%20five%20layers%20equally%2C%20so%20the%20slope%0A%20%20%20%20%20%20%20%20%20%20%20%20comes%20from%20the%20network%2C%20not%20from%20the%20pull%20schedule.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20)%0A%20%20%20%20def%20_plot()%20-%3E%20plt.Figure%3A%0A%20%20%20%20%20%20%20%20fig%2C%20ax%20%3D%20plt.subplots(figsize%3D(7.0%2C%203.2))%0A%20%20%20%20%20%20%20%20_c%20%3D%20dict(zip(CONDS%2C%20light_dark(%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%22%23999%22%2C%20%22%23f2b134%22%2C%20%22%23c1332a%22%2C%20%22%237a2320%22%2C%20%22%233d7ea6%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%22%23888%22%2C%20%22%23ffcc66%22%2C%20%22%23f0665a%22%2C%20%22%23b8564d%22%2C%20%22%236ab0d4%22%5D%2C%0A%20%20%20%20%20%20%20%20)%2C%20strict%3DTrue))%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20band%20%3D%20_seeds%5B%22lam0%22%5D%0A%20%20%20%20%20%20%20%20ax.fill_between(_depths%2C%20band.min(0)%2C%20band.max(0)%2C%20color%3D_c%5B%22lam0%22%5D%2C%20alpha%3D0.25%2C%20lw%3D0)%0A%20%20%20%20%20%20%20%20for%20cond%20in%20CONDS%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20_depths%2C%20_by_layer%5Bcond%5D%2C%20color%3D_c%5Bcond%5D%2C%20lw%3D2.0%20if%20cond%20in%20RUNGS%20else%201.4%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ls%3D%22-%22%20if%20cond%20in%20RUNGS%20else%20(0%2C%20(4%2C%203))%2C%20label%3DLABELS%5Bcond%5D%2C%20marker%3D%22o%22%2C%20ms%3D4%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20ax.axhline(0%2C%20color%3Dlight_dark(%22%23bbb%22%2C%20%22%23555%22)%2C%20lw%3D0.8%2C%20zorder%3D0)%0A%20%20%20%20%20%20%20%20ax.set_xticks(_depths)%0A%20%20%20%20%20%20%20%20ax.set_xlabel(%22layer%20(0%20%3D%20embedding)%22)%0A%20%20%20%20%20%20%20%20ax.set_ylabel(r%22%24m%24%20at%20op1%22)%0A%20%20%20%20%20%20%20%20ax.legend(fontsize%3D8%2C%20frameon%3DFalse%2C%20ncols%3D5)%0A%20%20%20%20%20%20%20%20return%20fig%0A%0A%20%20%20%20mo.Html(_plot())%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(margin_map)%3A%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20The%20per-depth%20view%20shows%20where%20what%20little%20selectivity%20exists%20is%20located%2C%20and%20it%20is%20not%20a%20sag%20in%20the%20last%20layer.%20At%20every%20weight%2C%20the%20margin%20peaks%20in%20the%20embedding%20or%20the%20first%20block%20and%20falls%20away%20with%20depth.%20Raising%20%24%5Clambda%24%20steepens%20that%20decay%20rather%20than%20lifting%20the%20curve%3A%20at%20%24%5Clambda%7B%7B%3D%7D%7D0.3%24%20it%20runs%20%7Bmargin_map(%22lam0.3%22)%5B0%2C%200%5D%3A.2f%7D%20%E2%86%92%20%7Bmargin_map(%22lam0.3%22)%5B-1%2C%200%5D%3A.2f%7D%20from%20embedding%20to%20last%20layer%2C%20against%20%7Bmargin_map(%22lam0.03%22)%5B0%2C%200%5D%3A.2f%7D%20%E2%86%92%20%7Bmargin_map(%22lam0.03%22)%5B-1%2C%200%5D%3A.2f%7D%20at%20%24%5Clambda%7B%7B%3D%7D%7D0.03%24.%20So%20a%20heavier%20pull%20buys%20selectivity%20in%20the%20token%20embedding%2C%20then%20loses%20it%20again%20through%20the%20stack.%20That%20fits%20the%20idea%20that%20the%20deeper%20layers%20are%20where%20the%20shared%2C%20color-independent%20shift%20is%20cheapest%20to%20produce%3A%20the%20embedding%20is%20shared%20across%20positions%2C%20so%20moving%20it%20moves%20op2%20too%2C%20while%20a%20block's%20output%20can%20depend%20on%20position%20and%20context.%0A%0A%20%20%20%20A%20second%20reading%20is%20that%20the%20deeper%20layers%20are%20committed%20to%20next-token%20prediction.%20By%20the%20last%20block%2C%20the%20state%20at%20op1%20has%20to%20emit%20%60%2B%60%2C%20and%20this%20model%20is%20probably%20deeper%20than%20the%20task%20needs.%20The%20character-level%20testbeds%20of%20ex-2.1.5%20did%20put%20their%20concept%20readout%20deeper%20in%20the%20stack%2C%20but%20there%20it%20peaked%20at%20the%20pre-answer%20position%2C%20after%20the%20color%20had%20been%20named.%20That%20precedent%20does%20not%20transfer%20to%20op1%2C%20where%20the%20color%20has%20only%20just%20arrived.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Condensation%20vs%20broadcast%20(H3)%0A%0A%20%20%20%20H3%20is%20not%20scored.%20The%20scoring%20rule%20says%20it%20resolves%20on%20the%20same%20rung%20as%20H2%2C%20and%20only%20if%20H2(a)%20passed%20there.%20H2(a)%20did%20not%20pass%20at%20any%20rung.%20We%20still%20report%20the%20map%20below%3A%20the%20condensation%20question%20was%20about%20the%20position%20profile%2C%20and%20even%20a%20low%20margin%20has%20a%20shape%20worth%20looking%20at.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(arrays)%3A%0A%20%20%20%20_cond%20%3D%20%22lam0.1%22%0A%20%20%20%20_POS%20%3D%20%5B%22op1%22%2C%20%22%2B%22%2C%20%22op2%22%2C%20%22%3D%22%2C%20%22ans%22%2C%20%22%E2%8F%8E%22%5D%0A%20%20%20%20_seeds%20%3D%20np.array(%5Barrays%5Bf%22%7B_cond%7D-s%7Bs%7D%2Fmargin%22%5D%20for%20s%20in%20ex.SEEDS%5D)%20%20%23%20(S%2C%20L1%2C%20T)%0A%20%20%20%20_mean%20%3D%20_seeds.mean(axis%3D0)%0A%20%20%20%20_panels%20%3D%20%5B*range(_mean.shape%5B0%5D)%5D%5B%3A%3A-1%5D%20%20%23%20last%20layer%20on%20top%2C%20embedding%20at%20the%20bottom%0A%20%20%20%20_layer_mean%20%3D%20_mean.mean(axis%3D0)%0A%20%20%20%20_ratios%20%3D%20%5B_layer_mean%5B0%5D%20%2F%20_layer_mean%5Bi%5D%20if%20_layer_mean%5Bi%5D%20%3E%200%20else%20np.inf%20for%20i%20in%20(1%2C%202%2C%203)%5D%0A%0A%20%20%20%20%40themed(%0A%20%20%20%20%20%20%20%20name%3D%22positions%22%2C%0A%20%20%20%20%20%20%20%20alt_text%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Six%20panels%20stacked%20by%20depth.%20op1%20dominates%20in%20the%20embedding%20and%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20first%20block%2C%20but%20by%20the%20last%20two%20blocks%20the%20plus%20and%20equals%0A%20%20%20%20%20%20%20%20%20%20%20%20positions%20overtake%20it%3B%20op2%20stays%20the%20smallest%20of%20the%20pulled%0A%20%20%20%20%20%20%20%20%20%20%20%20positions%2C%20and%20the%20newline%20is%20near%20zero%20throughout.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20%20%20%20%20caption%3Dr%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Margin%20by%20position%20and%20depth%3A%20%24m(%5Cell%2C%20t)%24%20across%20the%20six%20positions%20of%20a%20line%2C%20on%0A%20%20%20%20%20%20%20%20%20%20%20%20%24%5Clambda%7B%3D%7D0.1%24%2C%20seed%20mean.%20One%20panel%20per%20layer%2C%20and%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20seed%20mean%20over%20layers%20in%20the%20bottom%20panel%2C%20drawn%20heavier.%20The%0A%20%20%20%20%20%20%20%20%20%20%20%20shaded%20area%20runs%20from%20zero%20to%20the%20seed%20mean%3B%20the%20hairlines%20are%20the%20seed%0A%20%20%20%20%20%20%20%20%20%20%20%20minimum%20and%20maximum.%20Positions%20are%20ordinal%2C%20so%20the%20risers%20are%20sloped%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20but%20nothing%20is%20measured%20between%20them.%20The%20four%20pulled%20positions%20sit%20left%0A%20%20%20%20%20%20%20%20%20%20%20%20of%20the%20dashed%20rule%3B%20the%20answer%20and%20newline%20are%20measured%20only.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20)%0A%20%20%20%20def%20_plot()%20-%3E%20plt.Figure%3A%0A%20%20%20%20%20%20%20%20from%20matplotlib.layout_engine%20import%20ConstrainedLayoutEngine%0A%0A%20%20%20%20%20%20%20%20from%20mini.vis%20import%20smooth_step%2C%20smooth_step_area%0A%0A%20%20%20%20%20%20%20%20%23%20Panel%20furniture%20follows%20the%20depth%20stacks%20of%20ex-2.1.5%20(%60sca.vis_probes%60)%3A%20no%20frame%2C%0A%20%20%20%20%20%20%20%20%23%20gridlines%20carrying%20the%20scale%2C%20x%20ticks%20on%20the%20bottom%20row%20only%2C%20and%20the%20scale%20numbered%0A%20%20%20%20%20%20%20%20%23%20on%20the%20right%20so%20it%20stays%20clear%20of%20the%20depth%20labels%20on%20the%20left.%0A%20%20%20%20%20%20%20%20fig%20%3D%20plt.figure(figsize%3D(7.0%2C%204.4))%0A%20%20%20%20%20%20%20%20%23%20The%20depth%20panels%20sit%20flush%2C%20since%20the%20stack%20is%20one%20picture%20of%20how%20the%20margin%20moves%0A%20%20%20%20%20%20%20%20%23%20through%20the%20network.%20Constrained%20layout%20is%20on%20repo-wide%20and%20ignores%20the%20gridspec%0A%20%20%20%20%20%20%20%20%23%20spacing%2C%20so%20the%20engine%20carries%20it%3B%20the%20gap%20before%20the%20mean%20comes%20from%20an%20empty%20row%2C%0A%20%20%20%20%20%20%20%20%23%20which%20keeps%20that%20panel%20from%20reading%20as%20a%20sixth%20layer.%0A%20%20%20%20%20%20%20%20_engine%20%3D%20fig.get_layout_engine()%0A%20%20%20%20%20%20%20%20assert%20isinstance(_engine%2C%20ConstrainedLayoutEngine)%0A%20%20%20%20%20%20%20%20_engine.set(hspace%3D0%2C%20h_pad%3D0.01%2C%20wspace%3D0)%0A%20%20%20%20%20%20%20%20_gs%20%3D%20fig.add_gridspec(len(_panels)%20%2B%202%2C%201%2C%20height_ratios%3D%5B*%5B1.0%5D%20*%20len(_panels)%2C%200.25%2C%201.0%5D)%0A%20%20%20%20%20%20%20%20axes%20%3D%20%5Bfig.add_subplot(_gs%5Bi%5D)%20for%20i%20in%20%5B*range(len(_panels))%2C%20len(_panels)%20%2B%201%5D%5D%0A%20%20%20%20%20%20%20%20for%20ax%20in%20axes%5B1%3A%5D%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.sharex(axes%5B0%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.sharey(axes%5B0%5D)%0A%20%20%20%20%20%20%20%20_ink%20%3D%20light_dark(%22%23c1332a%22%2C%20%22%23f0665a%22)%0A%20%20%20%20%20%20%20%20_hair%20%3D%20light_dark(%22%2300000055%22%2C%20%22%23ffffff55%22)%0A%20%20%20%20%20%20%20%20x%20%3D%20np.arange(len(_POS))%0A%20%20%20%20%20%20%20%20rows%20%3D%20%5B(ax%2C%20_mean%5Bd%5D%2C%20_seeds%5B%3A%2C%20d%5D%2C%20f%22%7Bd%7D%22)%20for%20ax%2C%20d%20in%20zip(axes%5B%3A-1%5D%2C%20_panels%2C%20strict%3DTrue)%5D%0A%20%20%20%20%20%20%20%20rows.append((axes%5B-1%5D%2C%20_layer_mean%2C%20_seeds.mean(axis%3D1)%2C%20%22mean%22))%0A%20%20%20%20%20%20%20%20for%20ax%2C%20y%2C%20spread%2C%20name%20in%20rows%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20heavy%20%3D%20name%20%3D%3D%20%22mean%22%0A%20%20%20%20%20%20%20%20%20%20%20%20smooth_step_area(ax%2C%20x%2C%20y%2C%20ramp%3D0.5%2C%20color%3D_ink%2C%20alpha%3Dlight_dark(0.18%2C%200.24))%0A%20%20%20%20%20%20%20%20%20%20%20%20smooth_step(ax%2C%20x%2C%20y%2C%20ramp%3D0.5%2C%20color%3D_ink%2C%20lw%3D1.8%20if%20heavy%20else%201.1)%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20edge%20in%20(spread.min(0)%2C%20spread.max(0))%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20smooth_step(ax%2C%20x%2C%20edge%2C%20ramp%3D0.5%2C%20color%3D_hair%2C%20lw%3D0.5)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.axvline(3.5%2C%20color%3Dlight_dark(%22%23bbb%22%2C%20%22%23555%22)%2C%20lw%3D0.8%2C%20ls%3D(0%2C%20(3%2C%203))%2C%20zorder%3D0)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_ylabel(name%2C%20fontsize%3D8)%0A%20%20%20%20%20%20%20%20%20%20%20%20%23%20Little%20headroom%3A%20the%20panels%20are%20flush%2C%20so%20slack%20inside%20one%20reads%20as%20a%20gap.%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set(ylim%3D(-0.008%2C%200.508)%2C%20xlim%3D(-0.4%2C%20len(_POS)%20-%200.6)%2C%20yticks%3D%5B0.0%2C%200.25%2C%200.5%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.spines%5B%3A%5D.set_visible(False)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.grid(axis%3D%22y%22%2C%20which%3D%22major%22%2C%20c%3D%22%23888%22%2C%20alpha%3D0.2)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.tick_params(axis%3D%22x%22%2C%20length%3D0%2C%20labelbottom%3DFalse)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.tick_params(axis%3D%22y%22%2C%20left%3DTrue%2C%20right%3DTrue%2C%20direction%3D%22in%22%2C%20labelleft%3DFalse%2C%20labelright%3DFalse)%0A%20%20%20%20%20%20%20%20%23%20One%20panel%20says%20what%20the%20scale%20is%3B%20numbering%20all%20six%20spends%20ink%20on%20a%20fact%20stated%20once.%0A%20%20%20%20%20%20%20%20axes%5B-1%5D.tick_params(axis%3D%22y%22%2C%20labelright%3DTrue%2C%20labelsize%3D7%2C%20pad%3D2)%0A%20%20%20%20%20%20%20%20axes%5B-1%5D.set_xticks(x%2C%20_POS)%0A%20%20%20%20%20%20%20%20axes%5B-1%5D.tick_params(axis%3D%22x%22%2C%20labelbottom%3DTrue%2C%20labelsize%3D8)%0A%20%20%20%20%20%20%20%20axes%5B-1%5D.annotate(%0A%20%20%20%20%20%20%20%20%20%20%20%20f%22op1%20%3A%20%2B%20%3D%20%7B_ratios%5B0%5D%3A.1f%7D%C3%97%20%20%20%20op1%20%3A%20op2%20%3D%20%7B_ratios%5B1%5D%3A.1f%7D%C3%97%20%20%20%20op1%20%3A%20%3D%20%3D%20%7B_ratios%5B2%5D%3A.1f%7D%C3%97%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20(0.98%2C%200.9)%2C%20xycoords%3D%22axes%20fraction%22%2C%20ha%3D%22right%22%2C%20va%3D%22top%22%2C%20fontsize%3D8%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20color%3Dlight_dark(%22%23444%22%2C%20%22%23bbb%22)%2C%0A%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20fig.supylabel(%22layer%22%2C%20fontsize%3D9)%0A%20%20%20%20%20%20%20%20return%20fig%0A%0A%20%20%20%20mo.Html(_plot())%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(margin_map)%3A%0A%20%20%20%20_lm%20%3D%20margin_map(%22lam0.1%22).mean(axis%3D0)%0A%20%20%20%20_r%20%3D%20%5B_lm%5B0%5D%20%2F%20_lm%5Bi%5D%20for%20i%20in%20(1%2C%202%2C%203)%5D%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20op1%20does%20lead%2C%20but%20not%20by%20the%20factor%20H3%20named%3A%20%7B_r%5B0%5D%3A.1f%7D%C3%97%20against%20%60%2B%60%2C%20%7B_r%5B2%5D%3A.1f%7D%C3%97%20against%20%60%3D%60%2C%20and%20%7B_r%5B1%5D%3A.1f%7D%C3%97%20against%20op2.%20Had%20the%20gate%20been%20live%2C%20the%20op2%20comparison%20would%20have%20passed%20and%20the%20other%20two%20would%20not.%20So%20the%20outcome%20sits%20between%20condensation%20and%20broadcast%20rather%20than%20at%20either.%20The%20ordering%20itself%20is%20informative.%20op2%20is%20the%20position%20where%20the%20expected%20pull%20carries%20no%20information%20about%20the%20token%20actually%20there%2C%20and%20it%20has%20the%20least%20margin.%20%60%2B%60%20and%20%60%3D%60%20are%20constant%20tokens%2C%20so%20their%20states%20are%20free%20to%20encode%20the%20context%20of%20the%20line%3B%20they%20carry%20%7B_lm%5B1%5D%20%2F%20_lm%5B0%5D%3A.0%25%7D%20and%20%7B_lm%5B3%5D%20%2F%20_lm%5B0%5D%3A.0%25%7D%20of%20the%20margin%20at%20op1.%0A%0A%20%20%20%20The%20layer%20mean%20also%20hides%20an%20inversion%20that%20the%20panels%20above%20it%20show%20plainly.%20In%20the%20embedding%20and%20the%20first%20block%2C%20op1%20is%20the%20only%20position%20with%20much%20margin%20at%20all%20(%7Bmargin_map(%22lam0.1%22)%5B0%2C%200%5D%3A.2f%7D%2C%20against%20%7Bmargin_map(%22lam0.1%22)%5B0%2C%201%5D%3A.2f%7D%20at%20%60%2B%60).%20By%20the%20last%20block%20the%20ordering%20has%20reversed%3A%20op1%20sits%20at%20%7Bmargin_map(%22lam0.1%22)%5B-1%2C%200%5D%3A.2f%7D%2C%20while%20%60%2B%60%20and%20%60%3D%60%20carry%20%7Bmargin_map(%22lam0.1%22)%5B-1%2C%201%5D%3A.2f%7D%20and%20%7Bmargin_map(%22lam0.1%22)%5B-1%2C%203%5D%3A.2f%7D.%20So%20*red*%20enters%20at%20the%20token%20that%20denotes%20it%2C%20and%20with%20depth%20it%20moves%20to%20the%20positions%20that%20follow%20it%20in%20the%20line.%20That%20is%20what%20a%20model%20with%20attention%20would%20do%20with%20a%20fact%20about%20the%20line%2C%20and%20it%20is%20not%20a%20distinction%20the%20condensation%2Fbroadcast%20pair%20anticipated.%20Whether%20that%20pattern%20is%20worth%20reserving%20an%20axis%20for%20is%20an%20intervention%20question%2C%20which%20this%20experiment%20does%20not%20answer.%0A%0A%20%20%20%20The%20answer%20position%2C%20which%20the%20pull%20never%20touches%2C%20still%20shows%20%7B_lm%5B4%5D%3A.2f%7D%2C%20about%20%7B_lm%5B4%5D%20%2F%20_lm%5B0%5D%3A.0%25%7D%20of%20the%20margin%20at%20op1.%20That%20is%20the%20confounded%20quantity%20the%20method%20set%20aside%3A%20a%20red%20op1%20drags%20the%20mixed%20color%20toward%20red%2C%20so%20part%20of%20this%20margin%20is%20spillover%20from%20an%20anchored%20operand%2C%20and%20part%20is%20the%20redness%20of%20the%20answer%20itself%20finding%20the%20axis.%20The%20newline%20sits%20at%20%7B_lm%5B5%5D%3A.2f%7D.%20A%20position%20that%20neither%20carries%20a%20color%20nor%20feels%20the%20pull%20should%20sit%20near%20zero%2C%20so%20this%20is%20a%20useful%20check%20that%20the%20map%20is%20not%20simply%20warm%20everywhere.%0A%0A%20%20%20%20The%20method%20also%20asked%20us%20to%20check%20the%20last%20layer%20at%20%60%3D%60.%20The%20margin%20there%20does%20not%20dip%20relative%20to%20the%20earlier%20layers%3A%20it%20is%20%7Bmargin_map(%22lam0.1%22)%5B-1%2C%203%5D%3A.2f%7D%2C%20against%20%7Bmargin_map(%22lam0.1%22)%5B1%2C%203%5D%3A.2f%7D%20at%20layer%201.%20So%20we%20see%20no%20sign%20of%20the%20answer%20logits%20pushing%20back%20on%20the%20pull%20at%20that%20position.%20With%20the%20task%20cost%20of%20H1%20at%20zero%2C%20that%20is%20the%20consistent%20reading.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Training%20stability%20(H4)%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(CONDS%2C%20LABELS%2C%20cells)%3A%0A%20%20%20%20def%20_traj(cond%3A%20str%2C%20seed%3A%20int%2C%20key%3A%20str)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20return%20np.asarray(cells%5Bf%22%7Bcond%7D-s%7Bseed%7D%22%5D%5B%22traj%22%5D%5Bkey%5D%2C%20dtype%3Dfloat)%0A%0A%20%20%20%20_ratio%20%3D%20%7B%0A%20%20%20%20%20%20%20%20(c%2C%20s)%3A%20float(_traj(c%2C%20s%2C%20%22m_op1%22)%5B-1%5D%20%2F%20_traj(c%2C%20s%2C%20%22m_op1%22).max())%0A%20%20%20%20%20%20%20%20for%20c%20in%20CONDS%0A%20%20%20%20%20%20%20%20for%20s%20in%20ex.SEEDS%0A%20%20%20%20%20%20%20%20if%20_traj(c%2C%20s%2C%20%22m_op1%22).max()%20%3E%3D%20ex.H4_FLOOR%0A%20%20%20%20%7D%0A%20%20%20%20_scored%20%3D%20%5Bc%20for%20c%20in%20CONDS%20if%20c%20!%3D%20%22lam0%22%5D%0A%0A%20%20%20%20%40themed(%0A%20%20%20%20%20%20%20%20name%3D%22trajectories%22%2C%0A%20%20%20%20%20%20%20%20alt_text%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Four%20panels%20of%20alignment%20against%20epoch.%20In%20every%20anchored%20condition%0A%20%20%20%20%20%20%20%20%20%20%20%20the%20margin%20rises%20through%20the%20learning-rate%20warmup%20to%20a%20peak%20between%0A%20%20%20%20%20%20%20%20%20%20%20%20epochs%209%20and%2017%2C%20then%20slides%20back%20to%20about%200.27%20and%20stays%20there%3B%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20slide%20happens%20while%20the%20anchor%20weight%20is%20still%20at%20its%20peak%2C%20not%20at%0A%20%20%20%20%20%20%20%20%20%20%20%20the%20anneal.%20The%20control%20stays%20flat%20at%20zero.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20%20%20%20%20caption%3Dr%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Alignment%20over%20training%3A%20%24m_%7B%5Ctext%7Bop1%7D%7D%24%20measured%20every%2050%20steps.%20One%20panel%0A%20%20%20%20%20%20%20%20%20%20%20%20per%20condition%2C%20one%20line%20per%20seed.%20The%20pale%20band%20behind%20is%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20anchor%20weight%20as%20a%20fraction%20of%20its%20peak%2C%20so%20its%20descent%20marks%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20anneal%20window%3B%20the%20dotted%20line%20is%20the%20learning%20rate.%20Both%20use%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20right-hand%20scale%2C%20numbered%20on%20the%20last%20panel.%20The%20dashed%0A%20%20%20%20%20%20%20%20%20%20%20%20horizontal%20rule%20is%20the%200.2%20floor%20of%20H4%3B%20a%20run%20below%20it%20is%20reported%0A%20%20%20%20%20%20%20%20%20%20%20%20but%20not%20scored.%20Ratios%20are%20the%20end-of-training%20value%20of%20each%20seed%0A%20%20%20%20%20%20%20%20%20%20%20%20over%20its%20running%20maximum.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20)%0A%20%20%20%20def%20_plot()%20-%3E%20plt.Figure%3A%0A%20%20%20%20%20%20%20%20fig%2C%20axes%20%3D%20plt.subplots(1%2C%20len(_scored)%2C%20figsize%3D(9.0%2C%203.0)%2C%20sharey%3DTrue)%0A%20%20%20%20%20%20%20%20_ink%20%3D%20light_dark(%5B%22%23f2b134%22%2C%20%22%23c1332a%22%2C%20%22%237a2320%22%5D%2C%20%5B%22%23ffcc66%22%2C%20%22%23f0665a%22%2C%20%22%23b8564d%22%5D)%0A%20%20%20%20%20%20%20%20_grey%20%3D%20light_dark(%22%23999%22%2C%20%22%23777%22)%0A%20%20%20%20%20%20%20%20for%20ax%2C%20cond%20in%20zip(axes%2C%20_scored%2C%20strict%3DTrue)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20epochs%20%3D%20_traj(cond%2C%200%2C%20%22epoch%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20twin%20%3D%20ax.twinx()%0A%20%20%20%20%20%20%20%20%20%20%20%20twin.fill_between(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20epochs%2C%20_traj(cond%2C%200%2C%20%22weight%22)%20%2F%20max(_traj(cond%2C%200%2C%20%22weight%22).max()%2C%201e-9)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20color%3Dlight_dark(%22%230000000d%22%2C%20%22%23ffffff12%22)%2C%20lw%3D0%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20twin.plot(epochs%2C%20_traj(cond%2C%200%2C%20%22lr%22)%20%2F%20ex.PEAK_LR%2C%20color%3D_grey%2C%20lw%3D0.8%2C%20ls%3D(0%2C%20(1%2C%202)))%0A%20%20%20%20%20%20%20%20%20%20%20%20twin.set_ylim(0%2C%201.05)%0A%20%20%20%20%20%20%20%20%20%20%20%20%23%20The%20schedules%20share%20a%20scale%20across%20panels%2C%20so%20the%20last%20panel%20numbers%20it%20for%20all.%0A%20%20%20%20%20%20%20%20%20%20%20%20_last%20%3D%20cond%20%3D%3D%20_scored%5B-1%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20twin.set_yticks(%5B0%2C%201%5D%2C%20%5B%220%22%2C%20%221%22%5D%20if%20_last%20else%20%5B%5D)%0A%20%20%20%20%20%20%20%20%20%20%20%20twin.tick_params(axis%3D%22y%22%2C%20labelsize%3D7%2C%20colors%3D_grey%2C%20length%3D2%20if%20_last%20else%200)%0A%20%20%20%20%20%20%20%20%20%20%20%20color%20%3D%20_ink%5Bmin(_scored.index(cond)%2C%202)%5D%20if%20cond%20!%3D%20%22lam0.1-star%22%20else%20_ink%5B1%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20seed%20in%20ex.SEEDS%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(epochs%2C%20_traj(cond%2C%20seed%2C%20%22m_op1%22)%2C%20color%3Dcolor%2C%20lw%3D1.2%2C%20alpha%3D0.85)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.axhline(ex.H4_FLOOR%2C%20color%3D_grey%2C%20lw%3D0.8%2C%20ls%3D(0%2C%20(4%2C%203)))%0A%20%20%20%20%20%20%20%20%20%20%20%20ratios%20%3D%20%5B_ratio%5B(cond%2C%20s)%5D%20for%20s%20in%20ex.SEEDS%20if%20(cond%2C%20s)%20in%20_ratio%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.annotate(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22ratios%20%22%20%2B%20%22%2C%20%22.join(f%22%7Br%3A.2f%7D%22%20for%20r%20in%20ratios)%20if%20ratios%20else%20%22all%20below%20floor%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20(0.5%2C%200.04)%2C%20xycoords%3D%22axes%20fraction%22%2C%20ha%3D%22center%22%2C%20fontsize%3D7.5%2C%20color%3Dlight_dark(%22%23444%22%2C%20%22%23bbb%22)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_title(LABELS%5Bcond%5D%2C%20fontsize%3D10)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_xlabel(%22epoch%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_xlim(0%2C%20ex.SCHEDULER.epochs)%0A%20%20%20%20%20%20%20%20axes%5B0%5D.set_ylabel(r%22%24m_%7B%5Ctext%7Bop1%7D%7D%24%22)%0A%20%20%20%20%20%20%20%20axes%5B0%5D.set_ylim(-0.08%2C%200.5)%0A%20%20%20%20%20%20%20%20return%20fig%0A%0A%20%20%20%20mo.Html(_plot())%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(CONDS%2C%20cells%2C%20m_op1)%3A%0A%20%20%20%20_m%20%3D%20%7B(c%2C%20s)%3A%20np.asarray(cells%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22traj%22%5D%5B%22m_op1%22%5D%2C%20dtype%3Dfloat)%20for%20c%20in%20CONDS%20for%20s%20in%20ex.SEEDS%7D%0A%20%20%20%20_ratios%20%3D%20%7Bk%3A%20float(v%5B-1%5D%20%2F%20v.max())%20for%20k%2C%20v%20in%20_m.items()%20if%20v.max()%20%3E%3D%20ex.H4_FLOOR%7D%0A%20%20%20%20_fails%20%3D%20%5Bk%20for%20k%2C%20r%20in%20_ratios.items()%20if%20r%20%3C%200.8%5D%0A%20%20%20%20_peak_epoch%20%3D%20%5Bfloat(cells%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22traj%22%5D%5B%22epoch%22%5D%5Bint(_m%5B(c%2C%20s)%5D.argmax())%5D)%20for%20(c%2C%20s)%20in%20_ratios%5D%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20**H4%20fails%2C%20but%20not%20in%20the%20way%20it%20was%20written%20to%20catch.**%20All%20%7Blen(_ratios)%7D%20anchored%20runs%20clear%20the%200.2%20floor%2C%20so%20all%20of%20them%20are%20scored.%20%7Blen(_fails)%7D%20of%20them%20end%20below%200.8%C3%97%20their%20running%20maximum%2C%20spread%20across%20%7Blen(%7Bc%20for%20c%2C%20_%20in%20_fails%7D)%7D%20of%20the%20four%20anchored%20conditions%2C%20including%20%24%5Clambda%7B%7B%3D%7D%7D0.1%24.%20The%20partial%20outcome%20(violations%20confined%20to%20%24%5Clambda%7B%7B%3D%7D%7D0.3%24)%20does%20not%20apply.%20The%20control%20runs%20peak%20at%20%7Bmax(_m%5B(%22lam0%22%2C%20s)%5D.max()%20for%20s%20in%20ex.SEEDS)%3A.3f%7D.%20That%20is%20under%20the%20floor%20and%20in%20line%20with%20the%200.06%20a%20noise-only%20trajectory%20reaches%2C%20so%20they%20are%20reported%20but%20not%20scored%2C%20as%20designed.%0A%0A%20%20%20%20The%20trajectories%20show%20a%20slide%20rather%20than%20a%20collapse.%20Every%20anchored%20run%20rises%20through%20the%20LR%20warmup%20to%20a%20peak%20between%20epochs%20%7Bmin(_peak_epoch)%3A.0f%7D%20and%20%7Bmax(_peak_epoch)%3A.0f%7D%2C%20then%20loses%20about%20a%20quarter%20of%20that%20over%20the%20following%20forty%20or%20so%20epochs%20and%20holds%20flat%20from%20there.%20The%20anneal%20is%20not%20the%20trigger.%20The%20loss%20of%20margin%20is%20complete%20long%20before%20epoch%2090%3B%20the%20earlier%20anneal%20in%20the%20%24%5Clambda%7B%7B%3D%7D%7D0.1%5E%7B%7B*%7D%7D%24%20arm%20does%20not%20move%20it%3B%20and%20the%20end%20value%20is%20the%20same%20(%7Bmin(m_op1(c).mean()%20for%20c%20in%20CONDS%20if%20c%20!%3D%20%22lam0%22)%3A.2f%7D%E2%80%93%7Bmax(m_op1(c).mean()%20for%20c%20in%20CONDS%20if%20c%20!%3D%20%22lam0%22)%3A.2f%7D)%20across%20a%20tenfold%20range%20of%20%24%5Clambda%24.%20So%20we%20are%20not%20seeing%20the%20ex-2.9.3%20mechanism%2C%20where%20protection%20is%20withdrawn%20while%20the%20optimizer%20is%20still%20hot%20and%20the%20task%20loss%20reclaims%20the%20axis.%20The%20schedule%20did%20the%20job%20it%20was%20designed%20for%3B%20the%20margin%20settles%20at%20a%20level%20the%20pull%20does%20not%20set.%0A%0A%20%20%20%20Read%20together%20with%20the%20growing%20mean%20alignment%20of%20H2%2C%20the%20slide%20looks%20like%20the%20drift%20catching%20up.%20The%20peak%20reflects%20early%20selectivity%2C%20and%20what%20probably%20erodes%20it%20is%20the%20rest%20of%20the%20cube%20arriving%20on%20the%20axis%20afterwards.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Secondary%20measurements%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(CONDS%2C%20LABELS%2C%20RUNGS%2C%20cells)%3A%0A%20%20%20%20_leak%20%3D%20%7Bc%3A%20np.mean(%5Bcells%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22leak_r2%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_axis%20%3D%20%7Bc%3A%20np.mean(%5Bcells%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22axis_r2%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_depths%20%3D%20np.arange(len(_leak%5B%22lam0%22%5D))%0A%0A%20%20%20%20%40themed(%0A%20%20%20%20%20%20%20%20name%3D%22leakage%22%2C%0A%20%20%20%20%20%20%20%20alt_text%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Two%20panels.%20On%20the%20left%2C%20the%20off-axis%20redness%20probe%20scores%20about%200.8%0A%20%20%20%20%20%20%20%20%20%20%20%20at%20every%20depth%20in%20every%20condition%20including%20the%20control%2C%20dipping%0A%20%20%20%20%20%20%20%20%20%20%20%20slightly%20at%20depth%20with%20the%20anchor%20on.%20On%20the%20right%2C%20the%20redness%0A%20%20%20%20%20%20%20%20%20%20%20%20variance%20carried%20by%20the%20anchor%20axis%20alone%20rises%20from%20near%20zero%20in%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20control%20to%20between%200.2%20and%200.5%20with%20the%20anchor%20on.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20%20%20%20%20caption%3Dr%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Where%20redness%20is%20readable%20at%20op1.%20Left%3A%20held-out%20R%C2%B2%20for%20a%20ridge%20probe%20that%20predicts%20redness%20from%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20residual%20stream%20at%20op1%2C%20with%20the%20%24%5Chat%20v_%7B%5Ctext%7Bred%7D%7D%24%20component%0A%20%20%20%20%20%20%20%20%20%20%20%20removed%20first.%20This%20measures%20how%20well%20*red*%20can%20still%20be%20read%20from%0A%20%20%20%20%20%20%20%20%20%20%20%20the%20other%2063%20directions.%20Right%3A%20the%20same%20target%20predicted%20from%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20anchor%20component%20alone%2C%20as%20squared%20correlation.%20Both%20panels%20show%0A%20%20%20%20%20%20%20%20%20%20%20%20per-layer%20seed%20means.%20The%20sample%20is%20the%20216%20op1%20colors%2C%20with%20a%0A%20%20%20%20%20%20%20%20%20%20%20%205-fold%20split%20so%20no%20color%20is%20scored%20by%20a%20probe%20that%20saw%20it%20during%0A%20%20%20%20%20%20%20%20%20%20%20%20fitting.%20Neither%20measurement%20has%20a%20pass%2Ffail%20threshold.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20)%0A%20%20%20%20def%20_plot()%20-%3E%20plt.Figure%3A%0A%20%20%20%20%20%20%20%20fig%2C%20axes%20%3D%20plt.subplots(1%2C%202%2C%20figsize%3D(8.0%2C%203.0)%2C%20sharey%3DTrue)%0A%20%20%20%20%20%20%20%20_c%20%3D%20dict(zip(CONDS%2C%20light_dark(%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%22%23999%22%2C%20%22%23f2b134%22%2C%20%22%23c1332a%22%2C%20%22%237a2320%22%2C%20%22%233d7ea6%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%22%23888%22%2C%20%22%23ffcc66%22%2C%20%22%23f0665a%22%2C%20%22%23b8564d%22%2C%20%22%236ab0d4%22%5D%2C%0A%20%20%20%20%20%20%20%20)%2C%20strict%3DTrue))%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20for%20ax%2C%20data%2C%20title%20in%20((axes%5B0%5D%2C%20_leak%2C%20%22off%20the%20anchor%20axis%22)%2C%20(axes%5B1%5D%2C%20_axis%2C%20%22on%20the%20anchor%20axis%22))%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20cond%20in%20CONDS%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20_depths%2C%20data%5Bcond%5D%2C%20color%3D_c%5Bcond%5D%2C%20marker%3D%22o%22%2C%20ms%3D4%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20lw%3D2.0%20if%20cond%20in%20RUNGS%20else%201.4%2C%20ls%3D%22-%22%20if%20cond%20in%20RUNGS%20else%20(0%2C%20(4%2C%203))%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20label%3DLABELS%5Bcond%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_title(title%2C%20fontsize%3D10)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_xticks(_depths)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_xlabel(%22layer%20(0%20%3D%20embedding)%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_ylim(-0.05%2C%201.0)%0A%20%20%20%20%20%20%20%20axes%5B0%5D.set_ylabel(%22R%C2%B2%20for%20redness%22)%0A%20%20%20%20%20%20%20%20axes%5B0%5D.legend(fontsize%3D8%2C%20frameon%3DFalse%2C%20ncols%3D2%2C%20loc%3D%22lower%20left%22)%0A%20%20%20%20%20%20%20%20return%20fig%0A%0A%20%20%20%20mo.Html(_plot())%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(CONDS%2C%20cells%2C%20m_op1)%3A%0A%20%20%20%20_leak%20%3D%20%7Bc%3A%20np.mean(%5Bcells%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22leak_r2%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_axis%20%3D%20%7Bc%3A%20np.mean(%5Bcells%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22axis_r2%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%20for%20c%20in%20CONDS%7D%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20**Leakage%20is%20essentially%20undiminished.**%20Project%20out%20the%20anchor%20direction%2C%20and%20redness%20is%20still%20readable%20from%20the%20remaining%2063%20directions%3A%20R%C2%B2%20%E2%89%88%20%7B_leak%5B%22lam0.1%22%5D.mean()%3A.2f%7D%20on%20%24%5Clambda%7B%7B%3D%7D%7D0.1%24%2C%20against%20%7B_leak%5B%22lam0%22%5D.mean()%3A.2f%7D%20for%20the%20control.%20The%20difference%20is%20a%20few%20hundredths%2C%20concentrated%20in%20the%20deeper%20layers.%20Meanwhile%20the%20anchor%20axis%20itself%20goes%20from%20carrying%20%7B_axis%5B%22lam0%22%5D.mean()%3A.2f%7D%20of%20the%20redness%20variance%20to%20%7B_axis%5B%22lam0.1%22%5D.mean()%3A.2f%7D.%20So%20the%20axis%20became%20readable%20for%20redness%2C%20but%20redness%20did%20not%20leave%20anywhere%20else.%20Calling%20that%20a%20second%20copy%20of%20the%20concept%20would%20be%20too%20strong%3B%20the%20exploratory%20section%20below%20shows%20why.%0A%0A%20%20%20%20Does%20this%20leakage%20bound%20what%20an%20intervention%20on%20the%20axis%20can%20do%3F%20That%20question%20is%20narrower%20than%20it%20looks%2C%20and%20the%20exploratory%20section%20takes%20it%20up.%20Redness%20is%20a%20function%20of%20color%2C%20and%20a%20model%20that%20answers%20%60red%20%2B%20blue%20%3D%20purple%60%20has%20to%20represent%20color%3B%20so%20a%20high%20off-axis%20score%20may%20reflect%20the%20color%20cube%20rather%20than%20a%20second%20copy%20of%20the%20concept.%20What%20the%20number%20does%20establish%20is%20that%20anchoring%20did%20not%20*concentrate*%20redness%20onto%20the%20axis%20at%20the%20expense%20of%20elsewhere.%20An%20anti-subspace%20term%20would%20constrain%20exactly%20this%20quantity%2C%20by%20pushing%20the%20unlabeled%20cube%20*off*%20the%20axis.%20Without%20it%2C%20nothing%20holds%20either%20the%20leakage%20or%20the%20undifferentiated%20drift%20of%20H2%20in%20check.%0A%0A%20%20%20%20**The%20star%20arm%20changes%20nothing%20measurable.**%20The%20%24%5Clambda%7B%7B%3D%7D%7D0.1%5E%7B%7B*%7D%7D%24%20arm%20tracks%20%24%5Clambda%7B%7B%3D%7D%7D0.1%24%20on%20every%20measurement%3A%20%24m_%7B%7B%5Ctext%7B%7Bop1%7D%7D%7D%7D%24%20of%20%7Bm_op1(%22lam0.1-star%22).mean()%3A.3f%7D%20against%20%7Bm_op1(%22lam0.1%22).mean()%3A.3f%7D%2C%20off-axis%20R%C2%B2%20of%20%7B_leak%5B%22lam0.1-star%22%5D.mean()%3A.2f%7D%20against%20%7B_leak%5B%22lam0.1%22%5D.mean()%3A.2f%7D%2C%20and%20holdout%20accuracy%20identical%20to%20three%20decimals.%20The%20hypothesis%20behind%20this%20arm%20was%20that%20a%20long%20hold%20at%20peak%20anchor%20strength%20is%20what%20leaks.%20Cutting%20forty%20epochs%20from%20the%20hold%20leaves%20the%20same%20leakage%2C%20so%20on%20this%20evidence%20the%20hold%20length%20is%20not%20the%20knob.%20Also%2C%20the%20two%20arms%20are%20the%20same%20run%20up%20to%20epoch%2050%2C%20and%20their%20trajectories%20are%20still%20together%20at%20epoch%20100%3B%20that%20doubles%20as%20a%20check%20that%20the%20pipeline%20is%20deterministic%20where%20it%20should%20be.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Exploratory%20analyses%0A%0A%20%20%20%20Everything%20below%20is%20post%20hoc%3A%20we%20conceived%20it%20after%20seeing%20the%20results%2C%20in%20response%20to%20two%20questions%20about%20the%20primary%20reading.%20It%20reads%20the%20published%20checkpoints%20rather%20than%20the%20preregistered%20measurements%2C%20and%20it%20scores%20no%20hypothesis.%0A%0A%20%20%20%20%23%23%23%20Did%20the%20cube%20collapse%2C%20or%20did%20it%20swing%3F%20(post%20hoc)%0A%0A%20%20%20%20The%20first%20question%3A%20M1%20used%20two%20repulsive%20terms%20that%20this%20experiment%20left%20out%2C%20%60separate%60%20and%20%60anti-subspace%60.%20Which%20one%20are%20we%20missing%3F%20In%20M1%2C%20without%20%60separate%60%20to%20keep%20near-duplicates%20apart%2C%20the%20latent%20cube%20ended%20up%20in%20a%20small%20region%20of%20the%20sphere.%20The%20two%20terms%20predict%20different%20shapes%20here.%20If%20the%20anchor%20squeezed%20the%20216%20colors%20together%2C%20%60separate%60%20is%20the%20missing%20term%3B%20if%20it%20moved%20them%20as%20a%20body%20onto%20the%20axis%20while%20they%20kept%20their%20extent%2C%20%60anti-subspace%60%20is.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(CONDS%2C%20LABELS%2C%20RUNGS%2C%20geometry)%3A%0A%20%20%20%20_spread%20%3D%20%7Bc%3A%20np.mean(%5Bgeometry%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22spread%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_dot%20%3D%20%7Bc%3A%20np.mean(%5Bgeometry%5Bf%22%7Bc%7D-s%7Bs%7D%22%5D%5B%22centre_dot_anchor%22%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20axis%3D0)%20for%20c%20in%20CONDS%7D%0A%20%20%20%20_depths%20%3D%20np.arange(len(_spread%5B%22lam0%22%5D))%0A%0A%20%20%20%20%40themed(%0A%20%20%20%20%20%20%20%20name%3D%22cloud%22%2C%0A%20%20%20%20%20%20%20%20alt_text%3D%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Two%20panels.%20On%20the%20left%2C%20the%20extent%20of%20the%20216-color%20cloud%20falls%0A%20%20%20%20%20%20%20%20%20%20%20%20steeply%20with%20depth%20in%20every%20condition%2C%20control%20included%2C%20from%20about%0A%20%20%20%20%20%20%20%20%20%20%20%200.92%20at%20the%20embedding%20to%20near%200.1%20at%20the%20last%20layer%3B%20mid-stack%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20anchored%20conditions%20sit%20clearly%20below%20the%20control%2C%20at%20roughly%2070%25%20of%0A%20%20%20%20%20%20%20%20%20%20%20%20it%20at%20%CE%BB%3D0.1%20and%2050%25%20at%20%CE%BB%3D0.3.%20On%20the%20right%2C%20the%20direction%20of%20the%20cloud's%20centre%20is%0A%20%20%20%20%20%20%20%20%20%20%20%20unrelated%20to%20the%20anchor%20in%20the%20control%20and%20almost%20parallel%20to%20it%0A%20%20%20%20%20%20%20%20%20%20%20%20from%20the%20first%20block%20onward%20once%20the%20anchor%20is%20on.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20%20%20%20%20caption%3Dr%22%22%22%0A%20%20%20%20%20%20%20%20%20%20%20%20Where%20the%20color%20cloud%20is%2C%20and%20how%20big%3A%20the%20shape%20of%20the%20216%20op1%0A%20%20%20%20%20%20%20%20%20%20%20%20states%2C%20seed%20means%2C%20per%20layer.%20Left%3A%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20extent%20of%20the%20cloud%2C%20the%20mean%20squared%20distance%20of%20a%20color%20from%20the%0A%20%20%20%20%20%20%20%20%20%20%20%20centre%20(states%20are%20unit-norm%2C%20so%20this%20runs%20from%200%20for%20a%20collapsed%0A%20%20%20%20%20%20%20%20%20%20%20%20cloud%20to%201%20for%20a%20spread%20one).%20Right%3A%20the%20cosine%20between%20that%20centre%0A%20%20%20%20%20%20%20%20%20%20%20%20and%20the%20anchor%20direction%20%E2%80%94%20where%20the%20cloud%20sits%2C%20as%20opposed%20to%20how%0A%20%20%20%20%20%20%20%20%20%20%20%20big%20it%20is.%20In%20the%20control%20that%20value%20is%20the%20scale%20of%20an%20unrelated%0A%20%20%20%20%20%20%20%20%20%20%20%20direction%20in%2064%20dimensions.%0A%20%20%20%20%20%20%20%20%22%22%22%2C%0A%20%20%20%20)%0A%20%20%20%20def%20_plot()%20-%3E%20plt.Figure%3A%0A%20%20%20%20%20%20%20%20fig%2C%20axes%20%3D%20plt.subplots(1%2C%202%2C%20figsize%3D(8.0%2C%203.0))%0A%20%20%20%20%20%20%20%20_c%20%3D%20dict(zip(CONDS%2C%20light_dark(%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%22%23999%22%2C%20%22%23f2b134%22%2C%20%22%23c1332a%22%2C%20%22%237a2320%22%2C%20%22%233d7ea6%22%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%5B%22%23888%22%2C%20%22%23ffcc66%22%2C%20%22%23f0665a%22%2C%20%22%23b8564d%22%2C%20%22%236ab0d4%22%5D%2C%0A%20%20%20%20%20%20%20%20)%2C%20strict%3DTrue))%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20for%20ax%2C%20data%2C%20title%20in%20((axes%5B0%5D%2C%20_spread%2C%20%22extent%20of%20the%20cloud%22)%2C%20(axes%5B1%5D%2C%20_dot%2C%20%22centre%20%C2%B7%20anchor%22))%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20cond%20in%20CONDS%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20ax.plot(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20_depths%2C%20data%5Bcond%5D%2C%20color%3D_c%5Bcond%5D%2C%20marker%3D%22o%22%2C%20ms%3D4%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20lw%3D2.0%20if%20cond%20in%20RUNGS%20else%201.4%2C%20ls%3D%22-%22%20if%20cond%20in%20RUNGS%20else%20(0%2C%20(4%2C%203))%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20label%3DLABELS%5Bcond%5D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20)%20%20%23%20fmt%3A%20skip%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_title(title%2C%20fontsize%3D10)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_xticks(_depths)%0A%20%20%20%20%20%20%20%20%20%20%20%20ax.set_xlabel(%22layer%20(0%20%3D%20embedding)%22)%0A%20%20%20%20%20%20%20%20axes%5B0%5D.set_ylim(0%2C%201.0)%0A%20%20%20%20%20%20%20%20axes%5B1%5D.set_ylim(-0.1%2C%201.0)%0A%20%20%20%20%20%20%20%20axes%5B1%5D.axhline(0%2C%20color%3Dlight_dark(%22%23ccc%22%2C%20%22%23444%22)%2C%20lw%3D0.8%2C%20zorder%3D0)%0A%20%20%20%20%20%20%20%20axes%5B0%5D.legend(fontsize%3D8%2C%20frameon%3DFalse%2C%20ncols%3D2%2C%20loc%3D%22upper%20right%22)%0A%20%20%20%20%20%20%20%20return%20fig%0A%0A%20%20%20%20mo.Html(_plot())%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(geometry)%3A%0A%20%20%20%20def%20_at(cond%3A%20str%2C%20key%3A%20str%2C%20slice_%3A%20int)%20-%3E%20float%3A%0A%20%20%20%20%20%20%20%20return%20float(np.mean(%5Bgeometry%5Bf%22%7Bcond%7D-s%7Bs%7D%22%5D%5Bkey%5D%5Bslice_%5D%20for%20s%20in%20ex.SEEDS%5D))%0A%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20The%20answer%20is%20mostly%20*swing*%2C%20and%20the%20surprise%20is%20in%20the%20control.%20Even%20un-anchored%2C%20this%20model%20concentrates%20the%20color%20cloud%20sharply%20with%20depth%3A%20its%20extent%20falls%20from%20%7B_at(%22lam0%22%2C%20%22spread%22%2C%200)%3A.2f%7D%20at%20the%20embedding%20to%20%7B_at(%22lam0%22%2C%20%22spread%22%2C%204)%3A.2f%7D%20at%20the%20last%20layer%2C%20so%20by%20the%20top%20of%20the%20stack%20the%20216%20colors%20already%20sit%20within%20a%20small%20cap.%20The%20task%20itself%20causes%20this%3A%20the%20state%20at%20op1%20is%20being%20turned%20into%20a%20prediction%2C%20and%20the%20prediction%20is%20the%20same%20token%20(%60%2B%60)%20for%20every%20color.%20So%20whatever%20%60separate%60%20would%20protect%20against%20here%2C%20the%20network%20arrives%20at%20without%20help.%0A%0A%20%20%20%20Against%20that%20baseline%2C%20the%20anchor%20changes%20position%20far%20more%20than%20size.%20In%20the%20control%2C%20the%20centre%20of%20the%20cloud%20sits%20%7B_at(%22lam0%22%2C%20%22centre_dot_anchor%22%2C%202)%3A.2f%7D%20of%20the%20way%20onto%20the%20anchor%2C%20which%20is%20the%20scale%20of%20an%20unrelated%20direction.%20With%20the%20anchor%20on%2C%20it%20reaches%20%7B_at(%22lam0.1%22%2C%20%22centre_dot_anchor%22%2C%202)%3A.2f%7D%20at%20%24%5Clambda%7B%7B%3D%7D%7D0.1%24%20and%20%7B_at(%22lam0.3%22%2C%20%22centre_dot_anchor%22%2C%202)%3A.2f%7D%20at%20%24%5Clambda%7B%7B%3D%7D%7D0.3%24.%20Meanwhile%20the%20extent%20at%20the%20same%20layer%20only%20goes%20%7B_at(%22lam0%22%2C%20%22spread%22%2C%202)%3A.2f%7D%20%E2%86%92%20%7B_at(%22lam0.1%22%2C%20%22spread%22%2C%202)%3A.2f%7D%20%E2%86%92%20%7B_at(%22lam0.3%22%2C%20%22spread%22%2C%202)%3A.2f%7D.%20So%20at%20the%20scoring%20rung%20the%20cube%20kept%20about%20%7B_at(%22lam0.1%22%2C%20%22spread%22%2C%202)%20%2F%20_at(%22lam0%22%2C%20%22spread%22%2C%202)%3A.0%25%7D%20of%20its%20extent%20and%20swung%20as%20a%20body%20onto%20the%20axis.%20That%20is%20the%20shape%20a%20missing%20anti-subspace%20term%20predicts%3A%20nothing%20was%20constraining%20the%20*common*%20component%20of%20the%20colors%2C%20and%20the%20common%20component%20is%20what%20moved.%0A%0A%20%20%20%20There%20is%20real%20compression%20at%20the%20top%20of%20the%20ladder%2C%20though.%20At%20%24%5Clambda%7B%7B%3D%7D%7D0.3%24%20the%20mid-stack%20extent%20is%20down%20to%20%7B_at(%22lam0.3%22%2C%20%22spread%22%2C%202)%20%2F%20_at(%22lam0%22%2C%20%22spread%22%2C%202)%3A.0%25%7D%20of%20control%2C%20and%20the%20trend%20across%20rungs%20is%20monotone.%20So%20a%20%60separate%60-style%20term%20would%20start%20to%20matter%20at%20a%20weight%20beyond%20what%20this%20experiment%20tried.%20On%20the%20present%20evidence%2C%20%60anti-subspace%60%20is%20the%20term%20to%20reach%20for%20first%2C%20with%20%60separate%60%20second%3B%20and%20by%20pushing%20unlabeled%20colors%20off%20the%20axis%2C%20the%20anti-subspace%20term%20would%20relieve%20some%20of%20the%20same%20pressure.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%23%20Is%20the%20off-axis%20leakage%20about%20*red*%3F%20(post%20hoc)%0A%0A%20%20%20%20The%20second%20question%3A%20is%20%22an%20intervention%20would%20leave%20a%20copy%20behind%22%20the%20only%20reading%20of%20the%20leakage%20number%3F%20It%20is%20not%2C%20and%20the%20check%20is%20cheap%3A%20run%20the%20same%20off-axis%20probe%20for%20colors%20the%20anchor%20never%20touched.%20Redness%20is%20a%20function%20of%20color%2C%20and%20a%20model%20that%20answers%20%60red%20%2B%20blue%20%3D%20purple%60%20must%20represent%20color.%20So%20redness%20might%20be%20recoverable%20off%20the%20axis%20for%20a%20reason%20that%20has%20nothing%20to%20do%20with%20anchoring.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(geometry)%3A%0A%20%20%20%20_TARGETS%20%3D%20%5B%22redness%22%2C%20%22greenness%22%2C%20%22blueness%22%2C%20%22R%22%2C%20%22G%22%2C%20%22B%22%2C%20%22sim%5E1.5%22%5D%0A%20%20%20%20_DISPLAY%20%3D%20%7B%22sim%5E1.5%22%3A%20%22sim%C2%B9%C2%B7%E2%81%B5%22%7D%0A%20%20%20%20_shown%20%3D%20%5B%22lam0%22%2C%20%22lam0.1%22%5D%0A%0A%20%20%20%20def%20_seeds(cond%3A%20str%2C%20key%3A%20str%2C%20target%3A%20str)%20-%3E%20np.ndarray%3A%0A%20%20%20%20%20%20%20%20return%20np.array(%5Bgeometry%5Bf%22%7Bcond%7D-s%7Bs%7D%22%5D%5Bkey%5D%5Btarget%5D%20for%20s%20in%20ex.SEEDS%5D%2C%20dtype%3Dfloat)%0A%0A%20%20%20%20def%20_cell(cond%3A%20str%2C%20key%3A%20str%2C%20target%3A%20str)%20-%3E%20str%3A%0A%20%20%20%20%20%20%20%20%22%22%22Seed%20mean%20with%20the%20half-range%20beside%20it%2C%20as%20in%20the%20H1%20table.%22%22%22%0A%20%20%20%20%20%20%20%20v%20%3D%20_seeds(cond%2C%20key%2C%20target)%0A%20%20%20%20%20%20%20%20return%20f%22%3Ctd%20class%3D'num'%3E%7Bv.mean()%3A.3f%7D%20%3Cspan%20class%3D'range'%3E%C2%B1%7B(v.max()%20-%20v.min())%20%2F%202%3A.3f%7D%3C%2Fspan%3E%3C%2Ftd%3E%22%0A%0A%20%20%20%20_rows%20%3D%20%22%22.join(%0A%20%20%20%20%20%20%20%20f%22%3Ctr%3E%3Cth%3E%7B_DISPLAY.get(t%2C%20t)%7D%3C%2Fth%3E%22%0A%20%20%20%20%20%20%20%20%2B%20%22%22.join(_cell(c%2C%20%22off_axis_r2%22%2C%20t)%20for%20c%20in%20_shown)%0A%20%20%20%20%20%20%20%20%2B%20%22%22.join(_cell(c%2C%20%22on_axis_r2%22%2C%20t)%20for%20c%20in%20_shown)%0A%20%20%20%20%20%20%20%20%2B%20%22%3C%2Ftr%3E%22%0A%20%20%20%20%20%20%20%20for%20t%20in%20_TARGETS%0A%20%20%20%20)%0A%20%20%20%20_table%20%3D%20f%22%22%22%0A%20%20%20%20%3Cdiv%20class%3D%22report-table-scroll%22%3E%3Ctable%20class%3D%22report-table%22%3E%0A%20%20%20%20%20%20%3Cthead%3E%0A%20%20%20%20%20%20%20%20%3Ctr%3E%3Cth%3E%3C%2Fth%3E%3Cth%20class%3D%22num%22%20colspan%3D%222%22%3Eoff%20the%20anchor%20axis%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%20colspan%3D%222%22%3Eon%20the%20anchor%20axis%3C%2Fth%3E%3C%2Ftr%3E%0A%20%20%20%20%20%20%20%20%3Ctr%3E%3Cth%3Etarget%3C%2Fth%3E%3Cth%20class%3D%22num%22%3E%CE%BB%20%3D%200%3C%2Fth%3E%3Cth%20class%3D%22num%22%3E%CE%BB%20%3D%200.1%3C%2Fth%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cth%20class%3D%22num%22%3E%CE%BB%20%3D%200%3C%2Fth%3E%3Cth%20class%3D%22num%22%3E%CE%BB%20%3D%200.1%3C%2Fth%3E%3C%2Ftr%3E%0A%20%20%20%20%20%20%3C%2Fthead%3E%0A%20%20%20%20%20%20%3Ctbody%3E%7B_rows%7D%3C%2Ftbody%3E%0A%20%20%20%20%3C%2Ftable%3E%3C%2Fdiv%3E%0A%20%20%20%20%22%22%22%0A%20%20%20%20_caption%20%3D%20%22%22%22%0A%20%20%20%20What%20is%20recoverable%20from%20the%20op1%20residual%20stream%2C%20per%20target.%20Each%20cell%20is%0A%20%20%20%20the%20seed%20mean%2C%20with%20half%20the%20seed%20range%20beside%20it.%20Rows%20are%20the%20property%0A%20%20%20%20being%20predicted%3A%20redness%3B%20the%20same%20formula%20rotated%20onto%20the%20green%20and%20blue%0A%20%20%20%20corners%3B%20the%20raw%20channels%3B%20and%20the%20sim%C2%B9%C2%B7%E2%81%B5%20shape%20that%20H2(b)%20scores%20against.%0A%20%20%20%20The%20left%20pair%20of%20columns%20is%20held-out%20ridge%20R%C2%B2%20with%20the%20anchor%20direction%0A%20%20%20%20removed%2C%20averaged%20over%20layers.%20The%20right%20pair%20is%20squared%20correlation%20with%0A%20%20%20%20the%20anchor%20component%20alone.%20Reading%20down%20a%20column%20compares%20redness%20against%0A%20%20%20%20targets%20the%20anchor%20never%20pulled.%0A%20%20%20%20%22%22%22%0A%20%20%20%20mo.Html(figure_html(_table%2C%20caption%3D_caption%2C%20class_%3D%22report-figure%22))%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_(geometry)%3A%0A%20%20%20%20def%20_score(cond%3A%20str%2C%20key%3A%20str%2C%20target%3A%20str)%20-%3E%20float%3A%0A%20%20%20%20%20%20%20%20return%20float(np.mean(%5Bgeometry%5Bf%22%7Bcond%7D-s%7Bs%7D%22%5D%5Bkey%5D%5Btarget%5D%20for%20s%20in%20ex.SEEDS%5D))%0A%0A%20%20%20%20mo.md(rf%22%22%22%0A%20%20%20%20Off%20the%20axis%2C%20redness%20is%20not%20special.%20On%20the%20anchored%20model%2C%20greenness%20scores%20%7B_score(%22lam0.1%22%2C%20%22off_axis_r2%22%2C%20%22greenness%22)%3A.2f%7D%20and%20blueness%20%7B_score(%22lam0.1%22%2C%20%22off_axis_r2%22%2C%20%22blueness%22)%3A.2f%7D%2C%20against%20%7B_score(%22lam0.1%22%2C%20%22off_axis_r2%22%2C%20%22redness%22)%3A.2f%7D%20for%20redness%2C%20and%20the%20raw%20channels%20score%20around%20%7B_score(%22lam0.1%22%2C%20%22off_axis_r2%22%2C%20%22R%22)%3A.2f%7D.%20The%20control%20looks%20the%20same.%20So%20the%20off-axis%20number%20reflects%20the%20color%20cube%3A%20every%20corner%20of%20it%20is%20recoverable%2C%20because%20the%20task%20needs%20it%20to%20be%2C%20and%20redness%20is%20just%20one%20function%20of%20the%20colors%20among%20many.%20It%20is%20not%20evidence%20of%20a%20second%2C%20red-specific%20encoding.%0A%0A%20%20%20%20On%20the%20axis%2C%20redness%20*is*%20special%3B%20this%20part%20of%20the%20primary%20reading%20survives.%20The%20anchor%20component%20carries%20%7B_score(%22lam0.1%22%2C%20%22on_axis_r2%22%2C%20%22redness%22)%3A.2f%7D%20of%20redness%20variance%2C%20against%20%7B_score(%22lam0.1%22%2C%20%22on_axis_r2%22%2C%20%22greenness%22)%3A.2f%7D%20for%20greenness%20and%20%7B_score(%22lam0.1%22%2C%20%22on_axis_r2%22%2C%20%22blueness%22)%3A.2f%7D%20for%20blueness%2C%20up%20from%20%7B_score(%22lam0%22%2C%20%22on_axis_r2%22%2C%20%22redness%22)%3A.2f%7D%20in%20the%20control.%20The%20anchor%20put%20red%20where%20we%20asked%20for%20it%20(and%20rather%20more%20of%20%60sim%C2%B9%C2%B7%E2%81%B5%60%2C%20at%20%7B_score(%22lam0.1%22%2C%20%22on_axis_r2%22%2C%20%22sim%5E1.5%22)%3A.2f%7D)%2C%20and%20nothing%20else%20came%20with%20it.%0A%0A%20%20%20%20What%20this%20costs%20the%20primary%20reading%20is%20the%20sentence%20about%20intervention.%20The%20leakage%20measurement%20says%20a%20linear%20probe%20can%20still%20recover%20redness%20after%20the%20axis%20is%20removed.%20It%20does%20not%20say%20the%20*model*%20would%20still%20behave%20red-ly%3B%20those%20are%20different%20claims.%20The%20induced%20error%20in%20M1%20was%20measured%20on%20the%20model's%20own%20output%20under%20an%20edit%2C%20not%20on%20a%20probe.%20So%20the%20surviving%20claim%20is%20narrower%3A%20anchoring%20here%20added%20a%20red-selective%20direction%20without%20concentrating%20red%20onto%20it.%20What%20an%20edit%20to%20that%20direction%20would%20do%20to%20behavior%20is%20a%20question%20this%20experiment%20cannot%20answer%3B%20it%20is%20the%20reason%20to%20run%20the%20intervention%2C%20not%20a%20prediction%20of%20its%20result.%0A%0A%20%20%20%20%2F%2F%2F%20details%20%7C%20The%20candidates%20the%20skeleton%20anticipated%0A%20%20%20%20Candidates%20have%20either%20been%20answered%20or%20are%20moot.%20Seed%20variability%20is%20small%20everywhere%20(the%20H4%20panels%20show%20three%20lines%20converging%20to%20the%20same%20value%2C%20and%20%24m_%7B%7B%5Ctext%7B%7Bop1%7D%7D%7D%7D%24%20varies%20by%20under%200.02%20across%20seeds).%20Spill%20into%20the%20unpulled%20positions%20is%20in%20the%20H3%20map.%20The%20batch-to-batch%20noise%20from%20skipping%20label%20balancing%20left%20no%20visible%20mark%20on%20the%20trajectories%2C%20which%20are%20smooth%20after%20the%20first%20ten%20epochs.%20Alignment%20on%20%60open%60-pair%20lines%20is%20the%20one%20we%20did%20not%20look%20at%2C%20and%20it%20is%20a%20question%20about%20the%20answer%20position%20rather%20than%20about%20anchoring%2C%20so%20it%20can%20wait%20for%20the%20experiment%20that%20pulls%20the%20whole%20span.%0A%20%20%20%20%2F%2F%2F%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20_()%3A%0A%20%20%20%20mo.md(r%22%22%22%0A%20%20%20%20%23%23%20Discussion%0A%0A%20%20%20%20**Summary%20of%20results.**%20H1%20passed%3B%20H2%20and%20H4%20failed.%20H3%20was%20not%20scored%2C%20because%20its%20frozen%20precondition%2C%20H2(a)%2C%20did%20not%20hold%20at%20any%20rung.%20The%20anchor%20is%20free%3A%20no%20rung%20cost%20measurable%20accuracy%2C%20NLL%2C%20or%20open-pair%20distance.%20And%20it%20does%20move%20the%20residual%20stream%20a%20long%20way%20onto%20the%20chosen%20direction.%20What%20it%20did%20not%20do%20is%20move%20*red*%20there%20selectively.%20The%20margin%20settles%20near%200.27%20against%20a%20gate%20of%200.5%2C%20and%20the%20best%20of%20the%20grading%20statistics%20reaches%200.64%20against%200.8.%20Both%20are%20flat%20across%20a%20tenfold%20range%20of%20%24%5Clambda%24%2C%20while%20the%20color-independent%20part%20of%20the%20response%20climbs%20with%20it.%0A%0A%20%20%20%20**A%20mechanism%20that%20fits.**%20The%20term%20is%20selective%20about%20which%20*lines*%20it%20fires%20on%2C%20but%20says%20nothing%20about%20*positions*.%20It%20fires%20only%20when%20op1%20is%20red%20enough%20to%20draw%20a%20label%2C%20so%20the%20pull%20a%20color%20receives%20really%20is%20red-specific%3B%20that%20part%20of%20the%20design%20worked.%20But%20on%20a%20labeled%20line%2C%20the%20term%20asks%20all%20four%20prompt%20positions%20to%20move%20the%20same%20way%2C%20and%20three%20of%20those%20positions%20hold%20tokens%20whose%20own%20color%20the%20label%20says%20nothing%20about.%20op2%20is%20the%20clear%20case%3A%20on%20labeled%20lines%20its%20color%20is%20uniform%20over%20the%20cube%2C%20just%20as%20on%20any%20other%20line%2C%20so%20no%20function%20of%20the%20token%20sitting%20there%20can%20satisfy%20the%20pull.%20What%20can%20satisfy%20it%2C%20at%20every%20position%20at%20once%2C%20is%20a%20shift%20that%20ignores%20the%20token%20entirely.%20That%20shift%20costs%20the%20task%20nothing%20measurable%20here%2C%20and%20it%20is%20what%20we%20observe.%20Several%20results%20fit%20this%20reading%3A%20the%20margin%20stays%20flat%20in%20%24%5Clambda%24%20while%20the%20mean%20does%20not%3B%20the%20margin%20is%20largest%20in%20the%20shared%20embedding%20and%20decays%20through%20the%20position-aware%20blocks%3B%20and%20the%20trajectory%20peaks%20early%20and%20then%20slides.%20One%20interpretation%20of%20the%20slide%20is%20that%20the%20selective%20response%20arrives%20first%20and%20the%20rest%20of%20the%20cube%20then%20follows%20it%20onto%20the%20axis.%20The%20trajectories%20are%20consistent%20with%20that%2C%20but%20a%20single%20design%20cannot%20separate%20it%20from%20the%20alternatives.%0A%0A%20%20%20%20**Implications%20for%20the%20M1%20%E2%86%92%20M2%20transfer.**%20The%20M1%20loss%20carried%20an%20anti-subspace%20term%20alongside%20the%20anchor%2C%20at%20a%20weight%20two%20orders%20of%20magnitude%20below%20it.%20This%20experiment%20deliberately%20left%20that%20term%20out%2C%20to%20ask%20whether%20one%20attractive%20term%20suffices.%20On%20this%20evidence%20it%20does%20not%2C%20and%20we%20come%20away%20with%20a%20candidate%20reason%20rather%20than%20a%20bare%20null%3A%20the%20anti-subspace%20term%20constrains%20exactly%20the%20quantity%20that%20ran%20away%20here.%20The%20exploratory%20section%20supports%20that%20reading%20over%20the%20alternative.%20The%20cube%20swung%20bodily%20onto%20the%20axis%20at%20the%20scoring%20rung%20while%20keeping%20most%20of%20its%20extent%2C%20which%20is%20a%20common-component%20problem%2C%20not%20the%20near-duplicate%20collapse%20that%20%60separate%60%20guards%20against.%20That%20section%20also%20shows%20the%20cloud%20concentrating%20strongly%20with%20depth%20on%20its%20own%2C%20anchor%20or%20no%20anchor.%20It%20would%20be%20too%20quick%20to%20read%20that%20as%20the%20task%20doing%20the%20work%20of%20%60separate%60%2C%20though%3A%20the%20last%20layer%20only%20has%20to%20tell%20the%20colors%20apart%20well%20enough%20to%20predict%20%60%2B%60%2C%20which%20it%20could%20manage%20from%20a%20compact%20cloud.%20Adding%20the%20anti-subspace%20term%20is%20queued%20as%20the%20direct%20test.%0A%0A%20%20%20%20What%20we%20should%20*not*%20conclude%20is%20that%20an%20intervention%20would%20find%20a%20spare%20copy%20of%20red%20waiting.%20The%20leakage%20number%20says%20a%20linear%20probe%20can%20still%20recover%20redness%20with%20the%20axis%20removed%2C%20and%20the%20exploratory%20check%20shows%20that%20greenness%20and%20blueness%20score%20the%20same.%20So%20what%20survives%20removal%20is%20the%20color%20cube%20the%20task%20needs%2C%20not%20a%20red-specific%20second%20encoding.%20What%20an%20edit%20to%20the%20anchored%20direction%20would%20do%20to%20the%20model's%20behavior%20is%20a%20separate%20measurement.%20And%20projecting%20the%20whole%20axis%20out%20is%20only%20the%20crudest%20edit%20available%3B%20a%20suppression%20shaped%20to%20act%20on%20the%20red-selective%20part%20of%20the%20response%20might%20succeed%20where%20that%20one%20fails.%20Either%20way%2C%20the%20effect%20of%20an%20intervention%20is%20something%20to%20measure%2C%20not%20something%20to%20predict%20from%20here.%0A%0A%20%20%20%20**Open%20questions.**%20We%20cannot%20yet%20separate%20%22the%20bare%20term%20is%20insufficient%22%20from%20%22the%20*span*%20pull%20is%20what%20dilutes%20it%22%2C%20because%20this%20run%20changed%20both%20at%20once%20relative%20to%20M1.%20M1%20labeled%20atomic%20samples%2C%20so%20every%20pulled%20position%20there%20carried%20the%20labeled%20thing.%20The%20queued%20position-pooling%20variant%20(logsumexp%20instead%20of%20a%20mean%20over%20positions)%20is%20the%20direct%20test.%20Pulling%20op1%20alone%20would%20be%20cleaner%20still%3A%20it%20would%20make%20every%20pulled%20position%20label-informative%20while%20leaving%20the%20term%20itself%20unchanged.%20A%20smaller%20question%20the%20results%20raise%20is%20whether%20the%20drift%20is%20bounded%20by%20the%20task%2C%20or%20would%20keep%20climbing%20at%20larger%20%24%5Clambda%24.%0A%0A%20%20%20%20Under%20H3%20we%20saw%20a%20depth%20inversion%3A%20the%20concept%20enters%20at%20its%20own%20token%20and%20migrates%20to%20the%20positions%20downstream%20of%20it.%20This%20is%20most%20likely%20a%20transformer%20behaving%20as%20transformers%20do.%20For%20an%20intervention%20on%20*red*%20across%20the%20board%20it%20may%20not%20matter%2C%20since%20we%20would%20want%20the%20edit%20to%20apply%20at%20every%20(layer%2C%20position)%20site%20anyway.%20It%20becomes%20a%20live%20question%20at%20D2.3%2C%20which%20asks%20for%20suppression%20that%20degrades%20completion%20while%20leaving%20verification%20intact.%20That%20calls%20for%20the%20concept%20to%20be%20localized%20somewhere%20in%20the%20stream%2C%20and%20this%20run%20offers%20no%20evidence%20either%20way%20on%20whether%20an%20anchor%20can%20be%20confined%20to%20a%20chosen%20region%20of%20it.%0A%0A%20%20%20%20A%20note%20on%20the%20schedule%20work%3A%20the%20star%20arm%20found%20nothing%2C%20and%20the%20H4%20failure%20was%20a%20slide%20rather%20than%20the%20collapse%20seen%20in%20ex-2.9.3.%20So%20the%20anneal%20design%20carried%20over%20from%20M1%20looks%20sound%20on%20this%20testbed.%20Two%20things%20the%20trajectories%20do%20raise%20are%20queued%20in%20%60todo-science.md%60.%20The%20first%20is%20the%20alignment%20decay%20itself%2C%20which%20is%20the%20H4%20result%20read%20as%20a%20phenomenon%20rather%20than%20as%20a%20gate.%20The%20second%20is%20the%20length%20of%20the%20schedule%3A%20the%20margin%20is%20flat%20from%20roughly%20epoch%2050%2C%20so%20a%20shorter%20run%20may%20cost%20nothing.%20That%20is%20a%20budget%20question%2C%20not%20a%20way%20to%20keep%20the%20early%20peak%3B%20the%20peak%20never%20cleared%20H2(a)%20either%2C%20and%20choosing%20a%20stopping%20point%20from%20this%20data%20would%20be%20selecting%20on%20noise.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%0A%0A%0Aif%20__name__%20%3D%3D%20%22__main__%22%3A%0A%20%20%20%20app.run()%0A
2ec063ac9ba8cc78dec0cd5c25065101