블로그로 돌아가기기술

GDPR 준수 ML 훈련 데이터: 코드를 작성하지 않고 10,000개의 레코드 익명화하기

GDPR은 개인 데이터를 원래 수집 목적을 넘어 ML 훈련에 사용하는 것을 제한합니다. 임시 Python 스크립트에 의존하는 데이터 과학자들은 일관성이 없고 감사 준비가 되지 않은 익명화를 만듭니다. 배치 처리는 45분 만에 GDPR 준수 훈련 데이터 세트를 생성합니다.

April 20, 20267 분 읽기
ML training dataGDPR data scienceSchrems IItraining dataset anonymizationresponsible AI

GDPR 준수 ML 훈련 데이터: 코드를 작성하지 않고 10,000개의 레코드 익명화하기

GDPR 적용 데이터를 운영하는 모든 데이터 과학 팀은 이 스크립트의 어떤 버전을 작성했을 것입니다:

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

이는 GDPR 준수가 아닙니다. 이메일 주소 교체입니다. 데이터 세트에는 여전히 이름, 전화번호, 의료 기록 ID 및 준수 실패를 유발할 수 있는 다른 PII 범주가 포함되어 있습니다.

"이메일을 익명화했습니다"와 "이 데이터 세트는 ML 훈련을 위한 GDPR 준수입니다" 사이의 간극은 크고, 결과적이며, 일상적으로 과소평가됩니다.

GDPR이 ML 훈련 데이터 사용을 제한하는 이유

GDPR의 목적 제한 원칙(제5조(1)(b))은 개인 데이터는 특정하고 명시적이며 합법적인 목적을 위해 수집될 수 있으며, 이러한 목적과 호환되지 않는 방식으로 추가 처리되어서는 안 된다고 명시합니다.

주문 이행을 위해 수집된 고객 데이터는 추천 모델 훈련 목적을 위해 수집된 것이 아닙니다. 치료를 위해 수집된 건강 기록 데이터는 재입원 예측 모델 훈련을 위해 수집된 것이 아닙니다. 제품 피드백을 위해 수집된 설문 응답 데이터는 감정 분석 모델 훈련을 위해 수집된 것이 아닙니다.

이 데이터를 ML 훈련에 사용하려면 다음 중 하나가 필요합니다:

  1. ML 훈련 목적을 위한 각 데이터 주체의 명시적 동의(운영적으로 복잡하고, 종종 소급적으로 불가능)
  2. 훈련 목적이 원래 수집과 호환됨을 보여주는 합법적 이익 평가(법적으로 불확실하고, DPA 의존)
  3. 익명화 — PII를 제거하거나 교체하여 데이터가 더 이상 GDPR에 따른 개인 데이터가 되지 않도록 함

적절한 익명화는 저항이 가장 적고 법적 확실성이 가장 큰 경로입니다. 문제는 이를 올바르고 일관되게 수행하는 것입니다.

임시 익명화 스크립트의 문제

각 새로운 데이터 세트에 대해 일회성 Python 스크립트를 작성하는 데이터 과학 팀은 복합적인 문제를 만듭니다:

불완전한 범위: 하나의 데이터 세트 스키마를 처리하기 위해 작성된 스크립트는 마지막 스키마 업데이트 이후에 추가된 열의 PII를 놓칩니다. 6개월 전에 추가된 임상 노트 필드: regex 패턴에 없음. 고객 중간 이름 필드: regex는 FIRST_NAME 및 LAST_NAME 패턴만 처리합니다.

데이터 세트 간 불일치: 데이터 세트 A는 script_v1.py로 익명화되었습니다. 데이터 세트 B는 script_v3.py로 익명화되었습니다. 데이터 세트 C는 script_v3.py에 대해 알지 못하는 다른 팀원이 익명화했습니다. 병합된 훈련 데이터 세트에는 세 가지 다른 익명화 방법론이 있습니다. DPO는 이를 인증할 수 없습니다.

감사 추적 없음: 스크립트가 실행되었습니다. 무엇이 변경되었습니까? 어떤 엔티티가 발견되었습니까? 어떤 행에서? 처리 메타데이터가 없으면 준수 문서화가 불가능합니다. DPA 감사인이 "이 훈련 데이터 세트가 익명화되었다는 것을 어떻게 아십니까?"라고 물으면, "우리는 Python 스크립트를 실행했습니다"는 만족스러운 답변이 아닙니다.

모델 드리프트: 2023 데이터에서 작동했던 regex 패턴은 2024 데이터에서 도입된 새로운 식별자 형식을 감지하지 못합니다(새로운 SSN 형식, 다른 이메일 도메인 패턴, 진화하는 전화번호 형식). 스크립트는 스스로 업데이트되지 않습니다.

배치 처리 접근법

한 헬스케어 AI 회사의 데이터 과학 팀은 미국 팀이 EU 사무소에서 접근할 수 있도록 8,000개의 환자 기록을 익명화해야 합니다(슈렘스 II 국경 간 데이터 전송 제한 적용).

전통적인 접근법: 데이터 엔지니어가 맞춤형 Python 익명화 스크립트를 작성합니다. 시간: 2-3일의 개발, DPO와의 1-2일의 테스트 및 검토, 1일의 반복. 총: 4-6일. ML 프로젝트 일정이 지연됩니다.

배치 처리 접근법:

  1. 8,000개의 레코드를 CSV로 내보내기(표준 데이터 과학 형식)
  2. 배치 처리에 업로드
  3. 엔티티 유형 구성: PERSON, EMAIL_ADDRESS, PHONE_NUMBER, US_SSN, MEDICAL_RECORD, DATE_OF_BIRTH, LOCATION
  4. 방법 선택: 교체(ML 훈련을 위한 데이터 세트 구조를 유지하기 위해 현실적인 가짜 데이터로 대체)
  5. 처리: 8,000개의 레코드에 대해 45분
  6. 익명화된 CSV 다운로드
  7. DPO가 처리 메타데이터 검토(레코드당 발견된 엔티티, 적용된 방법): 2시간
  8. DPO 승인, 데이터 공유 진행

총 시간: 45분 처리 + 2시간 DPO 검토 대 4-6일 엔지니어링. ML 일정이 유지됩니다.

ML 훈련 데이터에 대한 교체 대 수정

익명화 방법의 선택은 ML 유용성에 중요합니다:

수정(검은색 막대/자리 표시자 교체): PII를 [REDACTED] 또는 유사한 토큰으로 교체합니다. 결과 데이터 세트는 PII가 있었던 곳에 일관된 자리 표시자 토큰이 있습니다. PII를 감지하도록 훈련된 NLP 모델의 경우, 이는 레이블이 지정된 데이터 세트를 생성합니다. 하류 작업(감정, 분류, 추천)에 대해 훈련된 모델의 경우, [REDACTED] 토큰은 자연어 모델링을 방해합니다 — 모델은 **[REDACTED]**가 특별한 토큰이라는 것을 배우게 되며, 실제 이름과 값의 분포에서 배우지 않습니다.

교체(현실적인 합성 대체): "John Smith"를 "David Chen"(현실적이지만 다른 이름)으로 교체합니다. 이메일 "jsmith@company.com"은 "dchen@synthetic.com"이 됩니다. 결과 데이터 세트는 자연어 분포(문장 구조, 엔티티 배치, 동시 발생 패턴)를 유지합니다 — 이는 NLP 모델 훈련에 중요합니다.

특히 ML 훈련 데이터의 경우, 교체가 적절한 방법입니다. 모델은 특정 가짜 값을 예측하는 법을 배우지 않지만(무작위 대체이므로), 이름, 이메일 및 기타 엔티티가 텍스트에 나타나는 구조적 및 맥락적 패턴에서 배웁니다.

슈렘스 II 및 국경 간 데이터 흐름

슈렘스 II 결정(CJEU, 2020)은 EU-US 프라이버시 쉴드를 무효화하여 EU에서 미국 서버로의 데이터 전송에 대한 불확실성을 초래했습니다. 데이터 과학에 대한 실질적인 영향: EU에서 유래한 훈련 데이터는 적절한 전송 보호 장치 없이 미국 기반 ML 인프라(AWS US-East, GCP US-Central)로 전송될 수 없습니다.

적절한 보호 장치에는 다음이 포함됩니다:

  • 전송 영향 평가가 포함된 표준 계약 조항(SCC)
  • 그룹 내 전송을 위한 구속력 있는 기업 규칙(BCR)
  • 익명화된 데이터에 대한 면제: 적절히 익명화된 데이터는 GDPR에 따른 개인 데이터가 아니며 전송 제한의 적용을 받지 않습니다.

EU에서 유래한 데이터를 사용하는 미국 기반 ML 인프라 팀의 경우, 적절한 익명화는 슈렘스 II 문제를 완전히 제거합니다. 익명화된 데이터 세트는 더 이상 개인 데이터가 아니므로, 전송 메커니즘 요구 사항 없이 어떤 인프라에서도 전송, 저장 및 처리될 수 있습니다.

DPO 승인을 위한 문서화

익명화된 훈련 데이터를 DPO에 제출할 때 제공해야 할 사항:

  1. 원본 데이터 설명: 원래 데이터 세트는 무엇이었고, 수집 목적은 무엇이었으며, 어떤 개인 데이터 범주가 포함되어 있었습니까?

  2. 익명화 구성: 어떤 엔티티 유형이 감지되고 교체되었습니까? 어떤 방법이 적용되었습니까?

  3. 처리 메타데이터: 레코드당 감지된 엔티티 수, 감지 신뢰도 점수, 처리된 총 레코드 수

  4. 잔여 위험 평가: 익명화된 데이터 세트에서 어떤 개인이 재식별될 확률은 얼마입니까? 구조화된 텍스트에 285개 이상의 엔티티 유형이 적용된 교체 방법 익명화의 경우, 이 확률은 대부분의 훈련 데이터 세트에서 매우 낮습니다.

  5. 의도된 사용: 어떤 ML 모델이 훈련될 것입니까? 훈련 목적은 무엇입니까?

배치 처리에서의 처리 메타데이터는 자동으로 2-3점을 제공합니다. 1, 4 및 5는 데이터 과학자의 입력이 필요합니다.

결론

GDPR 준수 ML 훈련 데이터는 임시 스크립트 없이, 며칠간의 엔지니어링 지연 없이, 모델 훈련을 위한 데이터 세트 유용성을 희생하지 않고도 달성할 수 있습니다. 교체 익명화 방법은 데이터가 NLP 모델 훈련에 유용하게 만드는 자연어 속성을 유지하면서 GDPR 책임을 유발하는 개인 데이터 속성을 제거합니다.

45분의 배치 처리는 일정 지연을 초래하는 준수 검토와 간단한 DPO 서명 간의 차이입니다.

출처:

데이터 보호를 시작할 준비가 되셨나요?

48개 언어로 285개 이상의 엔티티 유형으로 PII 익명화를 시작하세요.