데이터 반출 없는 다기관 연합 인공지능 학습 플랫폼

전체 글 201

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

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

푸아송 과정(Poisson Process)

푸아송 과정(Poisson Process)은 확률론과 통계학에서 시간에 따라 무작위로 발생하는 사건(Events)을 모델링하는 가장 대표적인 확률 과정(Stochastic Process)입니다. 쉽게 말해, "평균적으로 일정한 속도로 발생하지만, 정확한 발생 시점은 예측할 수 없는 사건들의 흐름"을 설명하는 도구입니다.1. 직관적인 정의어떤 사건이 매우 드물게, 그리고 서로 독립적으로 발생한다고 가정해 봅시다. 예를 들어:콜센터에 걸려오는 상담 전화웹사이트에 접속하는 방문자 수방사능 물질에서 방출되는 입자이러한 사건들이 시간에 따라 점(point)처럼 찍히는 과정을 수학적으로 표현한 것이 푸아송 과정입니다.2. 성립 조건 (3가지 핵심 가정)푸아송 과정이 되기 위해서는 다음의 세 가지 조건(Axioms)..

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