Die Herausforderung der mehrsprachigen NER
Modelle zur benannten Entitätserkennung (NER), die auf Englisch trainiert wurden, erzielen beeindruckende Ergebnisse – 85-92% F1-Werte bei standardisierten Benchmarks. Wendet man dieselben Modelle auf Arabisch oder Chinesisch an? Die Genauigkeit sinkt oft auf 50-70%.
Für die PII-Erkennung ist diese Lücke entscheidend. Eine Erkennungsrate von 70% bedeutet, dass 30% der sensiblen Daten ungeschützt bleiben.
Warum englische Modelle versagen
1. Wortgrenzen
Englisch: Wörter sind durch Leerzeichen getrennt.
"John Smith lebt in New York"
→ ["John", "Smith", "lebt", "in", "New", "York"]
Chinesisch: Keine Wortgrenzen.
"张伟住在北京"
→ Muss zuerst segmentiert werden: ["张伟", "住在", "北京"]
Arabisch: Wörter sind verbunden, und kurze Vokale werden nicht geschrieben.
"محمد يعيش في دبي"
→ Verbundenes Skript, von rechts nach links, Vokale weggelassen
Die Tokenisierungsregeln des Englischen gelten einfach nicht.
2. Morphologische Komplexität
Englische Morphologie: Relativ einfach
run → runs, running, ran
Arabische Morphologie: Extrem komplex (Wurzel-Muster-System)
كتب (k-t-b, "schreiben" Wurzel)
→ كاتب (Schriftsteller), كتاب (Buch), مكتبة (Bibliothek), يكتب (er schreibt)
Eine einzige arabische Wurzel erzeugt Dutzende verwandter Wörter. NER-Modelle müssen dieses Ableitungssystem verstehen.
3. Namenskonventionen
Englische Namen: Vorname Nachname
John Smith, Mary Johnson
Arabische Namen: Mehrere Komponenten
محمد بن عبد الله بن عبد المطلب
(Muhammad Sohn von Abdullah Sohn von Abdul-Muttalib)
Chinesische Namen: Nachname zuerst, oft insgesamt 2-3 Zeichen
张伟 (Zhang Wei) - 2 Zeichen
欧阳修 (Ouyang Xiu) - 3 Zeichen
4. Schriftrichtung
Englisch: Von links nach rechts (LTR) Arabisch/Hebräisch: Von rechts nach links (RTL) Gemischter Text: Bidirektional (BiDi) - extrem komplex
Wenn ein englischer Name in arabischem Text erscheint:
التقيت بـ John Smith في المؤتمر
(I met John Smith at the conference)
Die Renderreihenfolge, logische Reihenfolge und Anzeigeordnung unterscheiden sich alle.
Genauigkeit nach Sprache
Die Leistung von NER in der realen Welt variiert dramatisch:
| Sprache | Schrift | F1-Score-Bereich | Herausforderungsgrad |
|---|---|---|---|
| Englisch | Latein | 85-92% | Niedrig |
| Deutsch | Latein | 82-88% | Niedrig |
| Französisch | Latein | 80-87% | Niedrig |
| Spanisch | Latein | 81-86% | Niedrig |
| Russisch | Kyrillisch | 75-83% | Mittel |
| Arabisch | Arabisch | 55-75% | Hoch |
| Chinesisch | Hanzi | 60-78% | Hoch |
| Japanisch | Gemischt | 65-80% | Hoch |
| Thailändisch | Thailändisch | 50-70% | Sehr hoch |
| Hindi | Devanagari | 60-75% | Hoch |
Sprachen mit komplexer Morphologie, nicht-lateinischen Schriften oder ohne Wortgrenzen schneiden konstant schlechter ab.
Der Drei-Stufen-Ansatz von anonym.legal
Wir lösen mehrsprachige NER durch drei spezialisierte Stufen:
Stufe 1: spaCy (25 Sprachen)
Für hochressourcierte Sprachen mit guten Modellen:
- Englisch, Deutsch, Französisch, Spanisch, Italienisch, Portugiesisch
- Niederländisch, Polnisch, Russisch, Griechisch
- Und 15 weitere mit zuverlässiger Genauigkeit
Stufe 2: Stanza (7 Sprachen)
Für Sprachen mit komplexer Morphologie:
- Arabisch (Wurzel-Muster-Morphologie)
- Chinesisch (Wortsegmentierung erforderlich)
- Japanisch (mehrere Schriften)
- Koreanisch (agglutinierend)
- Und 3 weitere
Stufe 3: XLM-RoBERTa (16 Sprachen)
Für ressourcenarme Sprachen ohne dedizierte Modelle:
- Thailändisch, Vietnamesisch, Indonesisch
- Hindi, Bengali, Tamil
- Hebräisch, Türkisch, Persisch
- Und mehr
So funktioniert es
Eingabetext mit Spracherkennung
↓
[Sprachrouter]
↓
┌───────┴───────┐
↓ ↓
Hochressourciert Komplex/Niedrig-Ressourciert
(spaCy) (Stanza/XLM-RoBERTa)
↓ ↓
└───────┬───────┘
↓
[Regex-Overlay für strukturierte Daten]
↓
[Vertrauensmerger]
↓
Endgültige Entitäten
Regex-Overlay
Einige Muster sind sprachunabhängig:
- E-Mail-Adressen:
[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,} - Kreditkarten:
\d{4}[\s-]?\d{4}[\s-]?\d{4}[\s-]?\d{4} - Telefonnummern: Verschiedene Muster pro Land
Wir wenden Regex zuerst für strukturierte Daten an, unabhängig von der Sprache.
Verarbeitung von RTL-Skripten
Rechts-nach-links-Sprachen erfordern eine spezielle Behandlung:
Algorithmus für bidirektionalen Text
Wenn Arabisch Englisch enthält:
Visuell: المؤتمر في John Smith بـ التقيت
Logisch: التقيت بـ John Smith في المؤتمر
Unsere Verarbeitung:
- Normalisieren in logische Reihenfolge
- Führen Sie NER in logischer Reihenfolge aus
- Mappen Sie die Entitätspositionen zurück zur visuellen Reihenfolge
- Geben Sie konsistente Positionen für jede Darstellung zurück
Erkennung von Entitätsgrenzen
Arabische Entitätsgrenzen sind komplex:
"محمد" - nur der Name
"لمحمد" - "zu Muhammad" (angehängte Präposition)
"ومحمد" - "und Muhammad" (angehängte Konjunktion)
Wir entfernen Affixe vor NER und fügen sie danach wieder hinzu.
Code-Switching
Echter Text mischt oft Sprachen:
"El meeting con John es at 3pm"
(Spanisch-Englisch-Mischung)
"我今天跟John去shopping"
(Chinesisch-Englisch-Mischung)
Unser Ansatz:
- Segmentieren Sie den Text nach Sprache
- Verarbeiten Sie jedes Segment mit dem entsprechenden Modell
- Mergen Sie die Ergebnisse mit Positionszuordnung
Leistungsbenchmarks
Interne Tests mit gemischten Sprachdatensätzen:
| Szenario | F1-Score |
|---|---|
| Nur Englisch | 91% |
| Nur Deutsch | 88% |
| Nur Arabisch | 79% |
| Nur Chinesisch | 81% |
| Englisch-Arabisch-Mischung | 83% |
| Englisch-Chinesisch-Mischung | 84% |
| Englisch-Deutsch-Mischung | 89% |
Unser hybrider Ansatz hält die Genauigkeit auch bei herausfordernden Sprachen hoch.
Implementierungstipps
Für API-Nutzer
Geben Sie die Sprache an, wenn sie bekannt ist:
{
"text": "محمد بن عبد الله",
"language": "ar"
}
Lassen Sie uns automatisch erkennen, wenn unbekannt:
{
"text": "محمد بن عبد الله",
"language": "auto"
}
Für Desktop-App-Nutzer
Die App erkennt die Sprache pro Dokument automatisch. Für gemischte Sprachdateien verarbeitet sie jedes Segment entsprechend.
Für benutzerdefinierte Entitätstypen
Benutzerdefinierte Muster sollten die Schriften berücksichtigen:
# Englische Mitarbeiter-ID
EMP-[0-9]{6}
# Arabische Mitarbeiter-ID (enthält arabische Ziffern)
موظف-[٠-٩0-9]{6}
Fazit
Englisch trainierte NER-Modelle versagen bei nicht-englischem Text, weil sich die Sprachen grundlegend unterscheiden in:
- Wortgrenzen (oder deren Fehlen)
- Morphologischer Komplexität
- Schriftrichtung
- Namenskonventionen
Eine effektive mehrsprachige PII-Erkennung erfordert:
- Sprachspezifische Modelle für komplexe Schriften
- Regex-Muster für strukturierte Daten
- Richtige RTL/BiDi-Behandlung
- Unterstützung für Code-Switching
anonym.legal unterstützt 48 Sprachen durch unseren Drei-Stufen-Ansatz und erzielt konsistente Genauigkeit in allen.
Probieren Sie es selbst aus:
Quellen: