본문 바로가기
TechStudy/SyntheticData

합성데이터 사례: 혈당 측정정보

[1] 사전 준비

테스트 분석용 및 교육 실습용: 혈당측정시 기기간 차이가 있는지 파악

(혈당 측정정보 = 개인정보 -> 합성데이터 필요)

 

데이터 공급자: (주)파밀리데이터; 헬스케어 빅데이터 플랫폼 기업

-> 다양한 기기를 통해 측정된 700건의 정보를 합성데이터로 생성하여 제공

 

합성데이터 생성기관: (주)AIT 스토리, 인하대 연구팀(김승환교수)

-> 혈당정보 데이터 처리 위탁받아 합성데이터로 직접 생성

 

합성데이터 수요자: (주)아이센스, (주)st바이오스 센서, 한국인터넷진흥원(공동 소유권자로서 교육 실습 등 목적에 활용)

-> 합성데이터를 통해 IoT 헬스케어기기 정밀 보정을 위한 통계 분석에 활용

 

 

 

 

[원본 특성 검토]

 

【데이터 명세】 
▸ 보건의료 분야, 정형데이터(CSV)
▸ 다양한 IoT 헬스케어기기로 측정한 개인 헬스케어 관련 수치 입력·측정 정보 
▸ 속성 : 회원ID, 측정시간, 나이, 혈당, 식사 시간, 식사량, 측정 기기종류 등 (700건)

원본 데이터 컬럼 명세서

개인정보 포함 여부: 회원 ID, 나이, 혈당 정보로 개인 식별 가능 -> 개인정보로 판단됨

 

 

 

[관련 법률 검토]

공급자-수요자 간 공동연구 협약,  「개인정보 보호법」에 따라 개인정보 처리 위탁계약((주)파밀리데이터-AIT스토리·인하대학교 연구팀), 내부 규정에 따라 외부 반출 않고 기관 내부망에서 처리

 

 

 

 

 

 

 

[2] 합성데이터 생성

 

전처리: 필요한 부분만 두고, 불필요 부분은 삭제함. 그리고 전체에서 극단값 해당부분 검토하여 삭제

원본 데이터 전처리 수행 양상

 

멤버ID: 개인식별자, 변수 간 관계가 없으므로 삭제

 

 

모델 결정: 다양한 모델로 생성하여 비교한 후, 유용성과 안전성이 높은 결과를 낸 생성모델 선택

사용한 방법들: 가우스 혼합모델(통계:모수적 기법), synthpop-CART(통계:비모수적 기법), CTGAN(AI: 딥러닝)

해당 모델들을 python을 통해 생성한 합성데이터 예시

각각의 모델은 원본과 같은 수로 생성된 셋 A와 2배수로 생성 후 식별 위험도 높은 것을 삭제하여 원본과 같은 수로 줄여 생성한 셋 B 둘 다 적용 -> 각 모델별 A,B 셋이 나오므로 총 6개의 합성데이터 셋 생성

 

 

 

 

 

 

 

[3] 유용성, 안전성 검증

검증 방법:안전성 -> 유용성 순서 검증(안전성 충족된 것 중에서 유용성 높은 것을 선택)

임계값: 임계값 산출방법 (안전성 우선) 사용

 

연결 위험도 측정의 경우, 준식별자, 민감한 정보 속성 설정 필요

준식별자 -> 나이

민감정보 -> 혈당 (고혈당, 정상, 저혈당 변수 추가)

로 설정

 

합성데이터 셋별 안전성, 유용성 측정 결과 (임계값)

 

[안전성 검증]: 2-A를 제외하고 모두 만족

식별위험도: 임계값이 0.15인데 2-A의 값이 0.452로 임계값보다 크므로 식별 위험도 불안전

* 임계값 0.17 = 원본 데이터의 최대 17%가 중복하여 존

 

 

 

[유용성 검증]: 2-A를 제외한 나머지 대상의 경우는 각 모델의 B셋이지만, 그중 pMSE가 가장 낮은 1-B, 2-B 선택

* 구별 불가능성: 원본과 합성데이터 구분하는 ML모형이 구분할 확률. 생성-수요자가 가장 중요하게 고려한 유용성 지표

 

 

 

 

 

 

 

 

 

 

[4] 활용

객관적 검증을 위해 외부전문가를 통해 적정성 심의를 받음(외부전문가 6인; 법률1인, 데이터 산업 4인, 정보보호 1인) 

 

적정성 심의 주요 의견

 

 

 

 

 

 

결과: 데이터 생성 및 검증 과정이 적절하다 판단

 

 

 

 

 

 

 

 

 

728x90
반응형