Înapoi la BlogTehnic

NER Multilingv: Modelele Engleze Eșuează la Arabă

Modelele NER antrenate pe engleză ating 85-92% acuratețe. Arabă și chineză? Adesea 50-70%. Află despre provocările tehnice și cum să construiești sisteme cu adevărat multilingve.

February 26, 20268 min citire
NERmultilingualArabic NLPChinese NLPPII detection

NER Multilingv: Provocări în Detectarea PII

Actualizat pentru 2026

Decalajul de Acuratețe

Modelele NER antrenate pe engleză ating 85–92% F1 pe testele standard. Aplică aceleași modele pe text arab sau chinezesc. Acuratețea scade la 50–70%.

Pentru lucrul cu PII, acel decalaj este o problemă. O rată de detecție de 70% înseamnă că 30% din datele sensibile rămân nevăzute.

Cauzele nu sunt erori de programare. Ele vin din modul în care diferă sistemele de scriere.

Patru Cauze Principale

1. Limitele Cuvintelor

Engleza separă cuvintele cu spații. Tokenizarea este simplă.

Chineza nu are spații deloc.

"张伟住在北京"
→ Împarte mai întâi: ["张伟", "住在", "北京"]

Un model nu poate eticheta ce nu poate găsi. Împărțirea trebuie să preceadă NER.

Araba leagă literele în interiorul unui cuvânt. Vocalele scurte sunt omise. Textul curge de la dreapta la stânga.

"محمد يعيش في دبي"
→ Fără vocale scurte, dreapta-la-stânga, litere legate

2. Morfologia

Verbele engleze se modifică în câteva moduri. Araba folosește un sistem de rădăcini. O rădăcină creează zeci de cuvinte.

كتب (k-t-b, „a scrie”)
→ كاتب (scriitor), كتاب (carte), مكتبة (bibliotecă)

NER trebuie să parseze rădăcinile pentru a găsi numele în formele derivate ale cuvintelor.

3. Convențiile de Denumire

Numele latine merg Prenume apoi Nume de Familie. Numele în limbile RTL înlănțuie legături de familie.

محمد بن عبد الله
(Muhammad fiul lui Abdullah)

Numele chinezești pun numele de familie pe primul loc. Majoritatea numelor au două sau trei caractere.

张伟 (Zhang Wei) — 2 caractere
欧阳修 (Ouyang Xiu) — 3 caractere

Un model construit pe tipare de denumire occidentale va rata aceste structuri.

4. Direcția Textului

Unele limbi curg de la dreapta la stânga. Când textul RTL conține un nume englezesc, ordinea vizuală și cea logică se despart. Acesta se numește text BiDi. Necesită parsare atentă.

Scoruri F1 pe Sistem de Scriere

LimbăSistem de ScriereInterval F1Nivel
EnglezăLatin85–92%Scăzut
GermanăLatin82–88%Scăzut
FrancezăLatin80–87%Scăzut
SpaniolăLatin81–86%Scăzut
RusăChirilic75–83%Mediu
ArabăAbjad55–75%Ridicat
ChinezăHanzi60–78%Ridicat
JaponezăMixt65–80%Ridicat
ThailandezăThai50–70%Foarte Ridicat
HindiDevanagari60–75%Ridicat

Sistemele non-latine și lipsa spațiilor între cuvinte reduc scorurile în general.

Soluție pe Trei Niveluri

Folosim trei niveluri pentru a acoperi 48 de limbi și sisteme de scriere.

Nivelul 1: spaCy — 25 de Limbi

Pentru limbi cu modele puternice, testate. Acoperă engleza, germana, franceza, spaniola, italiana, portugheza, olandeza, poloneza, rusa și greaca.

Nivelul 2: Stanza — Limbi Complexe

Stanford Stanza gestionează araba, chineza, japoneza și coreana. Rulează împărțiri de cuvinte și analiză de rădăcini înainte de NER.

Nivelul 3: XLM-RoBERTa — Limbi cu Resurse Reduse

Pentru limbi fără modele dedicate. Thailandeza, vietnameza, hindi, bengali, ebraica, turca și persana intră aici. Gestionează text mixt multilingv fără marcaje explicite.

RTL și BiDi

Textul de la dreapta la stânga necesită pași suplimentari față de simpla împărțire.

Pipeline-ul nostru:

  1. Normalizează textul la ordinea logică.
  2. Rulează NER pe acea ordine.
  3. Mapează pozițiile entităților înapoi la ordinea vizuală.

Strip-uim prefixele atașate înainte de NER și le adăugăm înapoi după.

"محمد"  — doar numele
"لمحمد" — „lui Muhammad” (prefix atașat)

Comutarea de Cod

Documentele reale amestecă adesea limbi pe aceeași linie.

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

Pipeline-ul nostru împarte pe limbi. Rulează modelul potrivit pe fiecare parte. Apoi unește rezultatele cu maparea pozițiilor.

Benchmarkuri Interne

Rezultate din teste interne pe date multilingve mixte:

ScenariuF1
Numai engleză91%
Numai germană88%
Numai arabă79%
Numai chineză81%
Mix engleză-arabă83%
Mix engleză-chineză84%
Mix engleză-germană89%

Note de Configurare

Aplicația desktop detectează automat limba per document. Pentru fișiere cu limbi mixte, procesează fiecare segment cu modelul potrivit. Nu este necesar niciun pas manual.

Setează limba în API când o cunoști:

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

Folosește auto-detecția când nu o cunoști:

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

Tiparele personalizate ar trebui să acopere cifrele specifice localei:

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

# ID angajat arab (include cifre arabo-indice)
موظف-[٠-٩0-9]{6}

Vezi lista completă de entități. Pentru configurarea API, vizitează pagina de funcționalități API. Ghidul nostru de conformitate GDPR acoperă modul în care lacunele de detecție afectează legea privind protecția datelor.


anonym.legal folosește un stack NER pe trei niveluri — spaCy, Stanza și XLM-RoBERTa — pentru a acoperi 48 de limbi cu detectare PII consistentă.

Surse

Pregătit să vă protejați datele?

Începeți să anonimizati PII cu 273 tipuri de entități în 48 de limbi.