By · Last updated 2026-05-27

Bumalik sa BlogTeknikal

GDPR ML Training Data Anonymization

Nililimitahan ng GDPR ang paggamit ng personal na datos para sa ML training na higit sa orihinal na layunin ng pagkolekta. Ang mga data scientist na umaasa sa ad-hoc na Python scripts ay lumilikha ng mga panganib sa compliance.

May 27, 20267 min basahin
ML training dataGDPR data scienceSchrems IItraining dataset anonymizationresponsible AI

Isang Script Lang ay Hindi Sapat

Bawat data science team ay nakasulat ng ganito:

import re
def anonymize_email(text):
    return re.sub(r'[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}', '[EMAIL]', text)

Pinagpapalit nito ang mga email address. Iyan lang ang ginagawa nito. Ang dataset ay mayroon pa ring mga pangalan, numero ng telepono, at medikal na ID. Mabibigo pa rin ito sa isang GDPR audit.

Ang agwat sa pagitan ng "na-anonymize ko na ang mga email" at "ang dataset na ito ay sumusunod sa GDPR" ay malaki. Laging minamaliinan ito ng mga team.

Bakit Nililimitahan ng GDPR ang Paggamit sa ML Training

Ang GDPR Article 5(1)(b) ang pangunahing panuntunan. Tinatawag itong prinsipyo ng limitasyon sa layunin. Ang mga personal na rekord ay maaari lamang gamitin para sa layuning kinokolekta ang mga ito.

Ang mga order ng customer ay kinokolekta para sa pagtupad ng order. Hindi para sa pag-train ng recommendation model. Ang mga rekord ng kalusugan ay kinokolekta para sa paggamot. Hindi para sa pag-train ng readmission model. Ang mga sagot sa survey ay kinokolekta para sa feedback sa produkto. Hindi para sa pag-train ng sentiment classifier.

Upang magamit ang mga rekord na iyon para sa ML training, kailangan ng isang team ng isa sa tatlong bagay:

  1. Eksplisitong pahintulot mula sa bawat tao para sa layunin ng ML - mahirap makuha, madalas imposible nang retroaktibo
  2. Isang legitimate interest assessment na nagpapakita na ang paggamit sa ML ay katugma - legal na hindi sigurado, nakasalalay sa DPA
  3. Anonymization - pagpapalit o pag-aalis ng mga personal na detalye upang ang dataset ay hindi na personal sa ilalim ng GDPR

Ang wastong anonymization ay nagbibigay ng pinakamataas na legal na katiyakan. Ang hamon ay gawin ito nang tama sa bawat pagkakataon.

Ang Problema sa One-Off Scripts

Ang mga team na nagsusulat ng bagong Python script para sa bawat dataset ay lumilikha ng mga komplikadong isyu.

Hindi kumpletong coverage. Ang isang script na itinayo para sa isang schema ay nagpapalampas ng mga bagong field. Isang clinical notes column na idinagdag anim na buwan na ang nakakaraan? Wala sa regex. Isang middle name field? Ang script ay naghahanap lamang ng mga pattern ng una at apelyido.

Walang konsistensiya. Ang Dataset A ay pinroseso gamit ang script_v1. Ang Dataset B ay gumamit ng script_v3. Ang Dataset C ay pinroseso ng ibang miyembro ng team. Ang pinagsanib na training set ay may tatlong iba't ibang pamamaraan na inilapat. Hindi maaring sertipikahan ng DPO ito.

Walang audit trail. Tumakbo ang script. Ano ang binago nito? Aling mga entity ang natagpuan? Nang walang mga rekord ng pagproseso, imposible ang compliance. Kapag ang isang DPA auditor ay nagtanong ng "paano mo nalalaman na malinis ang training set na ito?", ang sagot na "nagpatakbo kami ng Python script" ay hindi sapat.

Model drift. Ang mga regex pattern na gumagana noong 2023 ay nagpapalampas ng mga bagong format ng identifier mula sa 2024. Ang mga script ay hindi nag-a-update ng kanilang sarili.

Isang Walkthrough ng Batch Processing

Ang isang healthcare AI team ay kailangang mag-anonymize ng 8,000 rekord ng pasyente. Kailangan ng US team ng access mula sa EU office. Naaangkop ang Schrems II - ang mga rekord na nagmula sa EU ay hindi maaring pumunta sa US infrastructure nang walang wastong mga safeguard.

Tradisyonal na landas: Isang data engineer ay nagsusulat ng custom script. Dalawa hanggang tatlong araw ng pag-develop. Isa hanggang dalawang araw ng pagsusuri ng DPO. Isang araw ng iteration. Kabuuan: apat hanggang anim na araw. Naaantala ang ML project.

Landas ng batch processing:

  1. I-export ang 8,000 rekord bilang CSV
  2. I-upload sa batch processing
  3. Itakda ang mga uri ng entity: PERSON, EMAIL_ADDRESS, PHONE_NUMBER, US_SSN, MEDICAL_RECORD, DATE_OF_BIRTH, LOCATION
  4. Piliin ang paraan: Replace (nagpapalit ng mga makatotohanang synthetic na value upang mapanatili ang istruktura)
  5. Proseso: 45 minuto para sa 8,000 rekord
  6. I-download ang malinis na CSV
  7. Susuriin ng DPO ang metadata ng pagproseso - mga entity na natagpuan sa bawat rekord, mga pamamaraang inilapat: 2 oras
  8. Aprubahan ng DPO. Magpapatuloy ang paglipat.

Kabuuang oras: 45 minuto kasama ang 2 oras ng pagsusuri ng DPO. Sa halip na apat hanggang anim na araw.

Tingnan ang EU AI Act training guide para sa kung paano tinutupad ng parehong mga hakbang ang mga obligasyon ng Article 10.

Replace vs. Redact para sa Paggamit sa ML

Ang paraan ng anonymization ay mahalaga para sa kalidad ng model.

Redact ay nagpapalit ng PII ng isang token tulad ng [REDACTED]. Gumagana ito para sa mga modelo ng PII detection. Para sa iba pang mga gawain - sentiment, classification, rekomendasyon - nakapipinsala ito. Natututo ang modelo na ang [REDACTED] ay isang espesyal na token. Hindi ito matututo mula sa natural na distribusyon ng mga pangalan at halaga.

Replace ay nagpapalitan ng "John Smith" para sa "David Chen". Pinapalitan nito ang "jsmith@company.com" ng "dchen@synthetic.com". Mananatiling buo ang istruktura. Ang paglalagay ng entity, mga pattern ng co-occurrence, daloy ng pangungusap - lahat ay napanatili. Natututo ang modelo mula sa makatotohanang konteksto.

Para sa mga ML training set, ang Replace ang tamang pagpipilian. Hindi natututo ang modelo sa mga pekeng halaga. Natututo ito sa mga pattern sa paligid ng mga ito. Iyon ang mahalaga.

Schrems II at Cross-Border Transfers

Ang pasya ng Schrems II (CJEU, 2020) ay nagpawalang-bisa sa EU-US Privacy Shield. Ang mga rekord na nagmula sa EU ay hindi maaring pumunta sa US ML infrastructure - AWS US-East, GCP US-Central - nang walang wastong mga safeguard para sa paglipat.

Ang tatlong pangunahing safeguard ay:

  • Standard Contractual Clauses na may Transfer Impact Assessment
  • Binding Corporate Rules para sa mga paglipat sa loob ng isang grupo ng kumpanya
  • Derogation para sa mga anonymized na rekord - ang mga wastong na-anonymize na file ay hindi na personal sa ilalim ng GDPR at exempt sa mga patakaran sa paglipat

Para sa mga team na gumagamit ng US infrastructure na may mga EU-origin na set, ang wastong anonymization ay nag-aalis ng problema ng Schrems II. Ang malinis na dataset ay hindi personal. Maaari itong malayang gumalaw.

Ito isa sa pinakamalakas na praktikal na benepisyo ng batch anonymization. Hindi lamang ito nagbibigay ng kasiyahan sa GDPR. Nag-aalis ito ng friction sa cross-border nang buo.

Para sa higit pa sa mga paghihigpit sa paglipat, tingnan ang GDPR purpose limitation guide.

Ano ang Ibibigay sa DPO

Kapag nagsumite ng malinis na training set para sa pag-apruba ng DPO, isama ang limang item na ito:

  1. Paglalarawan ng pinagmulan. Ano ang orihinal na dataset? Ano ang layunin ng pagkolekta? Anong mga personal na kategorya ang naglalaman nito?
  2. Config ng anonymization. Aling mga uri ng entity ang na-detect at napalitan? Anong paraan ang inilapat?
  3. Metadata ng pagproseso. Bilang ng entity sa bawat rekord, mga marka ng kumpiyansa, kabuuang bilang ng mga rekord na pinroseso.
  4. Pagsusuri ng natitirang panganib. Ano ang posibilidad na may maaaring ma-re-identify? Para sa Replace-method anonymization na may 285+ na uri ng entity sa structured text, ang posibilidad na ito ay napakababa.
  5. Nilayong paggamit. Anong modelo ang ma-te-train? Ano ang layunin ng training?

Ang batch processing ay nagbibigay ng item 2 at 3 awtomatiko. Ang mga item 1, 4, at 5 ay nagmumula sa data scientist.

Tingnan ang anonym.legal batch API para sa kung paano ibinabalik ang metadata ng pagproseso sa bawat trabaho.

Ano ang Makukuha Mo

Ang mga GDPR-compliant na ML set ay makakamit nang walang custom scripts, walang multi-day na pagkaantala, at nang hindi nawawala ang kalidad ng modelo.

Pinapanatili ng paraan ng Replace ang mga katangian ng natural na wika na mahalaga para sa NLP training. Inaaalis nito ang mga personal na detalye na lumilikha ng panganib sa GDPR.

45 minuto ng batch processing ang pagkakaiba sa pagitan ng naantalang pagsusuri ng compliance at isang simpleng pag-apruba ng DPO.

Mga Sanggunian

Handa nang protektahan ang iyong data?

Simulan ang anonymization ng PII gamit ang 285+ uri ng entidad sa 48 wika.

About this page

We update this page when our platform or the law changes.

Read our founder note for how we work.

Each change shows up in the timestamp at the top.

Related reading

We follow these rules

  • GDPR (EU 2016/679).
  • ISO/IEC 27001:2022.
  • NIS2 (EU 2022/2555).
  • HIPAA safe harbor under 45 CFR § 164.514(b)(2).

Our promise

We do not sell your data.

We do not train models on your text.

We store your files in Germany.

You can delete your account at any time.

You own your work.

Where we run

Our servers live in Falkenstein, Germany.

We use Hetzner. They hold ISO 27001 certification.

All data stays in the EU.

Backups run every day.

Need help?

Email support@anonym.legal.

We reply within one business day.

How we test

We run a full check suite on every release.

Each surface gets its own sweep script and report.

Human reviewers spot-check the output each week.

We track recall and precision on a labelled set.

Bad runs block the deploy.

What we never do

  • We never sell your information to third parties.
  • We never train models on what you upload.
  • We never keep your work after you delete it.
  • We never share keys with any outside firm.
  • We never run ads inside the product.

Plans in plain words

We sell credits, not seats.

One credit covers one short job.

Long jobs use a few credits each.

You can top up at any time.

Unused credits roll over each month.

Read the plans page for current rates.

Who built this

A small team of engineers and lawyers built this.

We ship from Europe and work in the open.

Our founder note spells out why we started.

Where to start

How the parts fit

A browser add-on cleans text inside Chrome.

A Word plug-in handles drafts in Office.

A small desktop tool works on whole folders.

An agent protocol link feeds large models safely.

All four share one core engine and one rule set.

Words from our team

We started this work after a lunch about cookies.

One friend kept getting odd ads on her phone.

We asked why a court file leaked through a draft.

We sketched the first build on a napkin that week.

By month three we had a tiny demo for a friend.

She used it on her first case the next day.

Common questions we hear

Can the tool read scanned PDFs? Yes, with OCR.

Does it work on long files? Yes, in small chunks.

Can I roll my own rule set? Yes, save it as a preset.

Does it run offline? The desktop build runs offline.

Do you keep my files? No, the cloud build wipes after each run.

Will it learn from my work? No, we never train on inputs.

A short tour of the workflow

Upload a file or paste a snippet of prose.

Pick the entities you want gone from the draft.

Choose a method: replace, mask, hash, encrypt, or redact.

Press run and watch the side panel show each hit.

Skim the result and tweak any rule that misfired.

Save the cleaned file or send it to a teammate.