---
# System prepended metadata

title: Meeting Report (2023/02/03) - Federated Learning of Deep Networks using Model Averaging
tags: [Meeting Report]

---

# Meeting Report (2023/02/03) - Federated Learning of Deep Networks using Model Averaging 

###### tags: `Meeting Report`

## Introduction
1. 現在的行動裝置可蒐集到相當豐富的資料，但其中可能包含隱私敏感(privacy sensitive)和資料過大(large in size)等問題
EX : 歐盟的一般資料保護規範（GDPR）

2. 聯邦學習能讓資料保留在本地端，並讓server得到一個等同於用了所有資料訓練出的模型，同時達到保護隱私及降低大型資料傳輸成本的效果
EX : Google的Gboard


![](https://i.imgur.com/xf4pYkf.png)


本篇目標為希望透過額外的計算，以減少與server溝通的次數(communication rounds)

增加額外計算的方法 :
1. Increased parallelism : 使用更多客戶節點
2. Increased computation on each client : 增加計算的複雜度


## The FederatedAveraging Algorithm

假設客戶節點固定有K個

C : 每輪執行計算的客戶比例 ( 0~1 )
E : 客戶端每輪的訓練次數
B : 客戶端更新所用的mini-batch大小

![](https://i.imgur.com/aneeFVp.jpg)

## Experiments
- 任務 : 圖像分類(Image classification)
- 目的 : 研究FedAvg algo的超參數(C、E、B)
- 資料集 : MNIST(60000筆訓練資料)
  - IID : 先做shuffle，再分給100個Client，每個Client會有600個

  - Non-IID : 先sort，在分成200個分段(大小為300)，每個Client可得到2個分段

- 模型架構 : 2NN、CNN
  - 2NN
  ![](https://i.imgur.com/5W4Z7os.png)

  - CNN
  ![](https://i.imgur.com/zNvjl4R.png)
  
- 實驗結果
  - Increasing parallelism
![](https://i.imgur.com/miZOeJ3.jpg)
     1. 當B=∞時，在增加客戶比例上有些微的優勢
     2. 在B=10且C=0.1時，在Non-IID上有顯著改善
     3. C=0.1時，computational efficiecy和convergence rate有最好的平衡

  - Increasing computation per client 
  
    ![](https://i.imgur.com/cUTQeX1.png)

    相較於Non-IID，在IID上每個客戶明顯使用了較少的communication rounds 來達到目標精確度


## Conclusion
1. 本篇提出了Federated Learning的概念，為Federated Learning訂下了基礎
2. 實驗中能發現，即使透過較少的communication rounds也可訓練出高質量的模型
3. 在面臨龐大運算量時，讓擁有強大的計算力的Server來處理未必是最好作法，相反的，透過大量的邊緣裝置來分散計算量也能達到不錯的成效

## Questions
1. Q : 在C=1時所需要的communication rounds較少，為甚麼還說C=0.1時較好
  A : 因為在C=0.1時，它同時考慮到了computational efficiecy和convergence rate
  
2. Q : Client端已訓練出了對某類有較高準確度的model，若之後再拿Server更新好的model去覆蓋，是否會降低該Client端的準確度
  A : 會，但這麼做能提升model的泛化能力，雖然對該類別的準確度有些許降低，但對其他類別的準確度卻能有更大的提升





