연합 학습 코호트(Federated Learning of Cohorts)는 참여 데이터 소스를 훈련 전에 코호트 또는 그룹으로 조직하여 연합 학습을 확장하는 기계 학습 패러다임이다. 표준 연합 학습에서는 중앙 서버가 로컬 데이터를 보유한 여러 클라이언트의 모델 업데이트를 조정하며, 원시 데이터 자체는 전송하지 않는다. 연합 학습 코호트는 클라이언트가 데이터 유사성, 통계적 속성 또는 기타 기준에 따라 클러스터링되고 모델 훈련이 이러한 코호트 내부 또는 코호트 간에 이루어지는 코호팅 계층을 추가한다. 이 접근 방식은 모델 개인화를 개선하고 통신 오버헤드를 줄이며 데이터 노출을 코호트 내부로만 제한하여 프라이버시를 강화하는 것을 목표로 한다.
이 개념은 Machine learning 및 Artificial intelligence의 기초 작업, 특히 분산 데이터에서 모델을 훈련해야 하는 필요성에 기반을 둔다. 전통적인 중앙 집중식 훈련은 모든 데이터를 단일 위치에 집계해야 하므로 프라이버시 문제와 물류적 과제가 발생한다. 2016년 Google DeepMind 및 Google Cloud (당시 Google의 일부) 연구자들이 도입한 연합 학습은 원시 데이터 대신 모델 업데이트를 공유할 수 있도록 하여 이 문제를 해결했다. 연합 학습 코호트는 훈련 중에 정적이거나 동적으로 조정될 수 있는 중간 그룹화 단계를 도입하여 이를 개선한다.
동기 및 이점
연합 학습 코호트의 주요 동기는 분산 데이터의 이질성을 해결하는 것이다. 많은 실제 시나리오에서 서로 다른 클라이언트의 데이터는 동일하게 분포되지 않는다. 예를 들어, 다른 병원의 의료 기록은 환자 인구 통계, 장비 또는 코딩 관행에서 다를 수 있다. 이러한 데이터에 대해 단일 글로벌 모델을 훈련하면 특정 하위 그룹에 대해 성능이 저하될 수 있다. 유사한 데이터 특성을 공유하는 코호트로 클라이언트를 그룹화하면 모델을 각 코호트에 맞게 조정하여 정확성과 관련성을 향상시킬 수 있다.
또 다른 이점은 통신 효율성이다. 표준 연합 학습에서는 모든 클라이언트가 각 라운드에서 중앙 서버와 통신한다. 코호트를 사용하면 업데이트가 먼저 코호트 내에서 집계되어 중앙 서버로 전송되는 메시지 수를 줄일 수 있다. 이는 모바일 장치나 엣지 컴퓨팅 시스템과 같이 대역폭이 제한된 환경에서 특히 유용하다. 또한 코호팅은 프라이버시를 강화할 수 있다. 클라이언트가 신뢰할 수 있는 코호트 내에서만 업데이트를 공유하면 중앙 서버의 추론 공격 위험이 줄어들지만, 중앙 서버는 여전히 전체 프로세스를 조정한다.
기술 구현
연합 학습 코호트는 여러 방식으로 구현될 수 있다. 일반적인 접근 방식 중 하나는 지리적 지역, 장치 유형 또는 사용자 인구 통계와 같은 메타데이터를 기반으로 코호트를 정의하는 것이다. 예를 들어, 사용자 텍스트로 훈련된 Large language model은 언어나 방언별로 사용자를 그룹화할 수 있다. 또 다른 접근 방식은 그래디언트 또는 모델 업데이트 자체를 기반으로 코호트를 형성하기 위해 클러스터링 알고리즘을 사용하는 것이다. K-Means Clustering 또는 계층적 클러스터링과 같은 기술을 로컬 모델 매개변수에 적용하여 자연스러운 그룹을 식별할 수 있다.
훈련 중에 각 코호트는 자체 모델 인스턴스를 가질 수 있으며, 이는 구성원의 로컬 데이터를 사용하여 업데이트된다. 주기적으로 코호트 모델은 집계되어 글로벌 모델을 형성한 다음 추가 개선을 위해 코호트에 재배포될 수 있다. 이는 추가 계층이 있는 연합 평균화와 유사하다. 일부 구현은 2계층 아키텍처를 사용한다. 글로벌 서버는 코호트 수준 업데이트를 조정하고 각 코호트는 클라이언트를 관리하는 로컬 집계기를 가진다. 이는 중앙 서버의 부하를 줄이고 코호트 내에서 더 빈번한 업데이트를 허용한다.
응용 분야
연합 학습 코호트는 의료, 금융 및 소비자 기술 분야에서 응용되고 있다. 의료에서 병원은 환자 기록을 공유하지 않고 진단 모델을 훈련하기 위해 협력할 수 있다. 유사한 환자 집단(예: 소아과 대 성인)을 가진 병원을 코호팅함으로써 각 그룹에 맞게 모델을 전문화할 수 있다. 예를 들어, 당뇨병성 망막병증을 감지하는 Neural network는 유사한 영상 장비를 가진 클리닉의 코호트로 훈련되어 다양한 환경에서 정확성을 향상시킬 수 있다.
금융에서 은행은 코호팅을 사용하여 지역 또는 고객 세그먼트별 사기 패턴을 감지할 수 있다. 여러 은행의 거래 데이터로 훈련된 Deep learning 모델은 국가별로 그룹화되어 고객 프라이버시를 보존하면서 지역 사기 추세를 식별할 수 있다. 소비자 기술에서 Apple 및 Samsung Electronics와 같은 기업은 키보드 예측이나 사진 분류와 같은 온디바이스 개인화를 위해 연합 학습을 탐구했다. 언어나 사용 패턴별로 사용자를 코호팅하면 이러한 모델이 개인 요구에 더 잘 반응할 수 있다.
과제 및 한계
장점에도 불구하고 연합 학습 코호트는 여러 과제에 직면한다. 최적의 코호트 수와 구성을 결정하는 것은 간단하지 않다. 코호트가 너무 적으면 이질성을 포착하지 못할 수 있고, 너무 많으면 과적합 또는 통신 비용 증가로 이어질 수 있다. 그룹이 시간에 따라 변하는 동적 코호팅은 복잡성을 추가하며 구성원 변경을 처리하기 위한 견고한 알고리즘이 필요하다.
프라이버시는 코호팅으로 완전히 해결되지 않는다. 원시 데이터는 로컬에 유지되지만 모델 업데이트는 개별 데이터 포인트에 대한 정보를 여전히 누출할 수 있다. Differential Privacy 또는 안전한 다자간 계산과 같은 기술은 더 강력한 보장을 제공하기 위해 코호팅과 결합되는 경우가 많다. 또한 민감한 속성을 기반으로 코호트가 형성되면 편향이 도입되어 모델 성능이 불균등해질 수 있다. 연구자는 의도하지 않은 차별을 피하기 위해 코호팅 기준을 신중하게 설계해야 한다.
향후 방향
연합 학습 코호트에 대한 연구는 MIT CSAIL, Stanford AI Lab 및 BAIR (Berkeley AI Research)와 같은 기관에서 활발히 진행 중이다. 한 방향은 코호트 할당을 자동으로 결정하기 위해 Reinforcement learning을 사용하는 것이다. 또 다른 방향은 한 코호트의 지식을 다른 코호트로 전송하여 일반화를 개선하는 연합 전이 학습과의 통합이다. Generative AI 모델이 더 보편화됨에 따라 코호팅은 분산 데이터에서 Transformer (architecture) 기반 모델을 훈련하는 데 적용되어 민감한 정보를 중앙 집중화하지 않고 Large language model의 공동 개발을 가능하게 할 수 있다.
이 접근 방식은 장치 리소스가 제한된 엣지 컴퓨팅 및 사물 인터넷에도 관련이 있다. 유사한 기능을 가진 장치를 그룹화하면 특정 하드웨어에 맞게 모델을 최적화하여 에너지 소비를 줄일 수 있다. 전반적으로 연합 학습 코호트는 프라이버시 보존 및 개인화된 기계 학습을 위한 유연한 프레임워크를 나타내며, 미래 Artificial intelligence 시스템을 형성할 잠재력을 가진다.