@mailwoman/neural-weights-en-us 4.1.0 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/model-card.json CHANGED
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "neural-weights-en-us",
3
- "version": "4.1.0",
4
- "model_lineage": "v0.9.7-unit-v3 / step 20000 (unit-coverage retrain off v0.9.3-de-regiontail, itself off v0.7.2) \u2014 shipped as the unified 4.1.0 release version; tokenizer 0.6.0-a0",
5
- "phase": "Stage 3 \u2014 street decomposition + PO box + intersection + secondary-unit coverage",
3
+ "version": "4.3.0",
4
+ "model_lineage": "v1.1.0-relabel-consolidation / step 40000 — the v4.2.0 consolidation recipe FROM SCRATCH on a label-consistent mix (#511 affix-split relabel pass: the base corpus's ~467M monolithic street labels rewritten to agree with the affix shard, ending the 1,039:1 contradiction the #492 probe ladder isolated), with both anti-contradiction compensations reverted (synth-affix 17.0→2.0, affix tag weights →1.5). Ships with the locale head exported (locale_logits) driving the address-system conventions mask (#478 slice 1) — declared inference config addressSystemConventions:'auto'. Gate: docs/articles/evals/2026-06-11-v4.3.0-ship-gate.md; tokenizer 0.6.0-a0",
5
+ "phase": "Stage 3 v1.1 relabel: affix parity closed (data-consistency lever) + conventions layer slice 1",
6
6
  "license": "AGPL-3.0-only",
7
7
  "locale": "en-us",
8
8
  "training": {
9
- "corpus_version": "0.4.5-unit-v2",
9
+ "corpus_version": "0.4.12-consolidation (+ loader affix-relabel pass, lexicon affix-relabel-v1)",
10
10
  "tokenizer_version": "0.6.0-a0",
11
- "steps": 20000,
12
- "best_step": 20000,
11
+ "steps": 40000,
12
+ "best_step": 40000,
13
13
  "hardware": "NVIDIA A100-SXM4-40GB (Modal cloud)",
14
- "recipe": "v0.9.3-de-regiontail base (anchor ON, self-cond ON, region-tail German, both-order synth) + a 50K format-diverse secondary-unit shard (USPS Pub-28 C2 designators across positions) @ synth-unit 1.5x. CE-only (crf_loss_weight=0.0). lr=1.5e-4 constant, warmup=1000, 20000 steps, seed 42. The synth-unit dose was tuned 2.5→1.5 (v3) after the 2.5 run (v2) showed no fp32 regression but a cleaner low-dose profile was preferred."
14
+ "recipe": "v1.1.0-relabel-consolidation: from-scratch 40k on v0.4.12 with the #511 affix-split relabel pass at load time (trailing USPS suffix→street_suffix, leading directional→street_prefix, exact shard-builder parity, after augmentation), synth-affix 2.0 (natural weight the contradiction it fought is gone), affix tag class-weights 1.5, gazetteer anchor + train-time choreography, CE-only, lr=1.5e-4, seed 42."
15
15
  },
16
16
  "architecture": {
17
17
  "hidden_size": 384,
@@ -79,14 +79,14 @@
79
79
  "intersection_a",
80
80
  "intersection_b"
81
81
  ],
82
- "notes": "v4.1.0 \u2014 secondary-unit coverage. Same Stage-3 33-BIO-label schema as 4.0.0 (no schema change). Adds a format-diverse synth-unit shard (USPS Pub-28 C2 designators: APT/STE/FL/\u2026 across unit-after, unit-first, bare, and venue-prefixed layouts) on top of the v0.9.3 multi-locale base. `unit` recognition 0%\u219292.3% on a held-out real-designator eval; by 'negative space' it also raised US `street` +3.3pp and lifted `country` (US +6pp, FR +15pp) \u2014 covering the missing tag sharpened its neighbors. No regression vs 4.0.0 on any US/FR golden tag; DE native-order locality held (90.6%).",
82
+ "notes": "v4.3.0 the affix lever closed by data consistency, not weights. street_prefix 64.9→93.6, street_suffix 48.8→96.6 (int8, real-affix eval); on the new 193-row NAD-native eval the shipped v4.2.0 scored 18.2/8.9 F1 where this model scores 92.2/90.3 at P=100. First shipped slice of the conventions layer: the locale head (now exported as locale_logits) detects the address system and the decoder OBEYS it fr forbids the USPS affix decomposition and pins the 5-digit postcode shape (fixes the FR leading-postcode digit-split this run's first gate caught). Consumers: pass addressSystemConventions:'auto' (the declared ship config) or omit for byte-stable pre-#511 behavior. Known follow-ups: po_box (deferred lever, both Montréal gate rows), FR region tail (27.6→16.2, unfloored), de/gb conventions rows as evidence arrives.",
83
83
  "format": {
84
84
  "model": "ONNX int8 dynamic (quantized from fp32)",
85
85
  "tokenizer": "SentencePiece unigram, byte_fallback=true, vocab_size=48000",
86
86
  "max_sequence_length": 128,
87
87
  "opset": 17,
88
- "fp32_size_mb": 112.9,
89
- "int8_size_mb": 28.4
88
+ "fp32_size_mb": 118.4,
89
+ "int8_size_mb": 29.8
90
90
  },
91
91
  "files": {
92
92
  "model": "model.onnx",
@@ -101,5 +101,62 @@
101
101
  "held_out_ece_calibrated": 0.0035,
102
102
  "note": "calibration.json is the global table; calibration-per-locale.json carries per-locale tables (the global table under-serves DE/NL). Apply via @mailwoman/core/decoder's createCalibrator; default parse output is byte-stable when omitted."
103
103
  },
104
- "base_relpath": "/data/output-v097-unit-v3-s42/checkpoints/step-020000"
104
+ "base_relpath": "/data/output-v097-unit-v3-s42/checkpoints/step-020000",
105
+ "eval": {
106
+ "ship_gate_2026_06_11": {
107
+ "promotion_gate": "PASS 12/12 (gates/v4.3.0-relabel.json, int8-graded, max fp32-int8 delta 0.2pp)",
108
+ "honest_eval_vt": {
109
+ "n": 1428,
110
+ "region_match_pct": 99.6,
111
+ "coord_p50_km": 3.4,
112
+ "coord_p90_km": 7.4,
113
+ "pip_coverage_adj_pct": 46.9,
114
+ "baseline_v420_region_pct": 99.9,
115
+ "verdict": "PASS"
116
+ },
117
+ "demo_presets": "PASS — affix split fires live (1060 W Addison St → W + Addison + St)",
118
+ "int8_vs_fp32": "PASS — all gate tags within 0.2pp",
119
+ "affix_stability_20k_to_40k": "v2 prefix 88.3→91.6, suffix 89.4→90.3 (rose, no decay)"
120
+ },
121
+ "per_component_int8_gazfed_conventions": {
122
+ "us": {
123
+ "postcode": 97.8,
124
+ "country_homograph": 85.1,
125
+ "micro": 85.1,
126
+ "locality": 74.4,
127
+ "region": 89.1,
128
+ "street": 75.5,
129
+ "street_prefix": 93.6,
130
+ "street_suffix": 96.6,
131
+ "unit": 92.1
132
+ },
133
+ "fr": {
134
+ "postcode": 99.7,
135
+ "house_number": 97.7,
136
+ "region": 16.2
137
+ },
138
+ "de": {
139
+ "native_locality_anchor_on": 90.1
140
+ },
141
+ "affix_nad_native_v2": {
142
+ "street_prefix_f1": 92.2,
143
+ "street_suffix_f1": 90.3,
144
+ "precision": 100.0,
145
+ "baseline_v420": {
146
+ "street_prefix_f1": 18.2,
147
+ "street_suffix_f1": 8.9
148
+ }
149
+ }
150
+ },
151
+ "known_regressions_vs_4_2_0": {
152
+ "fr_region": -11.4,
153
+ "us_street_exact": -0.7,
154
+ "country_homograph": "-4.7 (NOT comparable: the v4.2.0 figure was measured under the gaz-starved country leg fixed this gate; both clear the 83.3 floor)",
155
+ "mitigations": "FR region tail rides the next corpus pass; arbitration layer #478 continues"
156
+ }
157
+ },
158
+ "files_md5": {
159
+ "model.onnx": "9ab47793a4a454c8432c5de05567ad0f",
160
+ "tokenizer.model": "b6137e8c52914c9715374268ecaa4bc6"
161
+ }
105
162
  }
package/model.onnx CHANGED
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mailwoman/neural-weights-en-us",
3
- "version": "4.1.0",
3
+ "version": "4.3.0",
4
4
  "description": "Mailwoman neural-classifier weights for locale 'en-us'. Data-only package — loaded by @mailwoman/neural at runtime.",
5
5
  "license": "AGPL-3.0-only",
6
6
  "repository": {