팀 구성
- 20161640 백승진
- 20171603 황순규
- 20171613 박재현
-
-
연합학습은 일반적으로 모든 데이터를 서버로 모아, AI를 학습하는 방식과 달리, 사용자가 직접 사용하는 스마트폰에서 데이터를 처리하고 모델을 강화하고 이 모델을 한 곳에 모아 더 정교한 모델을 만들어 다시 배포하는 방식이다.
-
이는 상대적으로 적은 데이터로 최적화한 AI 모델을 개발할 수 있다. 방대한 데이터를 저장하는 스토리지나 이런 데이터를 처리하기 위한 고성능 프로세서를 사용자 개인 디바이스로 분산했으며, 필요 사항만을 공유해 최적화한 모델을 다시 배포하는 만큼 트래픽에 대한 부담도 적다. 또 개인정보 침해 가능성 역시 상대적으로 적어 제도적 장벽 역시 쉽게 넘을 수 있다.
-
-
- Docker Container를 활용하여 논리적인 FL 환경 구축
- Rasberripy와 Jetson nano를 활용하여 물리적인 FL 환경 구축
- 서버와 클라이언트들의 CPU, 메모리, 디스크 용량, GPU 사용량 등의 데이터를 수집 도구인 telegraf를 이용해 시계열DB인 influxDB에 저장 후 Grafana를 이용해 모니터링 시스템 구축
- 정형화된 MNIST 데이터를 활용하여 기존 인공지능 방식과 물리적으로 나눈 엣지 단말들에서 연합학습을 이용한 방식은 아래 그래프처럼 거의 근접한 성능을 보이는 것을 확인할 수 있다.
- 비정형화된 위상 영상 데이터를 활용하여 Segmentation을 진행했을 때, 학습하는 데이터를 n개로 나누어 각 노드에서 연합학습을 진행하면 기존 인공지능 방식보다 성능이 못 미치는 것을 확인할 수 있다. 이를 해결하기 위해서는 데이터를 노드의 수로 나누지 않고 같은 양의 데이터에 시드값을 다르게 주어 연합학습을 진행한다면 앙상블하는 효과를 얻어 기존 인공지능 방식에 거의 근접하거나 좀 더 좋은 성능을 보일 수 있을 것이다.