聯邦學習中常見的Clients資料Non-IID非獨立同分布總結
寫在前面
在介紹聯邦學習客戶端之間資料Non-IID分佈前,我們需要先了解Dataset Shift的概念。
聯邦學習中客戶端之間Non-IID分佈
和我們在做機器學習任務時可能遇到的
訓練集與測試集分佈不一致
其實是一個道理(因為你可以把訓練集想象成客戶端1,測試集想象成客戶端2)。
訓練集和測試集分佈不一致被稱作
資料集偏移(Dataset Shift)
。西班牙格拉納達大學Francisco Herrera教授在他PPT《
Dataset Shift in Classification: Approaches and Problems
》裡提到資料集偏移有三種類型:
協變數偏移(Covariate Shift)
: 獨立變數的偏移,指訓練集和測試集的輸入服從不同分佈,但背後是服從同一個函式關係,如圖1所示。
先驗機率偏移(Prior Probability Shift)
: 目標變數的偏移。
概念偏移(Concept Shift)
: 獨立變數和目標變數之間關係的偏移。
聯合機率分佈
資料集(X,Y)可以看作從聯合機率分佈P(X,Y)中取樣得到
聯邦學習中客戶端資料Non-IID分佈的五種型別:
型別1:Feature distribution skew (convariate shift)
不同客戶端
分佈不相同,
分佈相同。
舉個例子:
在數字手寫識別任務上,不同的人可以看作不同的客戶端,小明喜歡寫豪放版的“3”(特徵x),而小紅喜歡寫苗條版的“3”(特徵x),那麼在小明這個客戶端上的分佈
中豪放版的“3”機率較高,而小紅則相反(也就是說不同客戶端
分佈不相同)。但是呢,當 x = 豪放版“3”時,不同客戶端用這個特徵x預測出來的標籤y=3的機率是相近的(也就是說
分佈相同)。
下面這篇論文的實驗設定就是Feature distribution skew
論文地址:
https://arxiv.org/pdf/2006.04088.pdf
Those who have the same rotation are from the same distribution。
型別2:Label distribution skew (prior probability shift)
不同客戶端
分佈不相同,
分佈相同。
以MNIST資料集為例,客戶端1有90%的數字1,10%的其他數字,客戶端2有95%數字7,10%的其他數字。。。,這種情況就是不同客戶端
分佈不相同。而當y給定時,比如y等於7,那即使是不同的客戶端,對應的特徵x大機率是7的形狀,所以說
分佈相同
下面這篇論文的實驗設定就是Label distribution skew
論文地址:
http://www.lamda.nju.edu.cn/lixc/papers/FedRS-KDD2021-Lixc.pdf
型別3:Same label, different features (concept shift)
不同客戶端
分佈不相同,
分佈相同。
分佈不相同可以這樣去理解:同樣是房子(y相同),歐洲(客戶端1)的房子和中國(客戶端2)的房子對應的形態是不同的(x不同)
型別4:Same features, different label (concept shift)
不同客戶端
分佈不相同,
分佈相同。
分佈不一致,舉例來說,不同讀者(客戶端)對於同一條新聞事件(x)持有不同的看法(y)
型別5:Quantity skew or unbalancedness
這種型別最簡單,就是指不同客戶端的訓練集的數量差異很大。
舉個例子:客戶端
有100個樣本,而客戶端
有2萬個樣本
參考資料
綜述:Advances and Open Problems in Federated Learning 地址:
https://arxiv.org/abs/1912.04977
訓練/測試集分佈不一致解法總結
http://iwann.ugr.es/2011/pdf/InvitedTalk-FHerrera-IWANN11.pdf
上一篇:王敬恆:山水畫,人獸同歡也!
下一篇:你曾經做過哪些摳門的事情?