
- 연합학습은 2017년 구글 연구팀에서 제안한 분산 기계학습 방법론 중 하나로, 이 방법은 클라이언트가 보유한 데이터를 중앙 서버로 직접 공유하지 않고, 로컬에서 학습한 결과(i.e., gradient or model weight)만을 서버에 전달함으로써 기계학습을 수행합니다.
- 모바일 기기, IoT 장치에서 수집되는 실제 데이터는 대부분이 라벨이 없으며, 라벨링 작업은 시간과 비용이 많이 소요됩니다. 예를 들어, 의료 영상 하나를 라벨링하는 데 전문의의 시간과 비용이 들고, 모바일 사용자의 개인 데이터는 프라이버시 문제로 모두 라벨링하기 어렵습니다. 또한, 분산 환경에서 데이터를 주고받는 통신 비용이 상당합니다. 배터리와 대역폭이 제한된 모바일 기기, IoT 장치에서는 효율적인 통신이 필수적입니다. 추가로, 각 클라이언트의 데이터 분포가 불균형하여 모델의 일반화 성능이 저하되는 문제가 있습니다. 예를 들어, 한 사용자는 고양이 사진만 가지고 있고 다른 사용자는 강아지 사진만 가지고 있을 수 있습니다.
- 본 프로젝트는 이러한 문제를 해결하는 효율적인 연합학습 기법을 제안하고자 합니다. 현재 고려 중인 방법은 데이터 샘플의 정보력(informative)에 기반한 샘플링을 통해 모든 데이터를 라벨링하는 대신, 인공지능 모델이 가장 많이 배울 수 있는 핵심적인 데이터만 선별적으로 라벨링합니다. 이 과정에서 데이터의 불확실성 등 다양한 요소를 고려하는 알고리즘을 제안합니다. 또한, 전체 데이터셋의 특성을 유지하면서도 크기를 줄인 대표 데이터셋(core set)을 구성합니다. 이를 통해 모델 성능은 유지하면서 라벨링 비용을 절감하고, 통신량을 감소시킬 수 있습니다.
무엇을 배울 수 있나요?
- 분산 머신러닝 환경의 문제를 해결하는 알고리즘 설계 및 구현, 실험 수행, 결과 분석에 직접 참여하게 됩니다.
- 다양한 데이터셋을 사용한 실험과 성능 평가를 통해 제안된 방법의 효과를 검증하는 과정을 경험할 수 있습니다.
- 기술적 논의, 시스템 설계, 실험 프로토콜, 결과 해석 및 논문 작성 등 연구 전반에 참여합니다.
다음과 같은 학생을 선호합니다.
- 인턴십 기간 동안 프로젝트에 전념할 수 있는 학생.
- 머신러닝 및 딥러닝 기초가 탄탄한 학생.