데이터 반출 없는 다 기관 협업 인공지능 학습 인프라

연합학습/추론 성능 9

데이터 이질성 측정: 글로벌 평균 기준 발산 측정 vs. 클라이언트 간 쌍대 비교

연합학습에서 Non-IID 데이터로 인한 모델 성능 저하를 막기 위해 가중치나 그래디언트의 발산을 측정하는 것은 매우 핵심적인 접근입니다. 코사인 유사도 기반 측정 방식으로 글로벌 평균 기준 발산 측정과 클라이언트 간 쌍대 비교가 있는데 이 둘은 구조가 다른 만큼 각각 뚜렷한 특징과 장단점을 가지고 있습니다.1. 글로벌 평균 기준 발산 측정 (Global Mean-Centric)전체 클라이언트들의 가중치 평균인 글로벌 모델 $\bar{W}$를 구하고, 각 클라이언트 $W_i$가 이 평균과 얼마나 유사한지 계산하여 평균을 내는 방식입니다. 장점:연산 효율성 ($O(N)$): 클라이언트 수가 $N$일 때, 글로벌 평균을 한 번 구하고 $N$번의 코사인 유사도만 계산하면 되므로 시스템 부하가 매우 적습니다...

KL 발산 기반 Non-IID 정량 분석 및 연합학습 최적화

연합학습(Federated Learning)의 최대 난제는 각 로컬 기관(Client)의 데이터가 서로 다른 분포를 가지는 Non-IID(Not Identically and Independently Distributed) 특성을 띈다는 점입니다. 이를 해결하기 위해 KL 발산(Kullback-Leibler Divergence)을 활용하여 데이터 이질성을 정량화하고 적합한 학습 전략, 또는 병합 전략을 선택할 수 있습니다.1. 수학적 배경: KL-Divergence와 데이터 분포KL-Divergence는 두 확률분포 $P$와 $Q$ 사이의 차이를 측정하는 지표입니다. 물리학의 엔트로피 개념과 밀접한 관련이 있으며, 정보이론에서는 '실제 분포 $P$를 근사 분포 $Q$로 모델링했을 때 발생하는 정보 손실량'..

데이터 사이의 거리: KL 발산부터 Wasserstein 거리까지

딥러닝 모델의 성능을 높이거나, 특히 연합학습(Federated Learning) 환경에서 기관 간의 데이터 불균형(Non-IID) 문제를 다룰 때, 우리가 가장 먼저 마주하는 질문은 이것입니다. "두 데이터 분포가 얼마나 다른가?" 이 질문에 답하기 위해 통계학과 정보이론에서는 다양한 '거리(Distance)'와 '발산(Divergence)' 개념을 사용합니다. 오늘은 가장 대표적인 4가지 지표를 물리학적 직관과 데이터 과학의 관점에서 비교해 보겠습니다.1. KL Divergence (Kullback-Leibler Divergence)"정보의 손실을 측정하다"KL 발산은 정보이론의 핵심 개념으로, 실제 분포 $P$를 근사 분포 $Q$로 표현했을 때 발생하는 정보의 손실량(상대 엔트로피)을 측정합니다.수..

연합학습에서의 데이터 이질성(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 상황입니다. 하지만 현실에..

연합학습 시 희소 데이터의 희석 문제 완화 방안 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의 로..

Non-IID 환경을 위한 병합 전략 네 가지

연합학습(Federated Learning) 환경에서 데이터가 이질적(Non-IID)일 때 발생하는 클라이언트 편향(Client Drift) 현상은 큰 문제입니다. 이는 각 클라이언트의 로컬 모델이 자신의 데이터에 과적합되어, 이를 단순 평균(FedAvg)할 경우 글로벌 모델의 성능이 저하되는 현상을 말합니다. FedProx, FedFocal, SCAFFOLD, FedNova 는 이 문제를 각기 다른 방식으로 해결하려는 대표적인 병합(혹은 학습) 전략입니다.FedProx (Federated Proximal)FedProx는 클라이언트가 로컬 학습을 진행할 때, 글로벌 모델에서 너무 멀리 벗어나지 않도록 '제약'을 거는 방식입니다.핵심 아이디어: 로컬 손실 함수(Loss Function)에 '근접 항(Pro..