본문 바로가기

ML & DL 이야기

연합학습(Federated Learning) 이란?

.

안녕하세요, 에이치비킴 입니다.

 

 연합학습에 대해서 본격적으로 살펴보기 전에, 연합학습이 최근 각광받고 있는 이유가 무엇인지 알아보아야겠죠. 연합학습은, 기존의 머신러닝 기법들과는 달리 '데이터의 익명성이 보장된다.' 라는 강점을 갖고 있습니다. 기존의 머신러닝에서는 모바일 디바이스 또는 센서 등의 장치에서 얻은 정보를 하나의 중앙 서버로 취합하여 학습이 진행됩니다.

 

 하지만 연합학습에서는 각각의 장치가 갖고 있는 데이터를 중앙 서버로 보내지 않고, 각각의 장치에서 학습이 진행됩니다. 학습을 통해 도출된 '가중치들만' 중앙 서버로 전송이 되어, 중앙 서버는 이 가중치들을 하나의 가중치로 취합하는 최종 역할을 담당합니다.

 

 중앙서버로 '가중치들만' 중앙 서버로 전송이 됨으로써, 각각의 장치가 갖고 있는 로컬 데이터가 학습을 위해 중앙 서버로 전송되지 않아도 되는 것입니다.

 

그림 1. 연합학습 프로토콜 1

 

 위 방식으로 중앙 서버에서 취합된 가중치를 그 다음 라운드에서 각각의 장치들에게 내려줌으로써, 다음 라운드에서 각각의 장치들이 이 가중치를 사용하여 각각의 데이터에 대한 학습이 이루어집니다. 이러한 연속적이고 반복적인 방식을 우리는 '연합학습' 이라고 칭합니다.

 

그림 2. 연합학습 프로토콜 2

 

 연합학습에서의 중앙 서버의 역할과, 최근 어떠한 연구들이 활발히 이루어지는 지에 대하여 살펴보고 마무리하겠습니다.

 

 위 그림에서 FL Server, 즉 중앙 서버에서는 각 장치에서의 가중치들을 하나의 가중치로 취합하는 역할을 하는데요. 가중치를 하나로 취합하는 방법은 간단합니다. 바로 모든 가중치들의 평균값을 최종 가중치로 사용을 하는 것입니다. (그림 상에서는 표준 편차를 계산한다고 부연 설명이 달려있지만, 개인적인 연구를 진행하며 추가한 내용이므로 생각하지 않으셔도 괜찮습니다. 관련 내용이 궁금하시다면 다음 링크를 참고해주세요.)

 

페이지로 이동

 

Reducing Model Cost Based on the Weights of Each Layer for Federated Learning Clustering

Federated Learning (FL) has a different learning framework from existing machine learning, which had to centralize training data. Federated learning has the advantage of protecting privacy because learning is performed on each client device rather than the

ieeexplore.ieee.org

 

 이러한 연합학습을 통신 분야에 활용해서 통신 속도 측면에서 이득을 보기 위한 연구가 활발하게 이루어지고 있으며,

무선통신에서의 변조기술을 탐지하기 위해서 연합학습을 활용하는 연구 및 중앙 서버에서의 평균화로 인하여 이상치가 포함되어 있을 수 있기 때문에, 평균화가 아닌 다른 방식을 통해서 최종 가중치를 도출해내고자 하는 연구 또한 이루어지고 있습니다.

 

 이론 이해와 함께 직접 구현해보면 더 큰 도움이 될 것이기 때문에, TFF 프레임워크 구현에 도움을 드릴 페이지를 공유합니다.

 

페이지로 이동

 

TensorFlow Federated

분산 데이터에 대한 기계 학습 및 기타 계산을위한 오픈 소스 프레임 워크입니다.

www.tensorflow.org

 

기존 머신러닝 기법에 비하여 비교적 최근에 연구되는 분야이기 때문에, 궁금하신 사항이나 의견 공유를 위해 댓글에 의견 남겨주시면 감사하겠습니다.

 

감사합니다.

'ML & DL 이야기' 카테고리의 다른 글

L1 norm, L2 norm 란?  (0) 2022.03.14