본문 바로가기

기타 디지털 소식

중앙화된 데이터 수집 없이 온디바이스 데이터 결합으로 진행하는 Federated Analytics, feat. Google AI Blog

반응형

구글 AI 블로그 아티클 번역 4편입니다~ 


연합(federated) 분석: 데이터 수집 없는 공동의 데이터 사이언스

2017년에 도입된 연합 학습으로 인해, 개발자들은 사용자가 데이터 사본만 보유하고 있다면  중앙화된 데이터 수집 없이 많은 디바이스에서 머신러닝을 훈련시킬 수 있다. 구글 앱 Gboard의  “다음 단어(next words) 및 표현(expressions) 제안”과 구글 앱 Messages의 “스마트 응답 퀄리티 향상(improving the quality of smart replies)”에도 연합 학습이 사용되었다. 이러한 성공적인 응용 프로그램에 이어 컴퓨팅 횟수나 속도와 같은, 머신러닝이 전혀 포함되지 않는 분산형 데이터에 대한 기본적인 요구를 만족시키기 위해 연합 기술이 많은 관심을 받고 있다. 물론, 이러한 기술을 통해 사용자 행동을 분석하면 더 나은 서비스를 제공할 수 있지만, 관련 데이터는 개인 정보라 안전하게 유지하는 것 또한 중요하다.

오늘 우리는 사용자 디바이스 로컬 환경에 저장된 미가공 데이터(raw data)를 분석하기 위해 데이터 사이언스 방법론을 적용한 연합 분석을 소개하려고 한다. 연합 학습과 마찬가지로 각 디바이스의 로컬 환경 데이터에 대해 계산을 실행한 후, 특정 디바이스의 데이터는 절대로 수집하지 않은 채 집계된 결과만 제품 엔지니어가 사용한다. 하지만 연합 분석은 연합 학습과 달리 데이터 사이언스 연구의 기본적인 요구를 만족해야 한다. 본 글은 연합 학습을 위해 개발된 연합 분석의 기본 방법론, 추출한 인사이트를 새로운 도메인으로 확장하는 방법, 최근 연합 기술 발전을 통해 광범위한 데이터 사이언스 연구에 대해 정확성과 개인 정보 보호가 향상된 방법을 설명한다.

연합 분석의 기원

연합 분석을 위해서는 먼저 연합 학습을 지원할 수 있어야 했다. 즉 데이터 센터에서 해당 데이터를 사용할 수 없을 경우, 엔지니어가 실제 데이터에 대한 연합 학습 모델의 품질을 어떻게 측정할 수 있는지에 대한 답이 필요했다. 이에 대한 답은 학습 파트를 제외한 연합 학습 인프라를 재사용하는 것이었다. 연합 학습 시 모델을 정의할 때는 최적화 손실 함수뿐만 아니라 모델 예측의 품질을 나타내는 메트릭을 계산하는 코드를 포함할 수 있다. 이 코드를 사용하여 핸드폰 데이터의 모델 품질을 직접 평가할 수 있는 것이다.

한 예로, Gboard 엔지니어는 사용자 핸드폰에 저장된 입력 데이터(미가공)와 비교하여 다음 단어 예측 모델의 전반적인 품질을 측정했다. 테스트용 핸드폰으로 다음 단어 예측 모델의 후보들을 다운로드하고, 모델이 예측한 단어와 실제로 입력된 단어 간의 일치도 메트릭을 로컬 환경에서 계산했다. 이후 모델의 가중치를 조정하거나 Gboard 타이핑 환경을 변경하지 않은 채 메트릭을 업로드했다. 이렇게 많은 핸드폰에서 업로드된 메트릭의 평균을 구하면 일반화할 수 있는 간단한 모델 성능 결과를 얻게 된다. 이 기술은 데이터셋 크기와 같은 기본 통계를 측정하기 위해서도 쉽게 사용된다.

노래 인식 측정을 위한 연합 분석

연합 분석은 모델 평가 이외에도 주변 장소에서 어떤 음악이 재생되고 있는지 알려주는 툴인 구글 픽셀 핸드폰의 “Now Playing”을 지원하는 데 사용된다. 핵심부터 말하면, Now Playing은 온디바이스 환경의 음악 데이터베이스를 사용하여 네트워크 연결 없이도 핸드폰 근처에서 재생 중인 음악을 식별한다. 이 아키텍처는 개인 정보 보호를 보장하는 동시에 빠르고, 오프라인에서 작동하며, 미가공 또는 가공된 오디오 데이터가 핸드폰에 저장되기 때문에 사용자에게도 편리하다. 동일한 공간에 있는 모든 핸드폰은 같은 데이터베이스를 수신하고, 데이터베이스 안에 존재하는 음악만 인식할 수 있기 때문에 데이터베이스가 적절한 노래를 보유하는 것이 중요하다.

여러 공간의 데이터베이스 품질을 측정하고 향상시키기 위해, 엔지니어는 가장 많이 인식되는 음악이 무엇인지를 파악해야 한다. 이때 활용되는 것이 연합 분석이며, 각 핸드폰마다 어떤 노래가 인식되었는지는 드러내지 않는다. 또한, 이는 디바이스 관련 사용 및 진단 정보를 구글에 전송하기로 동의한 사용자에 한해 적용 가능하다.

Now Playing은 음악을 인식할 때, 트랙 이름을 온디바이스의 Now Playing 히스토리에 기록한다. 여기서 사용자는 최근에 인식한 음악을 보고 음악 앱의 재생 목록에 추가할 수 있다. 나중에 핸드폰이 유휴 상태이고 전원과 WiFi에 연결되었다면 구글의 “연합 학습 및 분석 서버”는 수백 개의 다른 핸드폰과 함께 해당 핸드폰을 연합 분석 계산 과정에 사용한다. 각 핸드폰은 Now Playing 히스토리에서 음악 인식률을 계산하고 “보안 집계 프로토콜”을 사용하여 결과를 암호화한다. 암호화된 결과는 연합 분석 서버로 전송되며, 이곳에는 개별적으로 해독이 가능한 키가 없다. 하지만 다른 핸드폰의 암호화된 결과와 결합 시, 모든 음악을 최종 집계한 결과는 서버에 의해 해독될 수 있다.

결과적으로 구글 엔지니어는 어떤 음악을 들었는지 알려주는 각각의 핸드폰이 없어도 음악 데이터베이스를 향상시킬 수 있다(예: 데이터베이스에 정말 인기 있는 음악이 포함되어 있는지). 첫 번째 개선 단계에서는 전 세계 모든 픽셀 핸드폰에서 음악 인식률이 5% 증가했다.

안전한 집계와 함께 연합 분석 보호하기

안전한 집계를 통해 연합 분석 응용 프로그램에서 보다 강력한 개인 정보 보호 속성을 사용할 수 있다. 보안 집계 프로토콜에 대한 이해를 위해서는 간단한 음악 인식 측정 문제를 생각해보면 된다. ‘락시타’가 친구 ‘에밀리’와 ‘쩡’이 특정 음악을 얼마나 자주 들었는지 알고 싶다고 가정해보자. 에밀리는 S에밀리 시간, 쩡은 S쩡 시간을 들었지만 본인들이 음악을 감상한 시간을 락시타와 공유하고 싶지 않다. 대신, 세 명은 안전한 집계를 수행할 수 있다. 에밀리와 쩡은 서로 만나서 임의의 숫자 M 을 결정하고 락시타가 알 수 없도록 비밀을 유지한다. 쩡이 차이값 S쩡 - M을 공개하고, 에밀리는 락시타에게 합계 S에밀리 + M을 공개한다. 락시타는 M에 의해 효과적으로 가려진 임의의 두 숫자를 보게 되지만, 이를 (S에밀리 + M) + (S쩡 - M) = S에밀리 + S쩡 형식으로 합치면 에밀리와 쩡 두 사람의 음악 감상 시간을 알아낼 수 있다. 

이 접근 방식의 개인 정보 보호 속성은 더 많은 사람을 합산하거나 소수의 임의값을 추가하여 강화할 수 있다(예: 차등 개인 정보 보호 지원). Now Playing의 경우, 결과가 엔지니어에게 공개되기 전에 수백 개의 디바이스에서 각각 기록된 노래 인식률이 합산된다.

보안 집계 프로토콜을 설명하는 삽화

 

훌륭한 개인 정보 보호와 함께 학습 및 분석하기

연합 분석 방법은 활발한 연구 분야이며 이미 메트릭스 및 합산 분석 분야를 넘어섰다. 경우에 따라, 연합 학습을 통해 머신러닝 모델을 훈련하면 미가공 데이터를 디바이스에 저장한 채로 데이터에 관한 총체적인 인사이트를 얻을 수 있다. 예를 들어, Gboard 엔지니어는 일반적으로 사용자가 입력한 새로운 단어를 발견하고 이것들을 맞춤법 검사 및 입력 제안에 사용되는 사전에 추가하고 싶어 한다. 이를 위해, 핸드폰에서 “문자 수준의 RNN”을 훈련시키고 핸드폰에 입력된 단어들 중 사전에 존재하지 않는 것들만 사용한다. 입력된 단어는 핸드폰에 여전히 남아 있으며, 훈련을 마친 모델은 자주 입력되는 문자 시퀀스(새로운 단어)의 샘플을 생성하기 위해 데이터 센터에서 사용될 수 있다.

우리는 또한 연합 생성 모델을 훈련함으로써 모델이 인식하기 어려운 데이터의 패턴은 무엇인지 알아내는, 분산형 데이터셋과 관련된 기술도 개발 중이다. 추가로 사용자 수준의 개인 맞춤형 모델 훈련을 적용하여 개인 사용자에게 해당하는 고유한 정보는 인코딩하지 않도록 하는 방법을 모색하고 있다.

개인 정보 보호 원칙에 따른 구글의 책임은 사용자 데이터를 보호하는 최첨단 기술을 사용하여 데이터 센터의 차등 개인 정보 보호나 데이터 수집 과정의 개인 정보 보호 발전을 이루어내는 것이다. 구글의 분산형 데이터 분석을 위한 최초의 시스템인 RAPPOR는 2014년에 도입되었다. 그 이후로 많은 노이즈(종종 로컬 환경의 차등 개인 정보 보호를 위해 도입)에서도 효과적인 의사 결정을 할 수 있는 방법을 배워왔고, 연합 분석 역시 이러한 작업을 계속 진행할 것이다.

연합 분석 접근 방식은 아직 초기 단계이며, 다양한 데이터 사이언스 연구의 요구를 만족시키려면 더 많은 발전이 필요하다. 최근에 발표한 “연합 학습의 발전과 미해결 문제(Advances and Open Problems in Federated Learning)”라는 논문은 연합 연구에 대한 포괄적인 설문 조사를 제안했다. 또 “차등 개인 정보 보호를 통한 연합 헤비 히터 검색(Federated Heavy Hitters Discovery with Differential Privacy)”이란 논문은 데이터셋에서 가장 빈번하게 나타난 항목을 검색하기 위한 연합 분석 방법을 소개했다. 연합 분석 활용은 데이터 사이언스 연구 분야에서 분산형 데이터와 개인 정보 보호 집계를 중심으로 한 다른 접근법을 가능하게 한다. 우리는 이런 새로운 분야에 대한 기여와 확장을 기대한다. 

참고 원문: ai.googleblog.com/2020/05/federated-analytics-collaborative-data.html

728x90
반응형