---
# System prepended metadata

title: Meeting Report (2023/03/17) - Optimizing Federated Learning on Non-IID Data with Reinforcement Learning
tags: [Meeting Report]

---

# Meeting Report (2023/03/17) - Optimizing Federated Learning on Non-IID Data with Reinforcement Learning

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

## Introduction
1. 行動裝置能不斷產生新的資料 (如照片、聲音)，但將這些私有資料集中訓練可能有隱私疑慮 (privacy concerns)，為了解決此問題，聯邦式學習 (Federated Learning) 便被提了出來
2. Federated Averaging (FedAvg) 演算法能降低溝通回合 (communication rounds) 的次數
3. 聯邦式學習現在面臨一些挑戰，如無線網路的連線限制、行動裝置的不穩定、non-IID資料分布等等
4. 由於資料分布和模型權重之間是有關聯的，透過此關係，本篇提出了一個名為FAVOR的控制框架，基於強化學習，FAVOR能幫助加速並穩定聯邦式學習的訓練過程，並抵銷non-IID資料的影響

## Background
1. FedAvg
![](https://i.imgur.com/D89B9mL.png)
- 假設客戶節點固定有K個
- C : 每輪執行計算的客戶比例 ( 0~1 )
- E : 客戶端每輪的訓練次數
- B : 客戶端更新所用的mini-batch大小
- 𝑛_ : 總資料量
- 𝑛_𝑘   : client k 的資料量
- 𝑃_𝑘  : client k 的資料集

2. Non-IID
- 透過實驗展示non-IID的影響
- 比較選取行動裝置時，採隨機選取與分群選取間的差異
- 以MNIST做為資料集
- 用Thread模擬100個行動裝置，每次選10個訓練 (K=100, C=0.1)
  - IID : 隨機從60000筆資料中選出600個
![](https://i.imgur.com/9ITJpZu.png)
  - Non-IID : 從60000筆資料中選出600個，其中80%為同一類，其餘20%屬於其他類別
![](https://i.imgur.com/jImq4Ts.png)
![](https://i.imgur.com/A2ikAoz.png)
![](https://i.imgur.com/esSvtJA.png)

- Target accuracy : 99%
- 相較於IID，FedAvg在non-IID上明顯花費了更多的Communication rounds
- K-Center : 根據權重，分成10群，每次隨機從各個群中選1個，共10個
- K-Center-non-IID相較於FedAvg-non-IID，用了更少的Communication rounds
  - 仔細選擇參與訓練的裝置能提升表現



## DRL for Client Selection
1. State Action Reward

- State : 𝑠_𝑡=(𝑤_𝑡,𝑤_𝑡^((1) ),……,𝑤_𝑡^((𝑁)))
![](https://i.imgur.com/z1rgSLT.png)

- Action : 從N個裝置中選出K個做為子集

- Reward : 
![](https://i.imgur.com/ef6Lsyi.png)

2. Workflow with FAVOR
![](https://i.imgur.com/4qfFjxW.png)
![](https://i.imgur.com/cIIfElI.png)

3. PCA(Principal Component Analysis)
目的 : 壓縮模型權重，減少state維度
例子 : 假設有一組non-IID資料，其中80%是6，20%為其他類別，在這裡以黃色十字表示，可見其他也是以6為主的資料會靠在一起
![](https://i.imgur.com/Vz7ZX7W.png)

3. Double DQN
![](https://i.imgur.com/QdX1S8z.png)

## Experiment
- 任務 : 圖像分類(Image classification)
- 資料集 : MNIST、FashionMNIST、CIFAR-10
- 方法 : FedAvg、K-Center、FAVOR
- 評估標準 : Communication rounds
- 用Thread模擬100個行動裝置

1. Non-IID 比例影響
![](https://i.imgur.com/Syazlsi.png)
![](https://i.imgur.com/et7p4lF.png)

- K-Center的表現不一定每次都比FedAvg來的好
- FAVOR相較於FedAvg在communication rounds上降低了不少
  - MNIST中減少了49%
  - FashionMNIST中減少了23%
  - CIFAR-10中減少了42%

2. 平行度影響
![](https://i.imgur.com/wd0l0ot.png)
- 以CIFAR-10做為資料集
  - 𝜎 = 0.8
  - K = 10、50、100
- 平行不一定比較好，有時可能還會增加communication rounds

## Conclusion
1. 本篇透過Double DQN選擇行動裝置的最佳子集合(best subset)
2. 提出了FAVOR的控制框架，相較於FedAvg，在non-IID上降低了FL訓練時的溝通回合

## Meeting Comment
1. 可嘗試用priority DQN，提升某些裝置的優先度，讓那些值得學的裝置有更高的優先度
2. 調整同時模擬數量，從100降到10
3. reward中-1的目的是希望能在較少的回合下結束，如果回合次數太多，-1就減得越多，最後得到的return就越少
4. 有些行動裝置的計算能力可能不強，這時可以透過邊緣計算的方式來解決