Skip to main content

Parser failure report

CorpuscorpusThe BIO-labeled training data used to train Mailwoman's neural classifier. Assembled from real sources (OpenAddresses, National Address Database) and synthetic shards (boundary stress, order variants, negative space). Managed by @mailwoman/corpus. golden:dev · 4255 fixtures · modelsneural classifierThe machine learning model at the core of Mailwoman's parser — a transformer encoder (~30M parameters) trained from scratch to do BIO token classification over addresses. It learns the 'grammar' of address formats; the gazetteer supplies the 'atlas.' v264, v265. Every gold labelground truthThe correct answer for an example, used as the standard a prediction is graded against. Mailwoman's ground truth is the hand-labeled golden set; its quality caps achievable accuracy. is graded (floor labelscomponent tagOne of the 33 labels in Mailwoman's address schema — street, locality, region, postcode, house_number, unit, po_box, country, venue, intersection, and others. Each parsed span carries exactly one component tag. compare the streetstreetThe named linear feature along which house numbers are ordered. Decomposes into a name plus street affixes; one of the Tier 2 fine labels./prefix/suffix family); a fixture "fails" a labelcomponent tagOne of the 33 labels in Mailwoman's address schema — street, locality, region, postcode, house_number, unit, po_box, country, venue, intersection, and others. Each parsed span carries exactly one component tag. when the parseaddress parsingThe process of decomposing a free-text postal address string into structured components — house number, street name, locality, region, postcode, and country — so a geocoder can resolve them to coordinates. disagrees with the hand gold.

Note: golden gold uses the flat pre-split street schema, so the street row reads confounded here (the modelneural classifierThe machine learning model at the core of Mailwoman's parser — a transformer encoder (~30M parameters) trained from scratch to do BIO token classification over addresses. It learns the 'grammar' of address formats; the gazetteer supplies the 'atlas.' splits prefix/streetstreetThe named linear feature along which house numbers are ordered. Decomposes into a name plus street affixes; one of the Tier 2 fine labels./suffix). country / region / locality / postcode / house_number are single-tag and valid — that is where a class trade shows.

Per-model failure count

modelneural classifierThe machine learning model at the core of Mailwoman's parser — a transformer encoder (~30M parameters) trained from scratch to do BIO token classification over addresses. It learns the 'grammar' of address formats; the gazetteer supplies the 'atlas.'fixtures with ≥1 labelcomponent tagOne of the 33 labels in Mailwoman's address schema — street, locality, region, postcode, house_number, unit, po_box, country, venue, intersection, and others. Each parsed span carries exactly one component tag. failurerate
v264109826%
v265110126%

Failures by label — the class each candidate trades

A count that rises across candidates (bold, with the delta vs the first modelneural classifierThe machine learning model at the core of Mailwoman's parser — a transformer encoder (~30M parameters) trained from scratch to do BIO token classification over addresses. It learns the 'grammar' of address formats; the gazetteer supplies the 'atlas.') is a class the candidate silently traded. This is the row that flags a regression the floor gates miss — e.g. country degrading across the fragment lineage.

labelcomponent tagOne of the 33 labels in Mailwoman's address schema — street, locality, region, postcode, house_number, unit, po_box, country, venue, intersection, and others. Each parsed span carries exactly one component tag.v264v265
region582585 (+3)
locality481481
street436437
postcode9797
venue8786
house_number7375
dependent_locality3434
country2021
street_prefix66
street_prefix_particle66
po_box44
attention11
cedex11
unit11

Correlation — failure rate by structural class

Read across a row: a class that fails more on one modelneural classifierThe machine learning model at the core of Mailwoman's parser — a transformer encoder (~30M parameters) trained from scratch to do BIO token classification over addresses. It learns the 'grammar' of address formats; the gazetteer supplies the 'atlas.' is the shape of what that candidate traded (delimiter-free, non-ASCII, short inputs, per countrycountryThe top-level address component (an ISO country). Closed-vocabulary, so it is best handled by a deterministic matcher feeding a proposal rather than a retrained model head.).

structural classv264v265
whitespace-only255/919 (28%)256/919 (28%)
has comma841/3312 (25%)843/3312 (25%)
non-ASCII390/827 (47%)390/827 (47%)
has countrycountryThe top-level address component (an ISO country). Closed-vocabulary, so it is best handled by a deterministic matcher feeding a proposal rather than a retrained model head. gold117/224 (52%)117/224 (52%)
≤3 tokenstokenOne word or subword in the tokenized input. For the neural classifier, tokens come from SentencePiece (subword units); for the rule classifiers, tokens are whitespace- and punctuation-separated words.354/1251 (28%)353/1251 (28%)
US760/2527 (30%)763/2527 (30%)
FR281/1546 (18%)281/1546 (18%)
ZZ (synthetic)0/0 (—)0/0 (—)

Beyond reach — fails on every model (1095)

The persistent core: addresses no current candidate parsesaddress parsingThe process of decomposing a free-text postal address string into structured components — house number, street name, locality, region, postcode, and country — so a geocoder can resolve them to coordinates.. Per-countrycountryThe top-level address component (an ISO country). Closed-vocabulary, so it is best handled by a deterministic matcher feeding a proposal rather than a retrained model head. breakdown (the correlation), then a sample.

countrycountryThe top-level address component (an ISO country). Closed-vocabulary, so it is best handled by a deterministic matcher feeding a proposal rather than a retrained model head.beyond-reach fixtures
US759
FR279
UN43
AD13
U.1

Sample (first 40 of 1095)

countrycountryThe top-level address component (an ISO country). Closed-vocabulary, so it is best handled by a deterministic matcher feeding a proposal rather than a retrained model head.inputsource
ADNew York, New York Steakhouse, 3790 Las Vegas Blvd S, Las Vegas, NV 89109adversarial
ADAthens, Georgia Café, 200 College Ave, Athens, GA 30601adversarial
ADBoston, Massachusetts Pizza Co., 50 Broadway, Brooklyn, NY 11201adversarial
ADMiami, Florida Surf Shop, 100 Ocean Dr, San Diego, CA 92101adversarial
ADNashville, Tennessee BBQ Pit, 75 Elm Ave, Atlanta, GA 30308adversarial
ADP'tit St. Denis Café, 500 Boul. Saint-Laurent, Montreal, QC H2X 2T6adversarial
ADSainte-Marie Bistro, 25 Rue Sainte-Catherine, Montreal, QC H3B 1A3adversarial
AD123Main St, Portland, OR 97214adversarial
AD50.Tremont.St,Boston,MA,02108adversarial
ADPhone: 555-1234 — 200 Elm St, Springfield, IL 62701adversarial
AD123 Main St c/o John Smith, Portland, OR 97214adversarial
AD123 Main St #4B, Portland, OR 97214adversarial
ADCenteradversarial
FR10 Rue de la République, 75008 Parisfr
FR45 Cours Lafayette, 69003 Lyonfr
FR1 bis Avenue des Champs-Élysées, 75008 Paris, Francefr
FR100 Rue de la Paix, 75008 CEDEX 08 Parisfr
FRParis 8efr
FRHôtel de Ville, 4 Place de l'Hôtel-de-Ville, 75004 Parisfr
FR7 Promenade des Anglais, 06000 Nicefr
FRÎle-de-France, Francefr
FR15 rue de la république, 75008 parisfr
FRШом, Creuse, Francefr
FRШом, Creusefr
FRCreuse, Шом, Francefr
FRFrance, Шом, Creusefr
FR富尔内勒, Lozère, Francefr
FRFrance, Lozère, 富尔内勒fr
FR富尔内勒 Lozèrefr
FRLOZÈRE 富尔内勒 FRANCEfr
FRFrance, Lozere, Runik yozuvfr
FRLozere, Runik yozuvfr
FRFrance, Creuse, Сен-Дизье-Леиренfr
FRФрессіне-де-Лозер, Lozère, Francefr
FRFRANCE, LOZÈRE, Фрессіне-де-Лозерfr
FRФрессіне-де-Лозер Lozèrefr
FRCreuse, Thauronfr
FRCreuse, Le Chauchet, Francefr
FRFrance, Creuse, Le Chauchetfr
FR卡萨尼亚, Lozèrefr

Model-specific — where candidates disagree (9)

A ✓ under one modelneural classifierThe machine learning model at the core of Mailwoman's parser — a transformer encoder (~30M parameters) trained from scratch to do BIO token classification over addresses. It learns the 'grammar' of address formats; the gazetteer supplies the 'atlas.' and a failure under another = a fix or a regression between candidates — the diff you track release-over-release.

countrycountryThe top-level address component (an ISO country). Closed-vocabulary, so it is best handled by a deterministic matcher feeding a proposal rather than a retrained model head.inputv264v265
FR47110 2 place de verdun sainte-livrade-sur-lotstreetstreetThe named linear feature along which house numbers are ordered. Decomposes into a name plus street affixes; one of the Tier 2 fine labels.Place DE · localitylocalityThe city / town / settlement component of an address: a populated place sitting between region and neighbourhood in the hierarchy.Verdun Sainte-Livrade-Sur-Lot
FR47110, 1 rue des hirondelles, sainte-livrade-sur-lothouse_number→47110 1 · postcodepostcodeThe country-specific postal code (US ZIP, French code postal, etc.). Mailwoman handles postcode parsing entirely by rule classifier — a regex problem, not an ML one.
FRIFS 14123 FrancepostcodepostcodeThe country-specific postal code (US ZIP, French code postal, etc.). Mailwoman handles postcode parsing entirely by rule classifier — a regex problem, not an ML one.14123 France
FR54000 Nancy, 13 Boulevard Albert 1erhouse_number→13 1er · streetstreetThe named linear feature along which house numbers are ordered. Decomposes into a name plus street affixes; one of the Tier 2 fine labels.Boulevard Albert
USSTATE RTE 100, VT 05350, USAstreetstreetThe named linear feature along which house numbers are ordered. Decomposes into a name plus street affixes; one of the Tier 2 fine labels.State Rte 100 VT · regionregionThe first-level administrative subdivision of a country — a US state, a French region, a province. The component between country and locality.
USN Seventh St, Wyoming 82637regionregionThe first-level administrative subdivision of a country — a US state, a French region, a province. The component between country and locality.
USSARAH SOWERWINE, 1201 E 7TH ST, POWELL, WYOMINGhouse_number→
USФортјуна, North Dakota, USlocalitylocalityThe city / town / settlement component of an address: a populated place sitting between region and neighbourhood in the hierarchy.Фортјуна, North · regionregionThe first-level administrative subdivision of a country — a US state, a French region, a province. The component between country and locality.Dakota
USروولینگ هیل وایومینگ WyominglocalitylocalityThe city / town / settlement component of an address: a populated place sitting between region and neighbourhood in the hierarchy.روولینگ هیل وایومینگ Wyoming · regionregionThe first-level administrative subdivision of a country — a US state, a French region, a province. The component between country and locality.