Differential Privacy (3. Membership Attacks)
본문은 James Honaker과 Salil Vadhan의 Computer Science 208: Applied Privacy for Data Science 강의의 Membership & Other Attacks를요약한 글입니다.
머신러닝 모델에 대한 privacy 침해의 한 종류로서 “구성원 공격(membership attack)”이 있습니다. 이는 공격자 집단이 특정 개인의 데이터 기록에 접근하여 해당 모델의 훈련용 데이터셋에 포함되어 있는지 여부를 알아내는 공격 수단입니다. 공격자 집단은 크게 3가지 정보를 이용하여 프라이버시를 침해하는데, 각각은 메커니즘 출력값, 특정 개인(아래 그림에서 Alice)의 데이터, 그리고 모집단에 대한 보조 정보로 정리됩니다. 모집단에 대한 정보는 공공에 published된 경우가 많기 때문에, 공격자가 쉽게 얻을 수 있을 것입니다.
구성원 공격은 전 게놈 연관분석(GWAS, Genome-Wide Association Studies)과도 관련이 있습니다. Homer et al. 08'의 논문에서는 SNP의 빈도를 산출하여 특정 개인이 질병이 있는 그룹 내에 속하는지 여부를 특별 진단할 수 있음을 언급했습니다. 또한, 개인의 프라이버시를 침해하지 않고 집계된 GWAS 데이터를 공개할 수 있는 방법을 제안하였으며, 특정 환자의 GWAS 데이터를 보호하기 위하여 차등 개인정보 보호(differential privacy) 개념을 활용하였습니다.
위의 그림처럼, 만약 표본 평균에 약간의 노이즈가 섞인 값을 산출해주는 메커니즘이 있다면 공격자는 메커니즘의 아웃풋인 a, 모집단의 정보인 p, 그리고 특정 개인(Alice)의 데이터를 이용해 Alice가 데이터셋 내에 있는지/없는지를 결정할 것입니다. 이때 노이즈들은 서로 독립이거나 unbiased일 필요는 없습니다. 관심있는 노이즈의 범위는 표본오차보다는 큰 범위이며, 이 모델에서는 모집단 정보인 p가 U[0,1]에서 추출된 IID 확률변수라 가정하였습니다. (p가 사전에 알려진 값이라면, 공격자의 판단 기준이 없어지게 되어 공격을 예방할 수 있기 때문)
Dwork는 그의 논문(2015, Preserving validity in adaptive data analysis)에서 구성원 공격과 관련된 이론을 발표하였습니다. 위의 식에서 d는 데이터셋의 속성 개수를 의미하며, 알파는 메커니즘 아웃풋에 대한 노이즈를 의미합니다. 첫번째 식이 의미하는 것은 특정 개인이 실제로 데이터셋 내에 있을 때 공격자가 IN이라고 옳게 판단할 확률이며, 두번째 식은 실제 없지만 공격자가 IN이라고 잘못 판단할 확률을 의미합니다. 즉, false positive 확률을 특정 상수 델타 이하로 bound 시켰을 때, true positive 확률을 n에 관한 함수 이상으로 표현할 수 있는 공격자 A가 존재함을 의미합니다. 이 정리로부터, 데이터셋 내 구성원들의 IN/OUT 여부를 옳게 판단할 확률을 계산할 수 있으며, 최대 (대략적으로) n-square 만큼의 평균을 안전하게 산출할 수 있음을 확인할 수 있습니다.
이제, 공격자가 어떠한 기준으로 특정 개인의 IN/OUT 여부를 판단하는지 살펴보겠습니다. 여기서, y는 특정 개인의 데이터를 의미합니다. 공격자는 y-p와 a-p의 내적값이 특정 상수 T보다 크면 IN, 작으면 OUT이라는 판단을 하게 되는데, 여기서 T는 p, a가 주어졌을 때 false positve의 확률(from Dwork’s theorem)이 정확히 델타가 되도록 하는 상수입니다. 위 식의 직관적인 의미는 y와 a의 상관관계, p와 a의 상관관계를 비교함으로써 특정 개인의 데이터가 데이터셋으로부터의 산출값과 관련이 있는지, 모집단과 관련이 있는지를 비교조사하고자 함을 의미합니다.
위의 그림은 재구성 공격과 구성원 공격의 유의미한 노이즈 범위를 나타낸 것입니다. 한편, 특정 개인이 데이터셋 내에 있는지/없는지를 결정하는 공격 외에도 특정 개인의 민감 속성을 알아내는 다른 종류의 구성원 공격도 존재합니다. 이러한 공격은 재구성 공격(reconstruction attack)과 비슷하면서도 차이점이 존재합니다. 구성원 공격은 개인이 데이터셋 내에 없을 때에도 상관관계를 이용해 적용될 수 있지만, 재구성 공격의 경우 개인이 데이터셋 내에 있어야 적용 가능하며 민감 특성 데이터가 상관성이 없을 때에도 적용할 수 있다는 면에서 차이가 있습니다.
DP의 궁극적인 목적은 데이터셋의 utility 수준을 지키면서도, 개인의 privacy를 보호하고자 함에 있습니다. utility라 함은 데이터셋을 바탕으로 여러가지 통계분석을 실행할 수 있음을 의미합니다. 따라서, 데이터셋에 행해질 수 있는 여러 종류의 공격 메커니즘에 대비할 수 있도록 관련 논의들이 활발하게 이루어져야 할 필요가 있습니다.