anonym.legal

By · Last updated 2026-02-26

Terug na BlogTegnies

Meertalige NER: Engels Misluk vir Arabies

Engelse NER-modelle bereik 85-92% akkuraatheid. Arabies en Sjinees? Dikwels 50-70%. Leer oor die tegniese uitdagings en hoe om werklik meertalige stelsels te bou.

February 26, 20268 min lees
NERmultilingualArabic NLPChinese NLPPII detection

Meertalige NER: Uitdagings in PII-opsporing

Opgedateer vir 2026

Die Akkuuraatheidsgaping

NER-modelle wat op Engels opgelei is, bereik 85-92% F1 op standaardtoetse. Pas daardie modelle toe op Arabiese of Sjinese teks. Akkuraatheid daal na 50-70%.

Vir PII-werk is daardie gaping 'n probleem. 'n 70%-trefferkoers beteken 30% van sensitiewe data bly onsigbaar.

Die oorsake is nie foute nie. Hulle spruit uit hoe skryfstelsel verskil.

Vier Grondoorsake

1. Woordgrense

Engels verdeel woorde met spasies. Tokenisasie is maklik.

Sjinees het glad geen spasies nie.

"Zhang Wei woon in Beijing"
-> Verdeel eers: ["Zhang Wei", "woon", "in", "Beijing"]

'n Model kan nie merk wat dit nie kan vind nie. Verdeling moet voor NER kom.

Arabies koppel letters binne 'n woord. Kort vokale word weggelaat. Teks loop van regs na links.

"Mohammed leef in Dubai"
-> Geen kort vokale, regs-na-links, gekoppelde letters

2. Morfologie

Engelse werkwoorde verander op 'n paar maniere. Arabies gebruik 'n worteltelsel. Een wortel skep dosyne woorde.

k-t-b ("skryf")
-> skrywer, boek, biblioteek

NER moet wortels ontleed om name in afgeleide woordvorms te vind.

3. Naamkonvensies

Latynse name gaan Voornaam dan Vanne. Name in RTL-tale koppel familieskakels aanmekaar.

Mohammed seun-van Abdullah

Sjinese name stel die familienaam eerste. Die meeste name is twee of drie karakters lank.

Zhang Wei -- 2 karakters
Ouyang Xiu -- 3 karakters

'n Model gebou op Westerse naampatrone sal hierdie strukture mis.

4. Teksrigting

Sommige tale loop van regs na links. Wanneer RTL-teks 'n Engelse naam bevat, splits visuele volgorde en logiese volgorde. Dit word BiDi-teks genoem. Dit vereis noukeurige ontleding.

F1-tellings per Skryfstelsel

TaalSkryfstelselF1-reeksVlak
EngelsLatyn85-92%Laag
DuitsLatyn82-88%Laag
FransLatyn80-87%Laag
SpaansLatyn81-86%Laag
RussiesSirillies75-83%Medium
ArabiesAbjad55-75%Hoog
SjineesHanzi60-78%Hoog
JapanneesGemeng65-80%Hoog
ThaiThai50-70%Baie Hoog
HindiDevanagari60-75%Hoog

Nie-Latynse stelsels en ontbrekende woordgapings verlaag tellings regdeur die bord.

Drie-Vlak-oplossing

Ons gebruik drie vlakke om 48 tale en skryfstelsels te dek.

Vlak 1: spaCy -- 25 Tale

Vir tale met sterk, getoetste modelle. Dit dek Engels, Duits, Frans, Spaans, Italiaans, Portugees, Nederlands, Pools, Russies en Grieks.

Vlak 2: Stanza -- Komplekse Tale

Stanford Stanza hanteer Arabies, Sjinees, Japannees en Koreaans. Dit voer woordverdeling en wortelontleding uit voor NER.

Vlak 3: XLM-RoBERTa -- Lae-hulpbron Tale

Vir tale sonder toegewyde modelle. Thai, Vietnamees, Hindi, Bengaals, Hebreeus, Turks en Farsi gaan hierheen. Dit hanteer gemengde taalteks sonder eksplisiete merkers.

RTL en BiDi

Regs-na-links teks benodig ekstra stappe buite verdeling.

Ons pyplyn:

  1. Normaliseer teks na logiese volgorde.
  2. Voer NER op daardie volgorde uit.
  3. Karteer entiteitsposisies terug na visuele volgorde.

Ons stroop aangehegte voorvoegsels voor NER en voeg dit terug na.

"Mohammed" -- net naam
"vir Mohammed" -- voorvoegsel aan

Kodewisseling

Werklike dokumente meng dikwels tale in een reel.

"Die vergadering met John is om 3nm"
"Ek het vandag saam met John gaan inkopies doen"

Ons pyplyn verdeel per taal. Dit voer die regte model op elke deel uit. Dan voeg dit resultate saam met posisiekartering.

Interne Maatstawwe

Resultate van interne toetse op gemengde taalteks:

ScenarioF1
Engels alleen91%
Duits alleen88%
Arabies alleen79%
Sjinees alleen81%
Engels-Arabies gemeng83%
Engels-Sjinees gemeng84%
Engels-Duits gemeng89%

Instelling-notas

Die Tafelrekenaarprogram stel taal outomaties per dokument op. Vir gemengde taaleers verwerk dit elke segment met die regte model. Geen handmatige stap is nodig nie.

Stel die taal in die API in wanneer jy dit ken:

{
  "text": "Mohammed seun van Abdullah",
  "language": "ar"
}

Gebruik outo-opsporing wanneer jy dit nie doen nie:

{
  "text": "Mohammed seun van Abdullah",
  "language": "auto"
}

Pasgemaakte patrone moet plaaslike syfers dek:

# Latynse werknemer-ID
WNR-[0-9]{6}

# Arabiese werknemer-ID (sluit Arabiese-Indiese syfers in)
wrknmr-[0-9]{6}

Sien die volledige entiteitslys. Vir API-opstelling, besoek die API-kenmerke-bladsy. Ons GDPR-nakomingsgids dek hoe opsporingsgapings dataskermingswet beinvloed.


anonym.legal gebruik 'n drie-vlak NER-stapel -- spaCy, Stanza en XLM-RoBERTa -- om 48 tale met konsekwente PII-opsporing te dek.

Bronne

Gereed om u data te beskerm?

Begin om PII te anonimiseer met 285+ entiteitstipes in 48 tale.

About this page

We update this page when our platform or the law changes.

Read our founder note for how we work.

Each change shows up in the timestamp at the top.

Related reading

We follow these rules

  • GDPR (EU 2016/679).
  • ISO/IEC 27001:2022.
  • NIS2 (EU 2022/2555).
  • HIPAA safe harbor under 45 CFR § 164.514(b)(2).

Our promise

We do not sell your data.

We do not train models on your text.

We store your files in Germany.

You can delete your account at any time.

You own your work.

Where we run

Our servers live in Falkenstein, Germany.

We use Hetzner. They hold ISO 27001 certification.

All data stays in the EU.

Backups run every day.

Need help?

Email support@anonym.legal.

We reply within one business day.

How we test

We run a full check suite on every release.

Each surface gets its own sweep script and report.

Human reviewers spot-check the output each week.

We track recall and precision on a labelled set.

Bad runs block the deploy.

What we never do

  • We never sell your information to third parties.
  • We never train models on what you upload.
  • We never keep your work after you delete it.
  • We never share keys with any outside firm.
  • We never run ads inside the product.

Plans in plain words

We sell credits, not seats.

One credit covers one short job.

Long jobs use a few credits each.

You can top up at any time.

Unused credits roll over each month.

Read the plans page for current rates.

Who built this

A small team of engineers and lawyers built this.

We ship from Europe and work in the open.

Our founder note spells out why we started.

Where to start

How the parts fit

A browser add-on cleans text inside Chrome.

A Word plug-in handles drafts in Office.

A small desktop tool works on whole folders.

An agent protocol link feeds large models safely.

All four share one core engine and one rule set.

Words from our team

We started this work after a lunch about cookies.

One friend kept getting odd ads on her phone.

We asked why a court file leaked through a draft.

We sketched the first build on a napkin that week.

By month three we had a tiny demo for a friend.

She used it on her first case the next day.

Common questions we hear

Can the tool read scanned PDFs? Yes, with OCR.

Does it work on long files? Yes, in small chunks.

Can I roll my own rule set? Yes, save it as a preset.

Does it run offline? The desktop build runs offline.

Do you keep my files? No, the cloud build wipes after each run.

Will it learn from my work? No, we never train on inputs.

A short tour of the workflow

Upload a file or paste a snippet of prose.

Pick the entities you want gone from the draft.

Choose a method: replace, mask, hash, encrypt, or redact.

Press run and watch the side panel show each hit.

Skim the result and tweak any rule that misfired.

Save the cleaned file or send it to a teammate.