일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- OOD
- Analysis
- 기계학습
- PPML
- ML
- data maximization
- 머신러닝
- Federated Transfer Learning
- FedAvg
- ordered dropout
- free rider
- Machine learning
- Federated Learning
- deep learning
- FL
- Differential Privacy
- FedProx
- convergence
- DP
- Agnostic FL
- 딥러닝
- q-FFL
- 연합학습
- Open Set Recognition
- 개인정보
- Fairness
- q-FedAvg
- value shaping
- OoDD
- OSR
- Today
- Total
Federated Learning
[ICLR 2023] FedOV - (1) 본문
논문 제목: Towards Addressing Label Skews in One-Shot Federated Learning
출처: https://openreview.net/forum?id=rzrqh85f4Sc
이번 포스트에서는 FL에 OSR을 적용하려고 시도한 paper에 관하여 알아볼 계획입니다. 앞서 괜히 PROSER를 정리한 것이 아니기 때문에, 만약 OSR을 처음 접하신다면 이전 포스트를 참고해주시기 바랍니다. (이전 글 보기)
1. One-Shot FL
해당 paper는 one-shot setting을 가정하였는데, FL에서 one-shot은 1회의 communication round만에 학습을 끝내는 것을 의미합니다. 이러한 setting을 고려하는 이유는 크게 두 가지가 있는데, 하나는 "client의 data에 지속적으로 접근하는 것이 각 client에게 부정적으로 보일 수 있기 때문에, 최대한 접근 횟수를 줄이면서 model의 성능은 극대화하자"는 것이고, 다른 하나는 "communication 횟수를 줄여서 cost를 최대한 아끼자"는 것입니다.
One-Shot FL은 model aggeregation이 voting 혹은 distillation으로 구현되어 있는 경우가 많습니다. One-Shot FL을 처음 주장한 paper[1]도 그랬고, FedKT[2]도 그랬습니다. (물론 기존 FL의 aggretation 방식을 그대로 사용한 paper들도 있지만) FedOV도 이러한 관습을 따라가며, voting 과정에서 생길 법한 문제를 OSR 기법을 접목함으로써 해결하고자 하였습니다.
2. 왜 OSR을 사용하였을까?
FL은 Statistical Heterogeniety라는 큰 문제점을 가지고 있습니다. 즉, 각 client마다 서로 다른 data distribution을 가지고 있는 상황에서 학습이 진행됩니다. 위의 그림의 $(a)$와 같이 3개의 client가 MNIST dataset의 0, 1, 2 data를 이용하여 학습에 참여하는 과정을 가정해봅시다. 가운데의 client는 1에 강하게 biased되어 있으므로, 1이라는 data를 올바르게 prediction하는 데에 별다른 어려움이 없을 것입니다. 반면, 다른 clients는 1이라는 class에 관한 정보를 거의 갖고 있지 않은 상황에서 1 data를 맞이하게 되는데, 이때 overconfidence 때문에 이 1 data를 각 client가 잘 알고 있는 0 혹은 2로 잘못 prediction하게 될 경우 voting 과정에서 문제가 발생하게 됩니다.
저자들은 이 부분이 voting 기반의 One-Shot FL paper들이 가지고 있는 공통적인 문제점이라고 생각하였습니다. 저자들이 보았을 때, 각 client가 모르는 data는 모른다고 판단하고 prediction을 유보하는 편이 voting에 더 유리하다고 판단하였는데, 이는 OSR의 idea와 상당히 유사합니다. 그래서 voting 과정에서 OSR을 응용하고자 하였고, 이에 해당 framework의 이름을 FedOV(Open-set Voting)라고 지었습니다. 위의 그림의 $(b)$가 voting에 OSR을 적용한 예시인데, unknown class를 제외하고 voting을 진행한 결과 올바르게 prediction을 한 모습을 확인할 수 있습니다.
3. 왜 하필 PROSER를 사용하였을까?
우선, threshold 기반의 methods는 사용하기 어려웠을 것입니다. 중앙에서 학습을 하여도 threshold를 지정하는 것이 쉽지 않은데, data를 볼 수 있는 권한도 없는 상황에서 각 client마다 적합한 threshold를 찾는다는 것은 현실적으로 불가능하겠죠. 한편, generative methods의 경우 그 특성 상 학습 과정에 상당한 cost를 동반하므로, 이를 local client단에서 사용하는 것 역시 현실적으로 어렵습니다. 또한, 저자들이 cost를 무시하고 GAN으로 outlier generation을 시도해보았는데, $\text(i)$ 너무나도 real한 fake data를 만들거나 $\text(ii)$ 지나치게 OoD로 판별하기 쉬운 data를 만들어서 학습 과정에 그다지 도움이 되지 않았다고 합니다. 저자들도 어떠한 OSR method를 적용할 것인지에 관하여 고민이 많았던 모양인데, 결국 양쪽 문제점을 모두 해결할 수 있으면서도 SOTA에 근접한 성능을 보이는 PROSER를 채택하였습니다. 앞으로 PROSER의 loss는 $\mathcal{L}_\text{PROSER}$로 표기하겠습니다.
4. PROSER를 그대로 사용할 수 있을까?
하지만 아쉽게도 PROSER를 그대로 FL setting에서 사용하기에는 문제가 있었습니다. 우선, FL 특성 상 각 client가 가지고 있는 data의 갯수가 한정적이어서, Manifold Mixup을 통해 만들어지는 outlier의 수가 그다지 많지 않습니다. 또한, 만약 각 client마다 2개의 class에 해당하는 data만 가지고 있는 상황이라면, outlier들은 모두 동일한 2개의 distribution으로부터 오게 되고, 더 나아가 각 client마다 1개의 class에 해당하는 data만 가지고 있는 상황이라면, 더이상 outlier generation의 의미가 없어집니다.
다음 포스트에서는 PROSER를 FL setting에 이식하는 과정에서 생긴 문제점을 어떻게 해결하였는지 알아보도록 하겠습니다.
참고 자료:
[1] [NeurIPS 2018 Workshop] https://arxiv.org/abs/1902.11175
[2] [IJCAI 2021] https://arxiv.org/abs/2010.01017
'Federated Learning > Papers' 카테고리의 다른 글
[ICLR 2023] FedOV - (3) (0) | 2023.04.01 |
---|---|
[ICLR 2023] FedOV - (2) (0) | 2023.03.14 |
[FL-NeurIPS 2022] Data Maximization - (6) (0) | 2023.01.24 |
[FL-NeurIPS 2022] Data Maximization - (5) (0) | 2023.01.19 |
[FL-NeurIPS 2022] Data Maximization - (4) (1) | 2023.01.14 |