By · Last updated 2026-02-26

Retour au blogTechnique

NER Multilingue : Pourquoi Votre Modèle Entraîné en...

Les modèles NER en anglais atteignent une précision de 85-92 %. Et l'arabe et le chinois ? Souvent 50-70 %.

February 26, 20268 min de lecture
NERmultilingualArabic NLPChinese NLPPII detection

NER multilingue : défis de la détection des données personnelles

Mis à jour pour 2026

L'écart de précision

Les modèles NER entraînés sur l'anglais atteignent 85–92 % de F1 sur les tests standard. Appliquez ces mêmes modèles à des textes en arabe ou en chinois. La précision chute à 50–70 %.

Pour la détection des données personnelles, cet écart est critique. Un taux de détection de 70 % signifie que 30 % des données sensibles restent non protégées.

Les causes ne sont pas des bugs. Elles viennent des différences entre systèmes d'écriture.

Quatre causes profondes

1. Délimitation des mots

L'anglais sépare les mots par des espaces. La tokenisation est simple.

Le chinois n'a pas d'espaces du tout.

"张伟住在北京"
→ Segmenter d'abord : ["张伟", "住在", "北京"]

Un modèle ne peut pas étiqueter ce qu'il ne trouve pas. La segmentation doit précéder le NER.

L'arabe relie les lettres à l'intérieur d'un mot. Les voyelles courtes sont omises. Le texte se lit de droite à gauche.

"محمد يعيش في دبي"
→ Pas de voyelles courtes, droite à gauche, lettres liées

2. Morphologie

Les verbes anglais changent de quelques façons prévisibles. L'arabe utilise un système de racines. Une racine crée des dizaines de mots.

كتب (k-t-b, « écrire »)
→ كاتب (écrivain), كتاب (livre), مكتبة (bibliothèque)

Le NER doit analyser les racines pour trouver des noms dans les formes dérivées.

3. Conventions de nommage

Les noms latins suivent l'ordre Prénom puis Nom. Les noms dans les langues RTL enchaînent les liens familiaux.

محمد بن عبد الله
(Muhammad fils-de Abdullah)

Les noms chinois placent le nom de famille en premier. La plupart des noms font deux ou trois caractères.

张伟 (Zhang Wei) — 2 caractères
欧阳修 (Ouyang Xiu) — 3 caractères

Un modèle construit sur des conventions occidentales manquera ces structures.

4. Direction du texte

Certaines langues s'écrivent de droite à gauche. Quand un texte RTL contient un nom anglais, l'ordre visuel et l'ordre logique divergent. On appelle cela le texte BiDi. Il nécessite une analyse minutieuse.

Scores F1 par système d'écriture

LangueSystème d'écriturePlage F1Niveau
AnglaisLatin85–92 %Faible
AllemandLatin82–88 %Faible
FrançaisLatin80–87 %Faible
EspagnolLatin81–86 %Faible
RusseCyrillique75–83 %Moyen
ArabeAbjad55–75 %Élevé
ChinoisHanzi60–78 %Élevé
JaponaisMixte65–80 %Élevé
ThaïThaï50–70 %Très élevé
HindiDevanagari60–75 %Élevé

Les systèmes non latins et l'absence de délimitation des mots abaissent les scores de façon constante.

Solution en trois niveaux

Nous utilisons trois niveaux pour couvrir 48 langues et systèmes d'écriture.

Niveau 1 : spaCy — 25 langues

Pour les langues disposant de modèles solides et éprouvés. Cela couvre l'anglais, l'allemand, le français, l'espagnol, l'italien, le portugais, le néerlandais, le polonais, le russe et le grec.

Niveau 2 : Stanza — Langues complexes

Stanford Stanza gère l'arabe, le chinois, le japonais et le coréen. Il effectue des découpages et des analyses de racines avant le NER.

Niveau 3 : XLM-RoBERTa — Langues à faibles ressources

Pour les langues sans modèles dédiés. Le thaï, le vietnamien, l'hindi, le bengali, l'hébreu, le turc et le farsi y sont inclus. Il traite les textes mixtes sans indicateur de langue explicite.

RTL et BiDi

Le texte de droite à gauche nécessite des étapes supplémentaires au-delà de la segmentation.

Notre pipeline :

  1. Normalise le texte dans l'ordre logique.
  2. Exécute le NER dans cet ordre.
  3. Remet les positions des entités dans l'ordre visuel.

Nous supprimons les préfixes attachés avant le NER et les rajoutons après.

"محمد"  — nom seul
"لمحمد" — « à Muhammad » (préfixe présent)

Code-switching

Les documents réels mélangent souvent les langues en une seule ligne.

"El meeting con John es at 3pm"
"我今天跟John去shopping"

Notre pipeline divise par langue. Il exécute le bon modèle sur chaque partie. Puis il fusionne les résultats avec un mappage de positions.

Benchmarks internes

Résultats de tests internes sur des données multilingues :

ScénarioF1
Anglais uniquement91 %
Allemand uniquement88 %
Arabe uniquement79 %
Chinois uniquement81 %
Mélange anglais-arabe83 %
Mélange anglais-chinois84 %
Mélange anglais-allemand89 %

Notes de configuration

L'application de bureau détecte automatiquement la langue par document. Pour les fichiers mixtes, elle traite chaque segment avec le bon modèle. Aucune étape manuelle n'est nécessaire.

Définissez la langue dans l'API quand vous la connaissez :

{
  "text": "محمد بن عبد الله",
  "language": "ar"
}

Utilisez la détection automatique dans le cas contraire :

{
  "text": "محمد بن عبد الله",
  "language": "auto"
}

Les schémas personnalisés doivent couvrir les chiffres spécifiques à la locale :

# ID employé latin
EMP-[0-9]{6}

# ID employé arabe (inclut les chiffres arabes-indiens)
موظف-[٠-٩0-9]{6}

Voir la liste complète des entités. Pour la configuration de l'API, visitez la page des fonctionnalités API. Notre guide de conformité RGPD explique comment les lacunes de détection affectent le droit à la protection des données.


anonym.legal utilise une pile NER à trois niveaux — spaCy, Stanza et XLM-RoBERTa — pour couvrir 48 langues avec une détection PII cohérente.

Sources

Prêt à protéger vos données ?

Commencez à anonymiser les PII avec plus de 285 types d'entités dans 48 langues.

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.