Powrót do blogaGDPR i zgodność

Dlaczego Twoje narzędzie do wykrywania PII jest...

Niemiecki Steuer-ID, francuski NIR i szwedzki Personnummer wymagają różnych logik wykrywania.

March 3, 202610 min czytania
multilingualGDPRNLPPII detectionEuropean compliancespaCyXLM-RoBERTa

Ukryta luka w zgodności z GDPR

GDPR nie ma preferencji językowej. Artykuł 4(1) definiuje "dane osobowe" bez odniesienia do języka, w którym się pojawiają. Niemiecki Steuer-ID jest tak samo chroniony jak amerykański numer ubezpieczenia społecznego. Francuski NIR jest tak samo regulowany jak brytyjski numer ubezpieczenia narodowego.

Jednak większość narzędzi do wykrywania PII została stworzona dla języka angielskiego.

Badania opublikowane na ACL 2024 wykazały, że hybrydowe podejścia NLP osiągają wyniki F1 w zakresie 0.60-0.83 dla europejskich lokalizacji — ale narzędzia tylko w języku angielskim stosowane do tekstów nieanglojęzycznych osiągają wyniki bliskie zeru dla strukturalnych identyfikatorów krajowych. Praktyczne konsekwencje: narzędzie do anonimizacji wdrożone w międzynarodowej organizacji może wykrywać 95% anglojęzycznych PII, podczas gdy pomija 40-60% niemieckich, francuskich, polskich lub holenderskich PII w tym samym zbiorze danych.

To jest systematyczna luka w zgodności z GDPR, która dotyka praktycznie każdą międzynarodową firmę korzystającą z narzędzi do anonimizacji skoncentrowanych na języku angielskim.

Dlaczego PII jest specyficzne dla języka

Wykrywanie PII ma dwa składniki: wykrywanie oparte na wzorcach (strukturalne identyfikatory, takie jak numery podatkowe, formaty telefonów) oraz wykrywanie oparte na NER (podmioty kontekstowe, takie jak imiona i nazwiska, nazwy organizacji, adresy).

Oba składniki są głęboko specyficzne dla języka.

Strukturalne identyfikatory różnią się radykalnie w zależności od kraju

KrajIdentyfikator podatkowyFormatWymagania dotyczące wykrywania
NiemcySteuer-ID11 cyfr, algorytm kontrolnyWalidacja Modulo-11
FrancjaNIR15 cyfr + 2-cyfrowy kluczWalidacja algorytmu INSEE
SzwecjaPersonnummer10 cyfr, wskaźnik wiekuWalidacja Luhn
PolskaPESEL11 cyfr, data urodzenia zakodowanaWalidacja Modulo-10
HolandiaBSN9 cyfr, elfproef (11-check)Algorytm Elfproef
HiszpaniaDNI/NIE8 cyfr + literaWalidacja Modulo-23
WłochyCodice Fiscale16 alfanumerycznychZłożony kontrolny

Wzorzec regex tylko w języku angielskim dla SSN (format: NNN-NN-NNNN) nie będzie pasował do żadnego z tych identyfikatorów. Każdy z nich wymaga specyficznej logiki regex dla danego kraju oraz walidacji kontrolnej.

Rozpoznawanie nazwanych podmiotów wymaga modeli rodzimych dla języka

Imiona i nazwiska w języku niemieckim mają inne wzorce niż imiona angielskie. "Hans-Dieter Müller" i "Anna-Lena Schreiber-Koch" są rozpoznawane jako niemieckie imiona w kontekście — ale model wytrenowany głównie na tekstach angielskich często je pomija lub błędnie klasyfikuje.

Bardziej problematyczne: fałszywe pozytywy w jednym języku mogą stać się fałszywymi negatywami w innym. Śledzenie problemów na GitHubie Microsoft Presidio dokumentuje systematyczne fałszywe pozytywy dla niemieckich słów klasyfikowanych jako angielskie PII. To samo słowo "Null" (niemiecki dla "zero") wywołuje fałszywe pozytywy wykrywania nazw w modelach wytrenowanych na angielskim. To zwiększa wskaźniki fałszywych pozytywów do 3 błędów na 1 rzeczywisty podmiot w wielojęzycznych środowiskach produkcyjnych (Alvaro et al., 2024).

Ekspozycja regulacyjna

Organy ochrony danych w UE coraz bardziej zdają sobie sprawę z tej luki. Kilka krajowych organów ochrony danych wydało wytyczne lub działania egzekucyjne, które implicują przetwarzanie wielojęzyczne:

Niemiecki BfDI: Wyjaśnił, że artykuł 5(1)(f) GDPR (integralność i poufność) dotyczy danych we wszystkich formach przetwarzania, w tym danych nieanglojęzycznych przetwarzanych przez narzędzia stron trzecich.

Francuski CNIL: Raport roczny CNIL z 2024 roku zauważył rosnące obawy dotyczące narzędzi AI, które przetwarzają dane w języku francuskim bez możliwości wykrywania PII w języku francuskim.

Ogólnie DPAs w UE: Zgodnie z artykułem 25 GDPR (Prywatność przez projekt), środki techniczne muszą być odpowiednie dla rzeczywistych danych przetwarzanych — co obejmuje nieanglojęzyczne PII w międzynarodowych wdrożeniach.

Praktyczne ryzyko: organizacja może wykazać 95% skuteczności wykrywania PII w treści angielskiej podczas audytu GDPR, ale jeśli przetwarza również treści niemieckie, francuskie i polskie tym samym narzędziem, audyt może ujawnić systematyczne luki dla tych języków.

Trójwarstwowe podejście do wielojęzycznego wykrywania PII

Badania akademickie i wdrożenia produkcyjne zbiegną się w trójwarstwowej architekturze hybrydowej jako najbardziej efektywnym podejściu do wielojęzycznego wykrywania PII:

Warstwa 1: Modele spaCy rodzimych dla języka (języki wysokich zasobów)

spaCy oferuje wytrenowane komponenty pipeline dla 25 języków, w tym niemieckiego, francuskiego, hiszpańskiego, portugalskiego, włoskiego, holenderskiego, rosyjskiego, chińskiego, japońskiego, koreańskiego, polskiego i innych. Modele te są wytrenowane na korpusach w rodzimym języku i rozumieją morfologię, składnię i wzorce podmiotów każdego języka.

Dla niemieckiego: model spaCy de_core_news_lg rozumie złożone rzeczowniki, inflekcję przypadków i niemieckie wzorce nazw. Dla francuskiego: fr_core_news_lg obsługuje francuskie wzorce podmiotów, w tym tytuły, nazwy miejsc i formaty organizacji.

Modele rodzimych języków osiągają znacznie wyższą precyzję i przypomnienie dla wykrywania nazw niż modele międzyjęzykowe stosowane do konkretnych języków wysokich zasobów.

Warstwa 2: Stanza (dodatkowe języki)

Biblioteka Stanza Stanforda zapewnia NER dla dodatkowych języków, które nie są objęte komercyjną ofertą spaCy, w tym chorwackiego, słoweńskiego, ukraińskiego i innych. To rozszerza zasięg na języki z mniejszymi, ale nadal znaczącymi populacjami mówiącymi w UE.

Warstwa 3: XLM-RoBERTa (pokrycie międzyjęzykowe)

Dla języków, dla których ani spaCy, ani Stanza nie oferują wytrenowanych modeli NER, XLM-RoBERTa zapewnia transfer międzyjęzykowy. Wytrenowany na danych Common Crawl w 100 językach, XLM-RoBERTa osiąga 91.4% F1 międzyjęzykowego dla wykrywania PII (HuggingFace 2024), co umożliwia rozsądne wykrywanie dla języków o niższych zasobach.

Model międzyjęzykowy dobrze radzi sobie z przełączaniem kodów (tekst mieszany) — właściwość, która staje się krytyczna dla międzynarodowych organizacji, w których jeden dokument może zawierać tekst w wielu językach.

Specyficzne dla języka typy podmiotów

Poza modelem wykrywania, zgodność z GDPR wymaga pokrycia typów podmiotów dla identyfikatorów specyficznych dla kraju. Narzędzie wielojęzyczne potrzebuje:

Krajowe identyfikatory UE:

  • DE: Steuer-ID, Sozialversicherungsnummer, Personalausweisnummer
  • FR: NIR, SIREN, SIRET, numéro de téléphone
  • PL: PESEL, NIP, REGON
  • NL: BSN, BurgerServiceNummer
  • SE: Personnummer, Samordningsnummer
  • ES: DNI, NIE, NIF, CIF
  • IT: Codice Fiscale, Partita IVA

Formaty numerów telefonów: Każdy kraj UE ma unikalne struktury prefiksów mobilnych, formaty kodów kierunkowych i lokalne konwencje wybierania. +49 (Niemcy), +33 (Francja), +48 (Polska) wymagają walidacji specyficznej dla kraju.

Formaty adresów: Format kodów pocztowych różni się radykalnie — niemiecki PLZ (5 cyfr), francuski kod pocztowy (5 cyfr zaczynających się od 01-99), brytyjski kod pocztowy (alfanumeryczny, wiele formatów), hiszpański código postal (5 cyfr 01000-52999).

Przypadek użycia: Szwajcarskie dokumenty farmaceutyczne w wielu językach

Szwajcarska firma farmaceutyczna przetwarza umowy o pracę, które zawierają tekst w języku niemieckim, francuskim i angielskim w tym samym dokumencie (Szwajcaria ma cztery oficjalne języki). Ich obecne narzędzie jest skonfigurowane dla niemieckiego i pomija wszystkie PII w sekcji francuskiej.

Umowa o pracę dla pracownika z Genewy odnosi się do ich francuskiego numeru AVS (13 cyfr), ich szwajcarskiego numeru konta bankowego IBAN, ich kantonu zamieszkania i ich imienia w formacie francuskim. Narzędzie skonfigurowane dla niemieckiego pomija imię w formacie francuskim, nie wykrywa wzoru numeru AVS w formacie francuskim (inny niż format AHV-Nummer w niemieckim) i tylko częściowo wykrywa IBAN.

Podejście trójwarstwowe przetwarza dokument jako całość, automatycznie wykrywając język dla każdego segmentu tekstu, stosując modele NER odpowiednie dla języka i używając walidatorów regex specyficznych dla kraju dla każdego typu identyfikatora krajowego — niezależnie od tego, w której sekcji językowej się pojawia.

Obsługa dokumentów w mieszanym języku

Najtrudniejszym problemem wielojęzycznym PII jest mieszanie języków wewnątrz dokumentu: dokument, który zawiera akapity w różnych językach, zdania z przełączaniem kodów lub cytowany tekst w innym języku niż otaczający kontekst.

Przykłady:

  • Angielski kontrakt niemieckiej firmy z danymi pracowników niemieckich (imiona, numery podatkowe)
  • Francuski formularz zgody GDPR, który zawiera fragment polityki prywatności w języku angielskim
  • Wielojęzyczny dziennik czatu obsługi klienta, w którym agent odpowiada w języku angielskim, ale klient pisze po arabsku

XLM-RoBERTa obsługuje to natywnie: jego trening międzyjęzykowy oznacza, że nie wymaga wyraźnych deklaracji językowych i przetwarza tekst mieszany bez konieczności segmentacji.

Dla wdrożeń produkcyjnych połączenie automatycznego wykrywania języka (stosowane na poziomie zdania) i inferencji międzyjęzykowej XLM-RoBERTa zapewnia najbardziej solidną obsługę dokumentów w mieszanym języku.

Praktyczne wskazówki dotyczące wdrożenia

Audytuj pokrycie językowe swojego obecnego narzędzia: Poproś swojego obecnego dostawcę anonimizacji o podanie wyników F1 dla konkretnych języków w twoich danych. "Obsługuje 20 języków" często oznacza, że narzędzie przepuszcza tekst przez Google Translate przed zastosowaniem NER wytrenowanego na angielskim — co nie jest tym samym co wykrywanie rodzimych języków.

Mapuj swoje dane do języków: Przeprowadź inwentaryzację danych, która obejmuje rozkład językowy. Międzynarodowa firma z 70% danych anglojęzycznych, 20% niemieckich i 10% francuskich ma inne ryzyko niż ta z 95% danych anglojęzycznych.

Testuj z próbkami identyfikatorów krajowych: Stwórz zestaw testowy z 10 przykładami każdego z identyfikatorów krajowych istotnych dla twojej działalności (Steuer-ID, NIR, PESEL, BSN itp.) i zweryfikuj wskaźniki wykrywania. To jest szybszy audyt niż ocena F1 na dużą skalę.

Przejrzyj swoje DPIA: Jeśli masz Oceny Wpływu na Ochronę Danych dotyczące swojego narzędzia do anonimizacji, upewnij się, że analiza pokrycia językowego jest uwzględniona. Niekompletna DPIA, która zakłada pokrycie tylko w języku angielskim, może wymagać aktualizacji.


Silnik wykrywania PII firmy anonym.legal wykorzystuje trójwarstwowe podejście wielojęzyczne: modele spaCy rodzimych dla języka dla 25 języków wysokich zasobów, Stanza dla dodatkowego pokrycia językowego i XLM-RoBERTa jako transformatory międzyjęzykowe dla ogólnego pokrycia 48 języków. Uwzględnione są specyficzne dla kraju typy podmiotów dla wszystkich państw członkowskich UE.

Źródła:

Gotowy, aby chronić swoje dane?

Rozpocznij anonimizację PII z 285+ typami podmiotów w 48 językach.