LLM 코드에서 민감 정보 유출 방지를 위한 머신 언러닝

LLM 코드에서 민감 정보 유출 방지를 위한 머신 언러닝
안내: 본 포스트의 한글 요약 및 분석 리포트는 AI 기술을 통해 자동 생성되었습니다. 정보의 정확성을 위해 하단의 [원본 논문 뷰어] 또는 ArXiv 원문을 반드시 참조하시기 바랍니다.

초록

본 논문은 코드 생성용 대형 언어 모델(LLMs4Code)의 개인정보 기억 문제를 해결하기 위해 머신 언러닝(기계 삭제) 기법을 적용한 최초의 실증 연구이다. 합성된 5천 건의 개인정보 ‘포겟 셋’과 5천 건의 일반 코드 ‘리테인 셋’으로 구성된 벤치마크를 구축하고, GA, GA+GD, GA+KL 세 가지 삭제 알고리즘을 AIXCoder‑7B, CodeLlama‑7B, CodeQwen‑7B에 적용하였다. 실험 결과, 직접적인 메모리 기반 유출 비율이 평균 50 % 이상 감소하면서도 코드 생성 정확도(pass@1)는 91 % 이상 유지되는 것을 확인했다. 그러나 삭제 후 모델은 민감 정보를 직접적으로는 숨기지만, 암시적·간접적 유출 형태로 전환되는 현상이 관찰되어, 향후 직접·간접 유출을 동시에 차단할 수 있는 기술 개발 필요성이 강조된다.

상세 분석

본 연구는 LLMs4Code가 훈련 데이터에 포함된 개인정보를 그대로 기억하고 재생산하는 ‘메모리화 문제’를 머신 언러닝(MU)으로 완화하려는 시도를 체계적으로 검증한다. 먼저, 개인정보 유형(계정, 주소, 금융, 교육, 연락처, 보안, 정치 등)을 포함한 5천 개의 가상 이력서를 ‘포겟 셋’으로 구성하고, 동일 규모의 일반 코드 샘플을 ‘리테인 셋’으로 설정해 두 가지 목표(민감 정보 삭제와 코드 성능 유지)를 동시에 평가할 수 있는 벤치마크를 설계했다.

세 가지 MU 알고리즘은 각각 (1) Gradient Ascent(GA) 기반의 파라미터 역전, (2) GA에 Gradient Descent를 결합해 잔여 성능 손실을 최소화하는 GA+GD, (3) KL‑다이버전스 기반 정규화를 추가한 GA+KL이다. 이들을 AIXCoder‑7B, CodeLlama‑7B, CodeQwen‑7B에 적용한 결과, 직접 유출 비율이 평균 52 % 감소했으며, 특히 AIXCoder‑7B는 58 %까지 감소했다. 코드 생성 능력은 pass@1 기준으로 91 %~94 % 수준을 유지했으며, 이는 기존 재학습 방식 대비 연산 비용이 크게 절감된 점에서 실용적이다.

흥미로운 점은 삭제 후 모델이 민감 정보를 ‘플레이스홀더’(예: 변수명, 약어)로 대체하거나, 해당 필드를 완전히 생략하는 등 다양한 회피 전략을 학습한다는 것이다. 이러한 전략은 직접적인 문자열 매칭을 통한 추출 공격을 방어하지만, 모델이 여전히 해당 정보와 연관된 맥락을 내포하고 있어, 질문을 변형하거나 연관된 코드 조각을 요청하면 간접적으로 정보를 노출한다(간접 유출). 실험에서는 간접 유출 사례가 직접 유출 대비 1.8배 증가했으며, 이는 현재 MU 기법이 ‘정보 자체’를 삭제하는 데는 효과적이지만, ‘정보와 연관된 지식 구조’를 완전히 제거하지 못한다는 한계를 드러낸다.

또한, 각 모델과 알고리즘별로 삭제 효율과 성능 유지 사이의 트레이드오프가 존재한다. GA+KL은 KL‑다이버전스 제어 덕분에 성능 저하가 가장 적었지만, 직접 유출 감소율은 GA에 비해 약간 낮았다. 반면 GA+GD는 성능 보존에 강점이 있으나, 일부 고빈도 개인정보(예: 이메일, 전화번호)의 완전 삭제에 한계가 있었다. 이러한 결과는 MU 기법 선택 시 목표에 따라 알고리즘을 맞춤 적용해야 함을 시사한다.

마지막으로, 연구는 공개 데이터와 코드를 Zenodo에 제공함으로써 재현성을 확보하고, 향후 연구자들이 다양한 모델·데이터셋에 MU를 적용해 비교·확장할 수 있는 기반을 마련했다. 전체적으로, 본 논문은 LLMs4Code에서 개인정보 보호를 위한 실용적인 해결책을 제시함과 동시에, 직접·간접 유출을 동시에 차단할 수 있는 새로운 연구 방향을 제시한다.


댓글 및 학술 토론

Loading comments...

의견 남기기