Daudzvalodu NER: izaicinājumi personas datu noteikšanā
Atjaunināts 2026. gadam
Precizitātes atšķirība
NER modeļi, kas apmācīti angļu valodā, standarta testos sasniedz 85–92% F1. Pielietojiet tos pašus modeļus arābu vai ķīniešu tekstam. Precizitāte krītas līdz 50–70%.
Personas datu darbā šī atšķirība ir problēma. 70% precizitāte nozīmē, ka 30% sensitīvo datu paliek nepamanīti.
Cēloņi nav kļūdas. Tie rodas no rakstīšanas sistēmu atšķirībām.
Četri galvenie cēloņi
1. Vārdu robežas
Angļu valodā vārdus atdala atstarpes. Tokenizācija ir vienkārša.
Ķīniešu valodā atstarpu nav vispār.
"张伟住在北京"
→ Vispirms sadaliet: ["张伟", "住在", "北京"]
Modelis nevar atzīmēt to, ko nevar atrast. Sadalīšana jāveic pirms NER.
Arābu valodā burti vārdā ir saistīti. Īsie patskaņi tiek izlaisti. Teksts iet no labās uz kreiso.
"محمد يعيش في دبي"
→ Nav īso patskaņu, no labās uz kreiso, saistīti burti
2. Morfoloģija
Angļu darbības vārdi mainās dažos veidos. Arābu valodā ir saknes sistēma. Viena sakne veido desmitiem vārdu.
كتب (k-t-b, "rakstīt")
→ كاتب (rakstītājs), كتاب (grāmata), مكتبة (bibliotēka)
NER ir jāparsē saknes, lai atrastos vārdus atvasināto vārdu formās.
3. Vārdu konvencijas
Latīņu vārdi ir Vārds tad Uzvārds. Vārdi RTL valodās veido ģimenes saites.
محمد بن عبد الله
(Muhameds bens Abdulla)
Ķīniešu valodā ģimenes vārds ir pirmais. Vairums vārdu ir divi vai trīs simboli.
张伟 (Zhang Wei) — 2 simboli
欧阳修 (Ouyang Xiu) — 3 simboli
Modelis, kas veidots uz rietumu vārdu modeļiem, palaidīs garām šīs struktūras.
4. Teksta virziens
Dažas valodas iet no labās uz kreiso. Kad RTL tekstā ir angļu vārds, vizuālā un loģiskā secība atšķiras. To sauc par BiDi tekstu. Tas prasa rūpīgu parsēšanu.
F1 rādītāji pēc rakstīšanas sistēmas
| Valoda | Rakstīšanas sistēma | F1 diapazons | Līmenis |
|---|---|---|---|
| Angļu | Latīņu | 85–92% | Zems |
| Vācu | Latīņu | 82–88% | Zems |
| Franču | Latīņu | 80–87% | Zems |
| Spāņu | Latīņu | 81–86% | Zems |
| Krievu | Kirilica | 75–83% | Vidējs |
| Arābu | Abjad | 55–75% | Augsts |
| Ķīniešu | Hanzi | 60–78% | Augsts |
| Japāņu | Jaukts | 65–80% | Augsts |
| Taizemiešu | Taju | 50–70% | Ļoti augsts |
| Hindustāni | Devangāri | 60–75% | Augsts |
Ne-latīņu sistēmas un trūkstošās vārdu robežas samazina rādītājus visur.
Trīs līmeņu risinājums
Mēs izmantojam trīs līmeņus, lai aptvertu 48 valodas un rakstīšanas sistēmas.
1. līmenis: spaCy — 25 valodas
Valodām ar spēcīgiem, pārbaudītiem modeļiem. Tas aptver angļu, vācu, franču, spāņu, itāļu, portugāļu, nīderlandiešu, poļu, krievu un grieķu valodu.
2. līmenis: Stanza — sarežģītas valodas
Stanford Stanza apstrādā arābu, ķīniešu, japāņu un korejiešu valodu. Tas veic vārdu sadalīšanu un saknes analīzi pirms NER.
3. līmenis: XLM-RoBERTa — mazresursu valodas
Valodām bez specializētiem modeļiem. Taizemiešu, vjetnamiešu, hindustāni, bengāļu, ivrits, turku un persiešu valoda nonāk šeit. Tas apstrādā jauktvalodu tekstu bez skaidras atzīmēšanas.
RTL un BiDi
Labās-uz-kreiso tekstam ir vajadzīgi papildu soļi ārpus sadalīšanas.
Mūsu konveijers:
- Normalizē tekstu loģiskajā secībā.
- Veic NER uz šīs secības.
- Kartē entitāšu pozīcijas atpakaļ uz vizuālo secību.
Mēs noņemam piesaistītos prefiksus pirms NER un pievienojam tos atpakaļ pēc tam.
"محمد" — tikai vārds
"لمحمد" — "Muhamedim" (ar prefiksu)
Kodu maiņa
Īstie dokumenti bieži vienā rindā jauktas valodas.
"El meeting con John es at 3pm"
"我今天跟John去shopping"
Mūsu konveijers sadala pēc valodas. Tas palaiž pareizo modeli uz katras daļas. Tad tas apvieno rezultātus ar pozīciju kartēšanu.
Iekšēji etaloni
Rezultāti no iekšējiem testiem uz jauktu valodu datiem:
| Scenārijs | F1 |
|---|---|
| Tikai angļu | 91% |
| Tikai vācu | 88% |
| Tikai arābu | 79% |
| Tikai ķīniešu | 81% |
| Angļu-arābu jaukts | 83% |
| Angļu-ķīniešu jaukts | 84% |
| Angļu-vācu jaukts | 89% |
Iestatīšanas piezīmes
Darbvirsmas lietotne automātiski nosaka valodu katram dokumentam. Jauktu valodu failiem tā apstrādā katru segmentu ar pareizo modeli. Manuāls solis nav vajadzīgs.
Norādiet valodu API, kad to zināt:
{
"text": "محمد بن عبد الله",
"language": "ar"
}
Izmantojiet automātisko noteikšanu, kad to nezināt:
{
"text": "محمد بن عبد الله",
"language": "auto"
}
Pielāgotiem modeļiem jāaptver lokāli specifiskie cipari:
# Latīņu darbinieku ID
EMP-[0-9]{6}
# Arābu darbinieku ID (ietver arābu-indiešu ciparus)
موظف-[٠-٩0-9]{6}
Skatiet pilnu entitāšu sarakstu. API iestatīšanai apmeklējiet API funkciju lapu. Mūsu VDAR atbilstības rokasgrāmata aptver to, kā noteikšanas robi ietekmē datu aizsardzības likumu.
anonym.legal izmanto trīs līmeņu NER komplektu — spaCy, Stanza un XLM-RoBERTa — lai aptvertu 48 valodas ar konsekventu personas datu noteikšanu.