연합학습(Federated Learning)에서 보안 다자간 계산(Secure Multi-Party Computation, SMPC)의 한 기법인 덧셈 기반 비밀 공유를 적용할 때 발생하는 통신 오버헤드 증가에 대해 살펴보겠습니다.
결론부터 말씀드리면, 통신 오버헤드는 참여하는 클라이언트(사용자) 수에 따라 이차적($O(N^2)$)으로 매우 크게 증가합니다.
기본 연합학습 vs. 비밀 공유 적용 연합학습
먼저 두 시나리오의 통신 방식을 비교해 보면 오버헤드 증가를 명확히 이해할 수 있습니다.
- 기본 연합학습 (Federated Averaging):
- 서버가 글로벌 모델을 클라이언트들에게 전송합니다.
- 각 클라이언트는 자신의 로컬 데이터로 모델을 학습시킨 후, 업데이트된 모델 파라미터(또는 그래디언트)를 서버에만 전송합니다.
- 서버는 수집된 파라미터들을 평균 내어 새로운 글로벌 모델을 만듭니다.
통신 흐름: 클라이언트 -> 서버 (단방향)
- 덧셈 기반 비밀 공유 적용 연합학습 (Secure Aggregation): 이 방식은 신뢰할 수 없는 서버가 개별 클라이언트의 모델 업데이트를 들여다보는 것을 막기 위해 사용됩니다.
- 각 클라이언트는 자신의 모델 업데이트 값(예: $x_i$)을 여러 개의 '비밀 조각(share)'으로 분할합니다.
- 각 클라이언트는 이 비밀 조각들을 **자기 자신을 제외한 다른 모든 참여 클라이언트들과** 주고받습니다. 이 단계가 오버헤드의 주된 원인입니다.
- 다른 클라이언트들로부터 받은 비밀 조각들을 합산하여 '마스크(mask)'를 만듭니다.
- 자신의 원본 모델 업데이트 값에 이 마스크를 더한 값을 서버로 전송합니다.
- 서버는 모든 클라이언트로부터 마스킹된 값들을 수집하여 합산합니다. 이 과정에서 모든 마스크 값들이 서로 상쇄되어, 최종적으로는 모든 클라이언트의 원본 업데이트 값의 총합($\sum x_i$)만이 남게 됩니다.
통신 흐름: 클라이언트 <-> 다른 모든 클라이언트 (P2P), 그리고 클라이언트 -> 서버
통신 오버헤드 정량 분석
통신 오버헤드가 얼마나 증가하는지 수치적으로 분석해 보겠습니다.
- $N$: 한 라운드에 참여하는 클라이언트의 수
- $M$: 모델 파라미터의 크기 (예: 100MB)
1. 기본 연합학습의 통신량
각 클라이언트는 모델 파라미터($M$)를 서버에 한 번만 보내면 됩니다. 따라서 총 업로드 통신량은 다음과 같습니다.
$$
\text{총 통신량} = N \times M
$$
이는 클라이언트 수($N$)에 선형적으로($O(N)$) 비례합니다.
2. 덧셈 비밀 공유 적용 시 통신량
통신은 크게 두 단계로 나뉩니다.
- 비밀 조각 공유 (Client-to-Client):
- 한 명의 클라이언트는 자신의 모델 파라미터($M$)를 $N$개의 조각으로 나눈 뒤, $N-1$개의 조각을 다른 $N-1$명의 클라이언트에게 각각 전송해야 합니다.
- 따라서 클라이언트 한 명당 발생하는 통신량은 $(N-1) \times M$ 입니다.
- 총 $N$명의 클라이언트가 이 작업을 수행하므로, 이 단계에서 발생하는 총통신량은 $N \times (N-1) \times M$ 입니다.
- 마스킹된 값 전송 (Client-to-Server):
- 각 클라이언트는 마스킹된 모델 파라미터($M$)를 서버에 한 번 전송합니다.
- 이 단계의 총통신량은 $N \times M$ 입니다.
두 단계를 합친 총 업로드 통신량은 다음과 같습니다.
$$
\text{총 통신량} = (N \times (N-1) \times M) + (N \times M) = (N^2 - N + N) \times M = N^2 \times M
$$
이는 클라이언트 수($N$)의 제곱에($O(N^2)$) 비례합니다.
증가량 비교 및 예시
| 항목 | 기본 연합학습 | 덧셈 비밀 공유 적용 | 통신량 증가 배수 |
| 복잡도 | $O(N)$ | $O(N^2)$ | 약 $N$ 배 |
| 총 통신량 | $N \times M$ | $N^2 \times M$ |
예시:
모델 파라미터 크기($M$)가 100MB라고 가정해 봅시다.
- 클라이언트가 10명 ($N=10$)일 때:
- 기본 FL: $10 \times 100\text{MB} = 1\text{GB}$
- 비밀 공유 FL: $10^2 \times 100\text{MB} = 100 \times 100\text{MB} = 10\text{GB}$
- 10배 증가
- 클라이언트가 100명 ($N=100$)일 때:
- 기본 FL: $100 \times 100\text{MB} = 10\text{GB}$
- 비밀 공유 FL: $100^2 \times 100\text{MB} = 10,000 \times 100\text{MB} = 1\text{TB}$
- 100배 증가
이처럼 참여하는 클라이언트 수가 늘어날수록 통신 오버헤드는 기하급수적으로 커지며, 이는 실제 연합학습 환경에서 큰 부담으로 작용합니다.
시사점
- 심각한 확장성 문제: 덧셈 기반 비밀 공유는 이론적으로 강력한 프라이버시를 제공하지만, 통신 비용이 전체 클라이언트 수 N에 직접적으로 비례하여 증가합니다. 이는 수백, 수천 개의 클라이언트가 참여하는 대규모 연합학습 환경에서는 심각한 병목 현상을 유발하며 사실상 적용하기 어렵게 만듭니다.
- 트레이드오프: 강력한 프라이버시 보장을 위해 막대한 통신 비용을 지불해야 하는 명확한 트레이드오프 관계가 존재합니다.
- 대안 기술의 필요성: 이러한 통신 비효율성 때문에 실제 상용 환경에서는 차분 프라이버시(Differential Privacy)와 같이 통신량 증가가 없는 기술이나, 신뢰할 수 있는 하드웨어(TEE)를 활용하는 등 다른 접근법이 더 선호될 수 있습니다. 혹은 통신 효율을 개선한 다른 형태의 암호화 기법(예: 동형암호 일부 적용, 2-서버 모델)이 연구되고 있습니다.
요약하자면, 덧셈 기반 비밀 공유는 서버에 대한 강력한 개인정보 보호를 제공하지만, 그 대가로 클라이언트 간의 P2P 통신으로 인해 참여자 수의 제곱에 비례하는 막대한 통신 오버헤드를 발생시키는 명확한 단점을 가지고 있습니다.
'개인정보보호 강화 기술 > 보안 다자간 계산' 카테고리의 다른 글
| SMPC-05. 다차원 벡터를 위한 덧셈 기반 비밀 공유 기법 (0) | 2025.10.12 |
|---|---|
| SMPC-04. 샤미르 비밀 공유(Shamir's Secret Sharing)를 이용한 평균 연봉 계산 방법 (0) | 2025.10.11 |
| SMPC-03. 덧셈 기반 비밀 공유를 이용한 평균 연봉 계산 방법 (0) | 2025.10.11 |
| SMPC-02. 보안 다자간 계산(SMPC)의 핵심: 비밀 공유 기법 (0) | 2025.10.10 |
| SMPC-01. 보안 다자간 계산(SMPC) 소개 및 주요 기법 비교 (0) | 2025.10.09 |