By · Last updated 2026-05-27

Povratak na BlogTehnički

GDPR i ML: Anonimizacija podataka za trening

GDPR ogranicava koristenje osobnih podataka za treniranje ML modela izvan izvorne svrhe prikupljanja. Timovi koji se oslanjaju na ad-hoc Python skripte stvaraju sustavne probleme uskladjenosti.

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

Jedna skripta nije dovoljna

Svaki tim podatkovnih znanstvenika napisao je nesto ovako:

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

Ovo zamjenjuje adrese elektronicke poste. To je sve sto radi. Skup podataka i dalje sadrzi imena, brojeve telefona i medicinske identifikatore. I dalje nece proci GDPR reviziju.

Jaz izmedju "anonimizirao sam adrese e-poste" i "ovaj skup podataka je GDPR-sukladan" je velik. Timovi ga uvijek podcjenjuju.

Zasto GDPR ogranicava koristenje podataka za ML trening

GDPR clanak 5(1)(b) je kljucno pravilo. Naziva se nacelo ogranicenja svrhe. Osobni podaci smiju se koristiti samo za svrhu za koju su prikupljeni.

Narudzbe kupaca prikupljene su za ispunjenje narudzbe. Ne za trening modela preporuka. Zdravstveni kartoni prikupljeni su radi lijecenja. Ne za trening modela ponovnog prijema. Odgovori na ankete prikupljeni su radi povratnih informacija o proizvodu. Ne za trening klasifikatora sentimenta.

Za koristenje tih podataka za ML trening, timu je potrebno jedno od tri:

  1. Izricita suglasnost svake osobe za ML svrhu - tesko je dobiti, cesto nemoguce retroaktivno
  2. Procjena legitimnog interesa koja pokazuje da je ML koristenje kompatibilno - pravno nesigurno, ovisno o DPA
  3. Anonimizacija - zamjena ili uklanjanje osobnih podataka kako skup podataka vise ne bi bio osoban prema GDPR-u

Pravilna anonimizacija pruzaju najvecu pravnu sigurnost. Izazov je to raditi ispravno svaki put.

Problem s jednokratnim skriptama

Timovi koji pisu novu Python skriptu za svaki skup podataka stvaraju nagomilane probleme.

Nepotpuno pokrivanje. Skripta napravljena za jednu shemu propusta nova polja. Stupac biljesaka iz klinicke prakse dodan prije sest mjeseci? Nije u regexu. Polje za srednje ime? Skripta obradjuje samo obrasce za ime i prezime.

Nema dosljednosti. Skup podataka A obradjivala je skripta_v1. Skup B koristio je skripta_v3. Skup C obradio je drugi clan tima. Objedinjeni skup za trening ima tri razlicite primijenjene metode. Sluzbenik za zastitu podataka (DPO) to ne moze certificirati.

Nema revizijskog traga. Skripta je pokrenuta. Sto je promijenila? Koji entiteti su pronadjeni? Bez zapisa o obradi, uskladjenost je nemoguca. Kad revizor DPA pita "kako znate da je ovaj skup za trening cist?", odgovor "pokrenuli smo Python skriptu" nije dovoljan.

Drift modela. Regex uzorci koji su radili 2023. propustaju nove formate identifikatora iz 2024. Skripte se ne azuriraju same od sebe.

Primjer grupne obrade

Tim za AI u zdravstvenom sektoru treba anonimizirati 8.000 pacijentskih kartona. Amerieki tim treba pristup iz EU ureda. Primjenjuje se Schrems II - zapisi podrijetlom iz EU ne mogu ici u americku infrastrukturu bez odgovarajucih zastita.

Tradicionalni put: Inzenjer podataka pise prilagodljenu skriptu. Dva do tri dana razvoja. Jedan do dva dana DPO pregleda. Jedan dan iteracije. Ukupno: cetiri do sest dana. ML projekt kasni.

Put grupne obrade:

  1. Izvezite 8.000 zapisa kao CSV
  2. Prenesite u grupnu obradu
  3. Postavite vrste entiteta: PERSON, EMAIL_ADDRESS, PHONE_NUMBER, US_SSN, MEDICAL_RECORD, DATE_OF_BIRTH, LOCATION
  4. Odaberite metodu: Replace (zamjenjuje realisticnim sintetickim vrijednostima radi ocuvanja strukture)
  5. Obrada: 45 minuta za 8.000 zapisa
  6. Preuzmite cisti CSV
  7. DPO pregledava metapodatke obrade - pronadjeni entiteti po zapisu, primijenjene metode: 2 sata
  8. DPO odobrava. Prijenos se nastavlja.

Ukupno vrijeme: 45 minuta plus 2 sata DPO pregleda. Umjesto cetiri do sest dana.

Pogledajte vodic za trening podataka prema EU AI Aktu za iste korake koji zadovoljavaju obveze iz clanka 10.

Replace vs. Redact za ML primjenu

Metoda anonimizacije utjece na kvalitetu modela.

Redact zamjenjuje PII tokenima poput [REDACTED]. To funkcionira za modele detekcije PII-a. Za ostale zadatke - sentiment, klasifikaciju, preporuke - steti. Model uci da je [REDACTED] poseban token. Ne moze uciti iz prirodne distribucije imena i vrijednosti.

Replace zamjenjuje "Ivan Horvat" s "Marko Novak". Zamjenjuje "ihorvat@tvrtka.com" s "mnovak@sinteticki.com". Struktura ostaje netaknuta. Smjestaj entiteta, uzorci supojavljivanja, tok recenice - sve je ocuvano. Model uci iz realisticnog konteksta.

Za ML skupove podataka za trening, Replace je pravi izbor. Model ne uci lazne vrijednosti. Uci uzorke oko njih. To je ono sto je vazno.

Schrems II i prekogranicni prijenosi

Presuda Schrems II (CJEU, 2020.) ponistila je EU-US Privacy Shield. Zapisi podrijetlom iz EU ne mogu ici u americku ML infrastrukturu - AWS US-East, GCP US-Central - bez odgovarajucih zastita prijenosa.

Tri glavne zastite su:

  • Standardne ugovorne klauzule s Procjenom utjecaja prijenosa
  • Obvezujuca korporativna pravila za prijenose unutar grupe tvrtki
  • Iznimka za anonimizirane zapise - pravilno anonimizirane datoteke vise nisu osobne prema GDPR-u i izuzete su od pravila prijenosa

Za timove koji koriste americku infrastrukturu s EU skupovima, pravilna anonimizacija uklanja problem Schremsa II. Cisti skup podataka nije osoban. Moze se slobodno premjestati.

Ovo je jedna od najjacih prakticnih prednosti grupne anonimizacije. Ona ne samo zadovoljava GDPR. Potpuno uklanja prekogranicno trenje.

Za vise o ogranicenjima prijenosa, pogledajte vodic o ogranicenju svrhe prema GDPR-u.

Sto predati DPO-u

Prilikom predaje cistog skupa za trening DPO-u na odobrenje, ukljucite ovih pet stavki:

  1. Opis izvora. Koji je bio originalni skup podataka? Koja je bila svrha prikupljanja? Koje osobne kategorije je sadrzavao?
  2. Konfiguracija anonimizacije. Koje vrste entiteta su otkrivene i zamijenjene? Koja je metoda primijenjena?
  3. Metapodaci obrade. Broj entiteta po zapisu, ocjene pouzdanosti, ukupan broj obradjenih zapisa.
  4. Procjena rezidualnog rizika. Kolika je sansa da bi neka osoba mogla biti reidentificirana? Za anonimizaciju metodom Replace s 285+ vrsta entiteta na strukturiranom tekstu, ta je vjerojatnost vrlo niska.
  5. Namjeravana koristenje. Koji ce model biti treniran? Koja je svrha treninga?

Grupna obrada automatski pruzaju stavke 2 i 3. Stavke 1, 4 i 5 dolaze od podatkovnog znanstvenika.

Pogledajte anonym.legal batch API za nacin na koji se metapodaci obrade vracaju uz svaki posao.

Sto dobivate

GDPR-sukladni ML skupovi su ostvarivi bez prilagodljenih skripti, bez visednevnih kasnjenja i bez gubitka kvalitete modela.

Metoda Replace cuva svojstva prirodnog jezika koja su vazna za NLP trening. Uklanja osobne podatke koji stvaraju GDPR rizik.

45 minuta grupne obrade razlika je izmedju odgodene revizije uskladjenosti i jednostavnog DPO odobrenja.

Izvori

Spremni za zaštitu vaših podataka?

Započnite anonimizaciju PII-a s 285+ vrsta entiteta na 48 jezika.

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.