Download README.md from dimitarpg13/semsimula-ladder-live-ts-d384-l2-none-norc-pm2-pmx16-sr2: direct link, hf CLI and curl.
- Browser
- Download file 16.1 kB
-
https://huggingface.co/dimitarpg13/semsimula-ladder-live-ts-d384-l2-none-norc-pm2-pmx16-sr2/resolve/main/README.md
- Command line
-
hf download hf://dimitarpg13/semsimula-ladder-live-ts-d384-l2-none-norc-pm2-pmx16-sr2/README.md
-
curl -L -o README.md https://huggingface.co/dimitarpg13/semsimula-ladder-live-ts-d384-l2-none-norc-pm2-pmx16-sr2/resolve/main/README.md
pipeline_tag: text-generation
library_name: pytorch
language:
- en
license: cc-by-4.0
tags:
- research
- semsimula
- conservative-language-model
- scalar-potential
- lagrangian-mechanics
- energy-based-model
- physics-informed
- openwebtext
- mechanism-ablation
- ladder-study
- pre-registered
- live-gradients
- generation-3
- first-vs-second-order
- second-order
- poisson-mode-registers
- matched-token-budget
- fock-space
- parflm
- anisotropic-gaussian-potential
- cfc
- baoab
- fully-conservative
- riemannian-geometry
- riemannian-geodesics
- jacobi-metric
- non-transformer
- attention-free
- constant-memory-inference
datasets:
- roneneldan/TinyStories
metrics:
- perplexity
model-index:
- name: semsimula-ladder-live-ts-d384-l2-none-norc-pm2-pmx16-sr2
results:
- task:
type: text-generation
dataset:
type: roneneldan/TinyStories
name: TinyStories
split: validation
metrics:
- type: perplexity
value: 4.987
name: >-
Validation perplexity at block 512, settled (mean of the last
three 500-step evals at block 512)
verified: false
PM2-PMX16 on TinyStories (PM2-TS): the wells help here too, and its first-order twin is level (Gen 3)
The question of this collection: does the conservative core of Semantic Simulation need second-order dynamics (a velocity and inertia), or does a first-order model trained the same way do as well? Each pair trains one model both ways, with everything else the same.
This model: PM2-PMX16, the conservative core with 2 Poisson-mode wells, second order, trained on TinyStories. Verdict: the wells help on TinyStories too (4.99 against SO-TS's 5.16 without wells, −3.4%), and its first-order twin is level (FO-b-PM2-TS, 4.96, −0.5%, paired by step). The first-vs-second-order collection holds the pairs.
Result
| pair | corpus, tokens | second order | first order | first order against second |
|---|---|---|---|---|
| OpenWebText, with 2 Poisson-mode wells | 532.5M | PM2-PMX16 54.71 | FO-b-PM2-PMX16 53.81 | −1.6% |
| TinyStories, no wells (first order between layers, FO-a) | 315M | SO-TS 5.16 | FO-TS 5.13 | −0.6% |
| TinyStories, true first order (FO-b), no wells | 315M | SO-TS 5.16 | FO-b-TS 5.28 | +2.3% |
| TinyStories, with 2 Poisson-mode wells | 315M | PM2-TS 4.99 | FO-b-PM2-TS 4.96 | −0.5% |
| Python code, true first order (FO-b), no wells | 315M | SO-CODE 6.00 | FO-b-CODE 6.55 | +9.2% |
| Python code, with 2 Poisson-mode wells | 315M | PM2-CODE 5.71 | FO-b-PM2-CODE 5.62 | −1.6% |
- This model: settled 4.99 (mean of the evals at steps 18,000, 18,500 and 19,000: 5.06, 4.94, 4.96); best 4.82 at step 16,500. Validation perplexity at block 512, on the first 2M tokens of TinyStories' validation split. TinyStories evaluations jitter by about ±0.06 from one evaluation to the next, so the three-eval mean is the number to read.
- Trained on exactly 315,392,000 tokens (19,250 steps × 32 × 512) in one session: the ladder's WSD schedule over 16,250 steps, then 3,000 steps at its floor learning rate, the same learning-rate curve as SO-TS and FO-TS. Both twins start from step 0 at seed 0, so their evaluations are paired at every step (step-to-step changes correlate at 1.000).
- Against a transformer: the matched GPT-2 on the same tokens and schedule settles at 4.47; this model is +11.6% behind it (SO-TS +15.4%).
- Pre-registered (protocol §5.13, TS-K2, calls confirmed before the first arm trained): TS4 (PM2-TS more than 1% below SO-TS), called 50%: HIT, −3.4% settled, −4.2% paired by step through step 15,000. TS2 (its first-order twin within ±2%), called 70%: HIT, −0.5%.
- Run health: 0 watchdog triggers, 0 spike captures; SCAF leak monitor CLEAN at all 4 audits.
How the pair compares through training
| step | phase | PM2-TS (second order) | FO-b-PM2-TS (first order) | first order against second |
|---|---|---|---|---|
| 500 | warmup | 18.99 | 18.86 | −0.7% |
| 5,000 | constant | 6.33 | 6.26 | −1.1% |
| 10,000 | constant | 5.71 | 5.64 | −1.2% |
| 10,500 | constant, end | 5.76 | 5.72 | −0.7% |
| 13,000 | decay | 5.42 | 5.40 | −0.4% |
| 16,000 | decay, end | 5.02 | 5.00 | −0.4% |
| 17,000 | floor | 5.04 | 5.01 | −0.6% |
| 18,000 | floor | 5.06 | 5.04 | −0.4% |
| 19,000 | floor, last eval | 4.96 | 4.93 | −0.6% |
- First order leads in the stable phase, and second order narrows the gap in the decay: paired by step, −0.87% in the stable phase, −0.57% in the decay and −0.46% at the floor. The same pattern as with two wells on OpenWebText (3.2% narrowing to 1.6%).
What the wells learn (Cell 6b-15)
| reading | PM2-TS (second order) | FO-b-PM2-TS (first order) | on OpenWebText: second order; first order |
|---|---|---|---|
| median depth, layer 0 / layer 1 | -0.20 / +1.29 | -0.27 / +0.97 | -0.21 / +1.23; -0.40 / +0.93 |
| half-life, p05 / median / p95 (tokens) | 8.4 / 14.0 / 19.7 | 6.8 / 13.1 / 19.4 | median 14.2; 8.0 |
| wells' force against the conservative force, layer 0 / layer 1 | 0.67 / 3.44 | 0.83 / 2.29 |
The two wells learn nearly the same landscape on both corpora: repulsive at the first layer, attractive at the second, with half-lives of about a dozen tokens. As on OpenWebText, the first-order model's wells are deeper at the first layer and shallower at the second.
Off the trained schedule (Cell 6b-7)
| reading | this model | its pair partner |
|---|---|---|
| Gate 1: perplexity cost of resetting the velocity at inference | +3,907% | 0 (no velocity carried) |
| Gate 2: one extra layer at the trained step | +546.6% | +0.4% |
| Gate 2: eight layers | +132,375% | +8,543% |
| Gate 3: three steps over the trained time, nats | 0.524 | 0.449 |
- With two wells the second-order model leans heavily on its velocity: resetting it costs +3,907%, against +2.0% for SO-TS without wells (OpenWebText at two wells: +5,150%). Its first-order twin, which has no velocity, is level.
Reproduction
colab_fock_cfc_baoab_lowrank_depth_ladder_openwebtext_d384.ipynb, Cell 0 changed from the defaults:
REVERSE_CHANNEL=False, VPHI_GRAD_PATH='live', XI_GRAD_PATH='live',
POISSON_MODES=2, LOWRANK_DAMPED_FLOW=True, POISSON_WELLS_EXACT=True, # PM2-PMX16
VPHI_ANALYTIC_FORCE=True, LAYER_CHECKPOINT=False, # speed switches, same arithmetic
CORPUS='tinystories', LADDER_STEPS=16_250, EXTRA_FLOOR_STEPS=3_000 # TinyStories, then 3,000 steps at the floor
Run Cells 0, 1, 1b, 1c, 1d, 2, 3, 4, 5, 5b and 6, then 8, 7, 6b-7, 6b-15 and 6b-13.
Training artefacts were written to semsimula_fock_cfc_baoab_ts_xi5long_topk16_dt32da16_mh4_aniso_dcvt5x8_vtjoint_cgqk_norc_vplive_xilive_pm2_pmx16_sr2_st16250_L2probe_ob_untied_wsd_e5c_plgate_rep0.05_fockreg0.005_g0.1_baoab_cfc_lowrank_idt4_lr0p0012_noattn/.
Glossary
| term | meaning |
|---|---|
| settled PPL | validation perplexity at block 512, the mean of the last three evals (steps 31,500–32,500). Best is the lowest single eval |
| Gen 1 / Gen 2 / Gen 3 | the model generations. Gen 1: explicit integrators. Gen 2: the CfC/BAOAB ladder with the sources of Vφ and ξ (and of an exchange field) detached, which keeps every force causal, but no loss gradient ever reaches an earlier token through them. Gen 3: the same forward pass with those gradients live |
| live / detached gradients | whether the loss gradient flows into the earlier tokens that act as sources of a force. Detaching changes no forward value; it only cuts that backward path |
| Vθ | the learned scalar potential on a token's state h, given its context ξ: a bank of anisotropic Gaussian wells. Its negative gradient is the conservative force on the token |
| Vφ | a pair potential between a token and a few selected earlier tokens (sparse top-k) |
| ξ | the causal context channels: exponential moving averages of earlier states at several horizons, which condition Vθ |
| Fock mechanism, registers, reverse channel | a pool of register particles, created and destroyed from the token context. The reverse channel is the register-to-token force; it is not the gradient of any potential on the tokens, so it is the model's non-conservative part |
| exchange field | an attention-like token-to-token interaction added to the conservative core. Each token is pushed by earlier tokens through learned query, key and value projections, as in attention. The ladder tests it in two forms, attention and attention_potential |
attention (non-conservative exchange field) |
the exchange term enters as a force directly. It is not the gradient of anything, so the step stops being a geodesic step |
attention_potential (attention as a potential) |
the same interaction written as a scalar potential whose gradient is the force. The routing weights are computed from the hidden states and held fixed with respect to the state being moved, so the force stays an exact gradient and the model stays conservative |
no-exchange (LADDER_MECHANISM = 'none') |
the arm with no exchange field at all: Vθ, Vφ and ξ, plus the Fock register mechanism unless the arm is conservative-only |
live exchange field (RELAX_GRAD_PATH = 'live') |
attention_potential with the identical forward force written out over live tensors, so the loss gradient reaches the field's sources and routing. In Gen 2 these were detached, and the field sent no gradient into any hidden state |
| Gen 2 probe | a Gen 2 arm retrained with one gradient path changed, to test a hypothesis before the full Gen 3 ladder. The live-exchange-field probe (attention_potential with RELAX_GRAD_PATH = 'live', the full 32,500 steps) is the one that found the gradient starvation |
| gpt2-matched | the reference transformer: GPT-2 architecture, d = 384, L = 8, tied embeddings (33.7M parameters), trained on the same tokenizer, corpus, batches and token budget. Shared by Gen 2 and Gen 3 |
tag components (vplive, xilive, rglive, norc, L4probe, idt…) |
pieces of the run's variant tag, so that every configuration gets its own Drive folder: live Vφ sources, live ξ, live exchange field, no reverse channel, the depth L, and the integrator step Δt |
| conservative-only | a model in which every force is a gradient: no reverse channel and no non-conservative exchange field |
| CfC/BAOAB low-rank propagator | the integrator. Each layer step is split into position (A), force kick (B) and friction (O) substeps, and the stiff harmonic modes of Vθ are integrated exactly in closed form |
| ω·Δt, θ | a stiff mode's frequency times the step size. Past 2, an explicit integrator would be unstable (the wall); the closed-form propagator is not. θ/sin θ is the factor by which a split step's dissipation depends on the mode's phase, largest near θ = π |
| geodesic step, R(geo), share | the step a damped particle would take under Vθ alone; R(geo) is the distance of the real step from it, relative to the step's length. A component's share is how much it moves that distance (6b-9 attribution) |
| Gates 1–3, FLOW / MAPS | see Terms in the geometry section |
| CG1–CG7, 6b-N | the CfC-geometry experiments, and the ladder-notebook cells that run them |
| SCAF, Tier A, Tier B | the in-flight causal-leak monitor. Its core test changes future tokens and requires the logits at earlier positions to stay bit-identical. Tier A asks the same of the hidden states, as 1 − cos between the clean and perturbed state at each earlier position and layer. Tier B asks whether the perturbation moves any earlier state into a different dominant Vθ well (the basin-crossing rate). All three read 0 for a causal model |
| leak tax, prefix-only | the loss difference between scoring a position with only its prefix and with the full sequence; about 0 for a causal model |
| clip-hit | the share of logged steps whose gradient norm exceeded the clipping threshold (1.0) |
| pre-registered | a prediction recorded, with its threshold, before the run |
Files
| path | what |
|---|---|
README.md |
this card |
config.json |
architecture, training, the first-vs-second-order switch, result and diagnostics |
checkpoints/fock_cfc_*noattn_best.pt |
weights at the best eval (step 16,500), optimizer state stripped |
results/ |
the training log and the diagnostic cells' outputs |
code/ |
the notebook and the model code the switches belong to (it also carries later, default-off switches) |
Companion notes
| note | what it covers |
|---|---|
Depth_Ladder_and_Matched_Baseline_Protocol.md |
§5.13: the TinyStories wells set (TS-K2), its calls and these results |
Competing_Mechanisms_Families_Dominance_and_Substitution.md |
the mechanisms that compete for a token's step, and which can stand in for which |
Caveats
- One seed per model. The pairing removes the evaluation noise, not the training-seed spread.
- TinyStories is a narrow, low-entropy corpus: perplexities around 5 are normal on it and are not comparable with OpenWebText's.
- The true first-order arm without wells on TinyStories (FO-b-TS) is still training; the existing no-wells first-order arm is FO-a.
- No CPU readings (pair-force and context ablations, the per-layer flow) on these twins; the readings are the Colab cells.
Citation
@misc{Gueorguiev2026SemSim,
author = {Gueorguiev, Dimitar P.},
title = {Semantic Simulation: A Prescriptive Lagrangian Framework
for Semantic Inference --- Conservative Potentials,
Conservative and Non-Conservative Memory, and Competing Mechanisms},
year = {2026},
publisher = {Zenodo},
doi = {10.5281/zenodo.19712427},
url = {https://doi.org/10.5281/zenodo.19712427},
note = {Version v25 (Nov 9, 2026).
Companion code repository (DOI 10.5281/zenodo.24066016):
\url{https://github.com/dimitarpg13/semsimula-paper}}
}
Card generated from _ladder/ladder.json on 2026-11-10.