non-iid 6

연합학습에서의 데이터 이질성(Non-IID) 정량화

1. 개요연합학습의 가장 큰 난제는 클라이언트(기관)마다 데이터 분포가 다른 Non-IID(Non-Independent and Identically Distributed) 상황입니다. 중앙 서버가 원본 데이터를 볼 수 없는 보안 제약 하에서, 서버는 클라이언트들이 전송하는 모델 업데이트의 기하학적, 통계적 특성을 분석하여 이질성을 간접적으로 정량화할 수 있습니다.2. 서버 측 이질성 정량화 방법론2.0. 전제: 모델 업데이트의 정의와 등가성본 문서에서 언급하는 '모델 업데이트'는 구체적인 구현(FedAvg, FedSGD 등)에 따라 다음 세 가지 중 하나일 수 있으나, 이질성 정량화의 본질은 동일합니다.파라미터 ($w_t$): 학습이 완료된 로컬 모델의 가중치 자체파라미터 차이 ($\Delta w$): ..

Non-IID 환경을 위한 병합 전략: FedFocal

1. 개요FedFocal은 연합학습(Federated Learning) 환경, 특히 각 클라이언트가 보유한 데이터의 레이블 분포가 균일하지 않은 Non-IID(Label Skew) 상황을 해결하기 위해 제안된 기법입니다. 기존의 FedAvg가 사용하는 Cross Entropy(CE) 손실 함수 대신, Focal Loss를 도입하여 모델이 분류하기 쉬운 샘플(Easy Examples)보다는 분류하기 어려운 샘플(Hard Examples)이나 소수 클래스(Minority Class)에 더 집중하도록 유도합니다.2. 배경: 왜 FedFocal이 필요한가?2.1. 연합학습의 Non-IID 문제연합학습에서 이상적인 환경은 모든 클라이언트가 전체 데이터 분포와 유사한 데이터를 갖는 IID 상황입니다. 하지만 현실에..

이항 분포에서 Non-IID까지: 확률 분포의 연결 고리와 응용

1) 이항 분포 -> 2) 푸아송 분포 -> 3) 지수 분포 -> 4) 감마 분포 -> 5) 디리클레 분포 -> 6) Non-IID 데이터 시뮬레이션 확률 분포들이 서로 어떻게 연결되어 있는지 이해하는 것은 통계적 모델링과 데이터 시뮬레이션, 특히 머신러닝의 데이터 분포를 이해하는 데 매우 중요합니다. 위 여섯 단계는 '이산(Discrete)에서 연속(Continuous)으로', 그리고 '단일 사건에서 다변량 비율(Multivariate Proportion)로' 확장되는 흐름을 가지고 있습니다. 이 문서에서는 각 단계의 핵심 개념과 수식적 관계, 그리고 마지막으로 이를 활용한 Non-IID 데이터 시뮬레이션까지 설명합니다.1. 이항 분포(Binomial) $\rightarrow$ 푸아송 분포(Poisso..

연합학습 시 희소 데이터의 희석 문제 완화 방안 3가지

연합학습(FL)은 데이터를 중앙 서버로 전송하지 않고, 각 클라이언트(예: 디바이스, 지역)에서 로컬 모델을 학습한 뒤 모델 파라미터(또는 그래디언트)만 서버로 전송하여 전역 모델을 갱신하는 분산 학습 방식입니다. 이는 데이터 프라이버시를 강력하게 보호할 수 있는 장점이 있습니다. 하지만 데이터가 이질적(Non-IID)인 환경, 특히 특정 지역이나 클라이언트가 매우 적지만 중요한 '희소 데이터'를 보유한 경우, 심각한 문제가 발생합니다. 가장 널리 쓰이는 FedAvg (Federated Averaging) 알고리즘은 각 클라이언트의 데이터 '양'에 비례하여 가중 평균을 내기 때문입니다. 문제 상황: 99%의 클라이언트가 '일반 데이터'를, 1%의 클라이언트가 '희소하지만 중요한 지역 데이터'를 가졌다고 ..

Non-IID 환경을 위한 병합 전략: SCAFFOLD

SCAFFOLD (Stochastic Controlled Averaging)는 연합학습(FL)에서 데이터 이질성(Non-IID)으로 인해 발생하는 'Client Drift (클라이언트 편향)' 문제를 해결하기 위한 매우 정교한 알고리즘입니다. FedProx가 로컬 모델이 멀리 벗어나는 것을 '억제'하는 방식이라면, SCAFFOLD는 각 클라이언트가 얼마나 편향되었는지를 '추정'하고 이를 '보정'하는, 더 적극적인 방식을 사용합니다.1. SCAFFOLD가 해결하려는 핵심 문제: 편향된 그래디언트데이터가 이질적(Non-IID)일 때, 각 클라이언트가 계산하는 로컬 그래디언트(모델이 나아가야 할 방향)는 글로벌 모델이 실제로 나아가야 할 방향(모든 데이터의 평균 방향)과 다릅니다.Client Drift의 원인..

Non-IID 환경을 위한 병합 전략: FedProx

FedProx(Federated Proximal)는 연합학습, 특히 데이터가 이질적인(Non-IID) 환경에서 발생하는 'Client Drift (클라이언트 편향)' 문제를 해결하기 위해 제안된 핵심적인 알고리즘입니다. FedAvg(표준 연합학습)의 직접적인 개선안으로, 로컬 학습 과정에 간단하면서도 효과적인 제약 사항을 추가한 것이 특징입니다.1. FedProx가 해결하려는 핵심 문제: Client Drift표준 FedAvg에서는 각 클라이언트가 서버로부터 글로벌 모델을 받아, 자신의 로컬 데이터로 여러 에포크(epoch) 동안 학습합니다.문제점: 만약 클라이언트 A(예: 숫자 '3' 이미지 만 보유)와 클라이언트 B(예: 숫자 '7' 이미지 만 보유)의 데이터가 매우 이질적이라면, 클라이언트 A의 로..