您當前的位置:首頁 > 繪畫

聯邦學習中常見的Clients資料Non-IID非獨立同分布總結

作者:由 Anish Hui 發表于 繪畫時間:2021-10-10

寫在前面

在介紹聯邦學習客戶端之間資料Non-IID分佈前,我們需要先了解Dataset Shift的概念。

聯邦學習中客戶端之間Non-IID分佈

和我們在做機器學習任務時可能遇到的

訓練集與測試集分佈不一致

其實是一個道理(因為你可以把訓練集想象成客戶端1,測試集想象成客戶端2)。

訓練集和測試集分佈不一致被稱作

資料集偏移(Dataset Shift)

。西班牙格拉納達大學Francisco Herrera教授在他PPT《

Dataset Shift in Classification: Approaches and Problems

》裡提到資料集偏移有三種類型:

協變數偏移(Covariate Shift)

: 獨立變數的偏移,指訓練集和測試集的輸入服從不同分佈,但背後是服從同一個函式關係,如圖1所示。

聯邦學習中常見的Clients資料Non-IID非獨立同分布總結

先驗機率偏移(Prior Probability Shift)

: 目標變數的偏移。

聯邦學習中常見的Clients資料Non-IID非獨立同分布總結

概念偏移(Concept Shift)

: 獨立變數和目標變數之間關係的偏移。

聯邦學習中常見的Clients資料Non-IID非獨立同分布總結

聯合機率分佈

資料集(X,Y)可以看作從聯合機率分佈P(X,Y)中取樣得到

聯邦學習中常見的Clients資料Non-IID非獨立同分布總結

聯邦學習中客戶端資料Non-IID分佈的五種型別:

型別1:Feature distribution skew (convariate shift)

不同客戶端

\mathcal{P}_i(x)

分佈不相同,

\mathcal{P}(y|x)

分佈相同。

舉個例子:

在數字手寫識別任務上,不同的人可以看作不同的客戶端,小明喜歡寫豪放版的“3”(特徵x),而小紅喜歡寫苗條版的“3”(特徵x),那麼在小明這個客戶端上的分佈

\mathcal{P}_i(x)

中豪放版的“3”機率較高,而小紅則相反(也就是說不同客戶端

\mathcal{P}_i(x)

分佈不相同)。但是呢,當 x = 豪放版“3”時,不同客戶端用這個特徵x預測出來的標籤y=3的機率是相近的(也就是說

\mathcal{P}(y|x)

分佈相同)。

下面這篇論文的實驗設定就是Feature distribution skew

論文地址:

https://arxiv.org/pdf/2006.04088.pdf

聯邦學習中常見的Clients資料Non-IID非獨立同分布總結

聯邦學習中常見的Clients資料Non-IID非獨立同分布總結

Those who have the same rotation are from the same distribution。

型別2:Label distribution skew (prior probability shift)

不同客戶端

\mathcal{P}_i(y)

分佈不相同,

\mathcal{P}(x|y)

分佈相同。

以MNIST資料集為例,客戶端1有90%的數字1,10%的其他數字,客戶端2有95%數字7,10%的其他數字。。。,這種情況就是不同客戶端

\mathcal{P}_i(y)

分佈不相同。而當y給定時,比如y等於7,那即使是不同的客戶端,對應的特徵x大機率是7的形狀,所以說

\mathcal{P}(x|y)

分佈相同

下面這篇論文的實驗設定就是Label distribution skew

論文地址:

http://www.lamda.nju.edu.cn/lixc/papers/FedRS-KDD2021-Lixc.pdf

聯邦學習中常見的Clients資料Non-IID非獨立同分布總結

型別3:Same label, different features (concept shift)

不同客戶端

\mathcal{P}(x|y)

分佈不相同,

\mathcal{P}_i(y)

分佈相同。

\mathcal{P}(x|y)

分佈不相同可以這樣去理解:同樣是房子(y相同),歐洲(客戶端1)的房子和中國(客戶端2)的房子對應的形態是不同的(x不同)

型別4:Same features, different label (concept shift)

不同客戶端

\mathcal{P}(y|x)

分佈不相同,

\mathcal{P}_i(x)

分佈相同。

\mathcal{P}(y|x)

分佈不一致,舉例來說,不同讀者(客戶端)對於同一條新聞事件(x)持有不同的看法(y)

型別5:Quantity skew or unbalancedness

這種型別最簡單,就是指不同客戶端的訓練集的數量差異很大。

舉個例子:客戶端

i

有100個樣本,而客戶端

j

有2萬個樣本

參考資料

綜述:Advances and Open Problems in Federated Learning 地址:

https://arxiv.org/abs/1912.04977

訓練/測試集分佈不一致解法總結

http://iwann.ugr.es/2011/pdf/InvitedTalk-FHerrera-IWANN11.pdf

標簽: 客戶端  分佈  偏移  相同  SHIFT