[논문 리뷰] Federated Learning: Challenges, Methods, and Future Directions - 1편

이우준·2021년 7월 20일
0

Federated_learning

목록 보기
5/5

Abstract

Federated learning (FL)은 data를 local에 보관하는 동시에 원격 기기(e.g. 핸드폰)나 분리된 data center(e.g. 병원)에 걸쳐서 statistical model을 학습하는 것을 포함한다. 이질적이고 잠재적으로 거대한 network에서의 학습은 기존의 large-scale ML이나 distributed optimization, privacy-preserving data analysis를 위한 접근 방식에서 벗어난 새로운 challenge들을 야기한다.

본 논문에서는 FL의 독특한 특징과 도전 과제에 대하여 논의하고, 현재의 approach들에 대한 전반적인 overview와 future work의 방향성에 대해 소개한다.

Introduction

핸드폰이나 wearable 기기 등의 computing 성능이 크게 증가하고, 개인 정보 전송에 대한 우려가 커짐에 따라 data를 local에 저장하고 network computation을 edge로 보내는 것이 점차 각광받고 있다.

Edge computing의 개념은 새로운 것이 아니다. 사실 분산된 low-powered 기기들에 걸쳐 simple query들을 계산하는 것은 sensor network에서의 query processing이나 edge computing, fog computing의 관점에서 수십년 간 연구되어 온 분야이다. 또한 최근의 연구에서는 중앙에서 ML model을 학습시켜, local에서 저장하고 serving하는 방법들이 고려되었다. 예를 들면 이는 mobile user modeling, personalization에서 보편적인 approach이다.

하지만 분산 네트워크에 포함된 device들의 저장 공간이나 계산 처리 능력이 향상됨에 따라 각 device에 있는 좋은 local resource들을 이용하는 것이 가능해졌다. 이로 인해 remote device에서 직접 statistical model을 학습하는 것을 탐색하는 FL에 대한 관심이 커지고 있다.

FL setting에서 학습하는 것은 기존의 distributed environments와는 상당히 다른데, privacy와 large-scale ML, distributed optimization의 분야에서의 근본적인 발전이 요구되고 ML 및 system과 같은 다양한 분야의 교점에 대한 새로운 질문이 제시되기 때문이다.

한편, 논문에서 제시하는 FL의 표준 application은 다음과 같다.

  • Smart phones
    수많은 휴대전화에 걸쳐 동시에 학습을 진행함으로서, statistical model은 next-word prediction이나 face detection, voice recognition과 같은 application을 강화할 수 있다. 하지만 사용자들은 각자의 privacy를 보호하거나 핸드폰의 배터리 용량 혹은 제한된 BW를 절약하기 위해 그들의 data를 공유하려고 하지 않을 것이다. 이때, FL은 개인 정보의 유출이나 user experience를 저하시키는 것 없이 스마트폰에서 predictive feature를 사용할 수 있게 만드는 잠재력을 가지고 있다.

  • Organizations
    기관 또는 조직은 FL의 맥락에서 device라고 볼 수 있다. 예를 들어, 병원은 predictive healthcare를 위한 다양한 환자 data를 포함하고 있는 조직이다. 하지만 병원은 엄격한 개인 정보 보호 관행에 따라 운영되고, data를 local에 둬야 한다는 법적, 행정적, 윤리적 제약에 직면할 수 있다. FL은 다양한 기기/기관들 간 private learning을 가능하게 할 수 있고, network의 부담을 줄일 수 있기 때문에 이러한 application들에 대해 유망하다.

  • Internet of things
    IoT networks나 wearable device, smart homes 등과 같은 것들에는 data를 real-time으로 처리할 수 있는 수많은 센서가 있다. 하지만 이러한 시나리오에서 aggregate model을 만드는 것은 data의 private 특성과 각 장치의 제한된 connectivity로 인해 어려울 수 있다. FL 방식은 사용자의 개인 정보를 유지하면서 이러한 system 변화에 효과적으로 적응하는 모델을 학습하는 것에 유용하게 사용될 수 있다.

Problem Formulation

Canonical (정석적인) FL problem은 수십, 수백만개의 remote device들에 저장되어 있는 data로부터 single, global statistical model을 학습하는 것을 포함한다. 우리는 device-generated data가 local에서 저장되고 처리된다는 제약 조건 하에서, 중앙 서버와 주기적으로 중간 update 값만을 통신하여 model을 학습시키는 것이 목표이다.

특히, 다음의 objective function을 최소화하는 것이 주된 목표이다.

minwF(w),whereF(w):=k=1mpkFk(w)\min_w F(w), \quad \quad \textrm{where} \quad \quad F(w):= \sum\limits_{k=1}^m p_k F_k(w)

여기서 mm은 device의 총 개수이고, FkF_kkk번째 device에 대한 local objective function이다. 참고로 pk0p_k \geq 0이고 kpk=1\sum_k p_k = 1 이다.

Local objective function은 보통 local data에 대해 다음과 같이 정의된다.

Fk(w)=1nkjk=1nkfjk(w;xjk,yjk),wherenk:# of samples available locallyF_k(w) = \frac{1}{n_k} \sum\limits_{j_k = 1}^{n_k} f_{j_k}(w;x_{j_k}, y_{j_k}), \quad \textrm{where} \quad n_k: \textrm{\# of samples available locally}

User가 정의하는 term인 pkp_k는 각 device 간의 상대적인 impact를 결정한다. 가장 일반적인 두 가지 setting은 pk=1np_k = \frac{1}{n} 혹은 pk=nknp_k = \frac{n_k}{n} 인데, 이때 n=knkn=\sum_k n_k은 sample의 총 개수이다.

(논문에서는 위의 식을 기준점으로 잡을 것이지만, 관심있는 application에 따라 다른 objective나 modeling 방식이 적절할수도 있다.)

Core Challenges

다음으로 다룰 4개의 core challenge들은 기존에 있던 data center에서의 distributed learning setting이나 private data analyses 등의 문제들과는 구분된 federated setting을 만든다.

#1: Expensive Communication

Communication은 federated networks에서 심각한 bottleneck 중 하나다. 실제로, federated network는 매우 많은 수의 기기들로 구성되기 때문에 network에서의 communication은 local computation 보다 몇 배나 느릴 수 있다. 따라서 federated network에 속한 device가 만든 data에 model을 맞추기 위해서는, training process의 한 부분으로 반복적으로 작은 메세지나 model updates를 보내는 communication-efficient method들을 개발할 필요가 있다. (네트워크에 걸쳐 전체 dataset을 전송하는 것과는 반대)

한편, 위와 같은 setting에서 communication을 더 줄이기 위해서는 다음의 두 가지 관점을 고려해볼 필요가 있다.

  • Communication round의 총 횟수 줄이기
  • 각 round마다 전송하는 message의 size 줄이기

#2: Systems Heterogeneity

Federated network에 있는 각 device의 저장 공간, 계산 및 통신 능력은 hardware (CPU, memory)나 network connectivity (3G, 4G, 5G, wifi), power (battery level) 등의 변화에 따라 전부 달라진다. 추가로 network size와 각 기기에 대한 systems-related constraints는 일반적으로, 한번에 작은 비율의 devices만 활성화 되도록 만든다. 이때 각 device는 reliable 하지 않을 수 있고, 에너지 혹은 연결에 대한 제약으로 인해 반복되는 동안 활성화된 장치가 끊어지는 경우가 심심치 않게 일어난다.

시스템 차원에서의 이러한 특성들은 straggler (버려진 원소) mitigation (완화)과 fault tolerance 같은 과제를 크게 악화시킨다. 그러므로 꼭 발전 및 분석되어야 할 FL method는 다음과 같다.

  • 적은 수의 participation에 대한 예상
  • 이질적인 hardware의 허용 (tolerate)
  • 네트워크에서 drop 된 device들에 대한 강인함 (robust)

#3: Statistical Heterogeneity

Device는 network에 걸쳐서 non-identically distributed 방식으로 data를 만들고 수집한다. (예를 들어, mobile phone user들은 next word prediction task의 맥락에서 다양한 language를 사용한다.) 게다가 기기들 사이 data 개수는 상당히 다를 수 있으며, 기기와 관련된 분포 간의 관계를 알아내는 숨겨진 (underlying) 구조가 존재할 수 있다.

이러한 data 생성 paradigm은 distributed optimization에서 자주 사용되는 IID 가정을 위배하고, straggler가 (동떨어진 성분을 의미하는 듯) 발생할 확률을 높이며 modeling, analysis, evaluation의 관점에서 complexity를 증가시킬 수 있다. 실제로 본래 정석적인 FL problem의 목적은 single global model을 학습시키는 것이지만, multi-task learning frameworks를 이용하여 동시에 다른 local model을 학습시키는 것과 같은 다른 방법들도 존재한다.

또한 이와 관련하여 FL에 대한 leading approach와 meta-learning 사이에 밀접한 연관이 있다. Multi-task와 meta-learning 관점에서 personalized or device-specific modeling은 모두 가능한데, 이는 data의 통계적 이질성(heterogeneity)을 다루는 보다 자연스러운 접근 방법이다.

#4: Privacy Concerns

마지막으로, privacy는 종종 FL application에서 주된 고려 사항 중 하나다. FL은 raw data를 공유하는 것 대신에 gradient information과 같은 model updates를 공유함으로써 각 device에서 생성된 data를 보호하는 영역을 한 단계 발전시켰다. 하지만 training process 내내 model updates를 통신하면, 다른 집단 (third party)이나 중앙 서버에 중요한 정보를 노출시킬 수 있다.

비록 최근의 연구에서는 FL의 privacy를 강화하기 위해 secure multiparty computation이나 differential privacy와 같은 tool을 사용하기도 하지만, 이러한 접근 방식은 model의 성능이나 system efficiency를 떨어트린다. 이에 이론적으로나 경험적으로나 이러한 trade-off들에 대해 이해하고 균형을 맞추는 것은 private한 FL system을 구현하는 것에 있어서 상당한 도전 과제이다.

Survey of Related and Current Work

FL에서 다루는 과제(challenge)들은 언뜻 보기에 privacy나 large-scale ML, distributed optimization과 같은 영역에서의 기존 문제들과 비슷하다. 예를 들어서 ML, 최적화, 신호 처리 분야에서 expensive communication을 해결하기 위한 방법은 수없이 제안되었다.

하지만 이러한 방법들로는 federated network의 규모를 완벽하게 다룰 수 없으며, system과 statistical에 대한 heterogeneity의 관점에서는 더욱 그렇다. 비슷한 맥락에서 privacy도 많은 ML application 관점에서 중요한 요소 중 하나가 맞지만, FL을 위한 privacy 보호 method는 data의 통계적 변화와 수많은 네트워크 전반에 걸려있는 system 제약들로 인하여 더욱 다루기 어려운 문제이다. (기존 방법의 적용이 힘듦)

본 part에서는 기존의 연구 결과와 FL에 초점을 맞춘 최근 연구들에 대한 논의를 바탕으로 위에서 제시되었던 도전 과제들에 대해 더 자세히 알아볼 것이다.

(2편에서 이어질 예정입니다.)

Reference

Li, Tian, et al. "Federated learning: Challenges, methods, and future directions." IEEE Signal Processing Magazine 37.3 (2020): 50-60.

0개의 댓글