DL_general

Federated learning

홍시맛쿠키 2023. 3. 6. 13:36

motive

기존 연구는 data를 data center에 올려놓고 학습을 진행

Mobile device data의 경우 data center에서 학습을 진행하게 되면, privacy issue 발생 + data수에 따라 cost가 비례적으로 증가

 

정의

다수의 client와 하나의 중앙 서버가 협력하여 데이터가 탈중앙화된 상태에서 하나의 글로벌한 model을 훈련시키는 기술.

로컬 클라이언트에서 모델을 훈련시킨 뒤 모델 파라미터들을 서버로 보내 취합해서 하나의 모델을 만든다. 

중앙 서버는 데이터를 가지고 있지 않음에도 불구하고 데이터를 가지고 모델을 훈련시킨 효과를 낼 수 있다. 

 

장점

- 네트워크를 타고 이동하지 않기 때문에 데이터 정보 유출 위험 감소

- 클라이언트와 중앙 서버간의 커뮤니케이션 코스트 감소 

 

특성

- non-IID(Independent and Identically Distributed): 각 개인(client)이 사용하는 mobile device를 기반으로 하기 때문에, 특정 개인의 data로 모집단 분포를 표현할 수 없다. 

- unbalanced: 개인별 소유하고있는 local data 수는 다르다 

- massively distributed: Smart phone과 같이 edge device를 학습시킬수 있기 때문에, 많은 client data를 다룰 수 있다.

 

알고리즘

1. 서버에 메인 모델을 준비

2.  K개의 클라이언트들 중, (효율성을 위해) 랜덤하게 m개를 고르고 서버에 있는 메인 모델을 보냄.

3. 각 클라이언트 내에서 클라이언트들이 가지고 있는 로컬 데이터를 이용해서 메인 모델을 학습.

4. 그 결과 weight를 다시 서버로 보냄

5. 그렇게 모인 weight들의 가중평균을 취해 서버의 모델을 업데이트. (가중평균 : 각 클라이언트가 가지고 있는 데이터수에 따름)

가중치 계산 방법

 

응용분야

1. 구글 키보드 추천 알고리즘 개선: Gboard

gboard에 제안된 쿼리가 표시되면, 휴대전화는 그 제안을 클릭했는지 여부에 대한 정보를 로컬에 저장. Federated learning은 기기에서 기록을 처리해서 gboard의 쿼리제안모델의 다음 반복에 대한 개선 사항을 제안.

 

2. Vehicular network 

GPS에서 감지한 위치 및 방향, 차량에 탑재된 카메라로 캡처한 이미지, 유압 센서의 압력 데이터와 같이 차량에서 장치가 생성하는 데이터는 자동차 제조업체가 지능형 내비게이션 서비스를 제공 => 이를 이용해서 train

 

3. healthcare system 

환자의 민감한 정보를 유출하지 않고 train 가능 

 

Distributed learning vs Federated learning

Distributed learning Federated learning
Data를 single machine/data center(e.g., server)에서 학습을 진행한다. (centralized network) Mobile/IoT device를 주로 다루며 local 환경에서 학습을 진행한다. (decentralized network)
Data는 data center(server)에 저장되며 data는 uniform분포를 띤다는 가정 (IID) → data shuffle 일반적으로 각 client의 local data는 서로 independent하다. (Non-IID)
Network에 연결된 모든 client는 항상 접근이 가능하며 privacy정보를 확인할 수 있다. 각 client의 privacy정보는 보호된다.
Computing cost에 초점을 둔다. Communication cost에 초점을 둔다.

 

https://at0z.tistory.com/163

 

Federated Learning 내 맘대로 정리

Federated Learning : 연합 학습 다수의 로컬 클라이언트와 하나의 중앙 서버가 협력하여 데이터가 탈중앙화된 상황에서 글로벌 모델을 학습하는 기술. 대부분의 DL/ML 모델들은, big data를 기반으로 학

at0z.tistory.com

https://velog.io/@tjdcjffff/Federated-Learning

 

Federated Learning

오늘은 Federated Learning에 간략하게 살펴보겠다.최근 Mobile device가 점차 증가함에 따라, Mobile device에 딥러닝을 결합한 application이 현재 개발 중에 있습니다. Mobile device의 예시는 다음과 같습니다. Se

velog.io