Tilbage til BlogTeknisk

Flersproget NER: engelsk fejler på arabisk

Engelske NER-modeller opnår 85-92% nøjagtighed. Arabisk og kinesisk? Ofte 50-70%. Lær om de tekniske udfordringer, og hvordan du bygger ægte flersproget PII-detektion.

February 26, 20268 min læsning
NERmultilingualArabic NLPChinese NLPPII detection

Udfordringen med flersproget NER

Named Entity Recognition-modeller (NER) trænet på engelsk opnår imponerende resultater – F1-scorer på 85-92% på standardbenchmarks. Anvend de samme modeller på arabisk eller kinesisk? Nøjagtigheden falder ofte til 50-70%.

For PII-detektion er dette gab kritisk. En detektionsrate på 70% betyder, at 30% af følsomme data er ubeskyttede.

Hvorfor engelske modeller fejler

1. Ordgrænser

Engelsk: Ord adskilles af mellemrum. ``` "John Smith lives in New York" → ["John", "Smith", "lives", "in", "New", "York"] ```

Kinesisk: Ingen ordgrænser overhovedet. ``` "张伟住在北京" → Kræver segmentering først: ["张伟", "住在", "北京"] ```

Arabisk: Ord forbindes, og korte vokaler skrives ikke. ``` "محمد يعيش في دبي" → Forbundet skrift, højre-til-venstre, vokaler udeladt ```

Engelsk tokenisering kan simpelthen ikke anvendes her.

2. Morfologisk kompleksitet

Engelsk morfologi: Relativt enkel ``` run → runs, running, ran ```

Arabisk morfologi: Ekstremt kompleks (rod-mønstersystem) ``` كتب (k-t-b, "skrive"-rod) → كاتب (skribent), كتاب (bog), مكتبة (bibliotek), يكتب (han skriver) ```

En enkelt arabisk rod genererer snesevis af beslægtede ord. NER-modeller skal forstå dette afledningssystem.

3. Navnekonventioner

Engelske navne: Fornavn Efternavn ``` John Smith, Mary Johnson ```

Arabiske navne: Flere komponenter ``` محمد بن عبد الله بن عبد المطلب (Muhammad søn af Abdullah søn af Abdul-Muttalib) ```

Kinesiske navne: Familienavn først, ofte 2-3 tegn i alt ``` 张伟 (Zhang Wei) - 2 tegn 欧阳修 (Ouyang Xiu) - 3 tegn ```

4. Skriftretning

Engelsk: Venstre-til-højre (LTR) Arabisk/Hebraisk: Højre-til-venstre (RTL) Blandet tekst: Tovejs (BiDi) – ekstremt kompleks

Når et engelsk navn optræder i arabisk tekst: ``` التقيت بـ John Smith في المؤتمر (Jeg mødte John Smith på konferencen) ``` Visningsrækkefølge, logisk rækkefølge og displayrækkefølge afviger alle fra hinanden.

Nøjagtighed efter sprog

Reelle NER-resultater varierer markant:

SprogSkriftF1-scoreintervalSværhedsgrad
EngelskLatinsk85-92%Lav
TyskLatinsk82-88%Lav
FranskLatinsk80-87%Lav
SpanskLatinsk81-86%Lav
RussiskKyrillisk75-83%Middel
ArabiskArabisk55-75%Høj
KinesiskHanzi60-78%Høj
JapanskBlandet65-80%Høj
ThaiThai50-70%Meget høj
HindiDevanagari60-75%Høj

Sprog med kompleks morfologi, ikke-latinske skriftsystemer eller manglende ordgrænser klarer sig konsekvent dårligere.

anonym.legals tre-niveaus tilgang

Vi løser flersproget NER via tre specialiserede niveauer:

Niveau 1: spaCy (25 sprog)

Til højtressourcesprog med gode modeller:

  • Engelsk, tysk, fransk, spansk, italiensk, portugisisk
  • Nederlandsk, polsk, russisk, græsk
  • Og 15 yderligere med pålidelig nøjagtighed

Niveau 2: Stanza (7 sprog)

Til sprog med kompleks morfologi:

  • Arabisk (rod-mønsternmorfologi)
  • Kinesisk (kræver ordsegmentering)
  • Japansk (flere skriftsystemer)
  • Koreansk (agglutinativt)
  • Og 3 yderligere

Niveau 3: XLM-RoBERTa (16 sprog)

Til lavressourcesprog uden dedikerede modeller:

  • Thai, vietnamesisk, indonesisk
  • Hindi, bengali, tamil
  • Hebraisk, tyrkisk, farsi
  • Og flere

Sådan fungerer det

``` Inputtekst med sprogdetektion ↓ [Sprogrouter] ↓ ┌───────┴───────┐ ↓ ↓ Højtressource Kompleks/Lavressource (spaCy) (Stanza/XLM-RoBERTa) ↓ ↓ └───────┬───────┘ ↓ [Regex-overlay for strukturerede data] ↓ [Konfidenssammenlægger] ↓ Endelige entiteter ```

Regex-overlay

Nogle mønstre er sproguafhængige:

  • E-mailadresser: `[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}`
  • Kreditkort: `\d{4}[\s-]?\d{4}[\s-]?\d{4}[\s-]?\d{4}`
  • Telefonnumre: Forskellige mønstre pr. land

Vi anvender regex først for strukturerede data, uanset sprog.

Håndtering af RTL-skrift

Højre-til-venstre-sprog kræver særlig behandling:

Tovejstekstalgoritme

Når arabisk indeholder engelsk: ``` Visuelt: المؤتمر في John Smith بـ التقيت Logisk: التقيت بـ John Smith في المؤتمر ```

Vores behandling:

  1. Normalisér til logisk rækkefølge
  2. Kør NER på logisk rækkefølge
  3. Kortlæg entitetspositioner tilbage til visuel rækkefølge
  4. Returnér konsistente positioner til enhver rendering

Detektion af entitetsgrænser

Arabiske entitetsgrænser er komplekse: ``` "محمد" - kun navnet "لمحمد" - "til Muhammad" (vedhæftet præposition) "ومحمد" - "og Muhammad" (vedhæftet konjunktion) ```

Vi fjerner affikser før NER og tilføjer dem igen bagefter.

Sprogskift

Reel tekst blander ofte sprog:

``` "El meeting con John es at 3pm" (Spansk-engelsk blanding)

"我今天跟John去shopping" (Kinesisk-engelsk blanding) ```

Vores tilgang:

  1. Segmentér tekst efter sprog
  2. Behandl hvert segment med passende model
  3. Sammenlæg resultater med positionskortlægning

Ydelsesresultater

Intern test på blandede sprogs datasæt:

ScenarieF1-score
Kun engelsk91%
Kun tysk88%
Kun arabisk79%
Kun kinesisk81%
Engelsk-arabisk blanding83%
Engelsk-kinesisk blanding84%
Engelsk-tysk blanding89%

Vores hybride tilgang opretholder høj nøjagtighed selv på udfordrende sprog.

Implementeringstips

Til API-brugere

Angiv sprog, når det kendes: ```json { "text": "محمد بن عبد الله", "language": "ar" } ```

Lad os auto-registrere, når det er ukendt: ```json { "text": "محمد بن عبد الله", "language": "auto" } ```

Til Desktop App-brugere

Appen auto-registrerer sprog pr. dokument. For filer med blandede sprog behandler den hvert segment hensigtsmæssigt.

Til tilpassede entitetstyper

Tilpassede mønstre bør tage højde for skriftsystemer: ```

Engelsk medarbejder-ID

EMP-[0-9]{6}

Arabisk medarbejder-ID (inkluderer arabiske taller)

موظف-[٠-٩0-9]{6} ```

Konklusion

Engelsktrænede NER-modeller fejler på ikke-engelsk tekst, fordi sprog adskiller sig fundamentalt i:

  • Ordgrænser (eller mangel derpå)
  • Morfologisk kompleksitet
  • Skriftretning
  • Navnekonventioner

Effektiv flersproget PII-detektion kræver:

  1. Sprogspecifikke modeller til komplekse skriftsystemer
  2. Regexmønstre til strukturerede data
  3. Korrekt RTL/BiDi-håndtering
  4. Understøttelse af sprogskift

anonym.legal understøtter 48 sprog via vores tre-niveaus tilgang og opnår konsekvent nøjagtighed på tværs af alle.

Prøv det selv:


Kilder:

Klar til at beskytte dine data?

Begynd at anonymisere PII med 273 enhedstyper på tværs af 48 sprog.