首次發(fā)現(xiàn)!數(shù)據(jù)異構(gòu)影響聯(lián)邦學(xué)習(xí)模型,關(guān)鍵在于表征維度坍縮
本文經(jīng)AI新媒體量子位(公眾號ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請聯(lián)系出處。
隨著深度學(xué)習(xí)大獲成功,保護用戶數(shù)據(jù)隱私變得越來越重要。
聯(lián)邦學(xué)習(xí)(Federated Learning)應(yīng)運而生,這是一種基于隱私保護的分布式機器學(xué)習(xí)框架。
它可以讓原始數(shù)據(jù)保留在本地,讓多方聯(lián)合共享模型訓(xùn)練。
但它有一個問題——數(shù)據(jù)的異質(zhì)化(data heterogeneity),即不同的參與方的本地數(shù)據(jù)來自不同的分布,這將嚴重影響全局模型的最終性能,背后原因也十分復(fù)雜。
字節(jié)跳動、新加坡國立大學(xué)及中科院自動化所的學(xué)者們首次發(fā)現(xiàn)了關(guān)鍵影響因素。
即:數(shù)據(jù)異質(zhì)化導(dǎo)致了表征的維度坍縮(dimensional collapse),由此大大限制了模型的表達能力,影響了最終全局模型的性能。
為了緩解這一問題,研究人員提出了一個新聯(lián)邦學(xué)習(xí)正則項:FedDecorr。
結(jié)果表明,使用該方法后,數(shù)據(jù)異質(zhì)化帶來的維度坍縮問題被有效緩解,顯著提升模型在該場景下的性能。
同時這一方法實現(xiàn)簡單,幾乎不會帶來額外計算負擔(dān),可以很容易地加入到多種聯(lián)邦學(xué)習(xí)算法上。
如何影響?
觀察一:更嚴重的數(shù)據(jù)異質(zhì)化會為全局模型(global model)帶來更嚴重的維度坍縮
首先,為了更好地理解數(shù)據(jù)異質(zhì)化是如何影響全局模型輸出表征的,研究人員探索了隨著數(shù)據(jù)異質(zhì)化越來越嚴重,全局模型輸出表征是如何而變化的。
基于模型輸出的表征,估計其表征分布的協(xié)方差矩陣(covariance matrix),并且按照從大到小的順序可視化了該協(xié)方差矩陣的特征值。結(jié)果如下圖所示。α越小,異質(zhì)化程度越高,α為正無窮時為同質(zhì)化場景。k為特征值的index。
對于該曲線,如果特征值大部分相對較大,即意味著表征能夠更加均勻地分布在不同的特征方向上。而如果該曲線只有前面少數(shù)特征值較大,而后面大部分特征值都很小,就意味著表征分布被壓縮在少數(shù)特征方向上,即維度坍縮現(xiàn)象。
因此,從圖中可以看到,隨著數(shù)據(jù)異質(zhì)化程度越來越高(α越來越?。?,維度坍縮的現(xiàn)象就越來越嚴重。
觀察二:全局模型的維度坍縮來自聯(lián)邦參與各方的局部模型的維度坍縮
由于全局模型是聯(lián)邦參與各方的局部模型融合的結(jié)果,因此作者推斷:全局模型的維度坍縮來源于聯(lián)邦參與各方的局部模型的維度坍縮。
為了進一步驗證該推斷,作者使用與觀察1類似的方法,針對不同程度數(shù)據(jù)異質(zhì)化場景下得到的局部模型進行了可視化。結(jié)果如下圖所示。
從圖中可以看到,對于局部模型,隨著數(shù)據(jù)異質(zhì)化程度的提升,維度坍縮的現(xiàn)象也越來越嚴重。因此得出結(jié)論,全局模型的維度坍縮來源于聯(lián)邦參與各方的局部模型的維度坍縮。
怎么解決?
受到以上兩個觀察的啟發(fā),由于全局模型的維度坍縮來源于本地局部模型的維度坍縮,研究人員提出在本地訓(xùn)練階段來解決聯(lián)邦學(xué)習(xí)中的表征維度坍縮問題。
首先,一個最直觀的可用的正則項為以下形式:
其中為第個特征值。該正則項將約束特征值之間的方差變小,從而使得較小的特征值不會偏向于0,由此緩解維度坍縮。
然而,直接計算特征值往往會帶來數(shù)值不穩(wěn)定,計算時間較長等問題。因此借助以下proposition來改進方法。
為了方便處理,需要對表征向量做z-score歸一化。這將使得協(xié)方差矩陣變成相關(guān)系數(shù)矩陣(對角線元素都是1)。
基于這個背景,可以得到以下proposition:
這一proposition意味著,原本較為復(fù)雜的基于特征值的正則化項,可以被轉(zhuǎn)化為以下易于實現(xiàn)且計算方便的目標:
該正則項即是簡單的約束表征的相關(guān)系數(shù)矩陣的Frobenius norm更小。研究人員將該方法命名為FedDecorr。
因此,對于每個聯(lián)邦學(xué)習(xí)參與方,本地的優(yōu)化目標為:
其中為分類的交叉熵損失函數(shù),β為一個超參數(shù),即FedDecorr正則項的系數(shù)。?
實驗結(jié)果
首先,驗證使用FedDecorr是否可以有效緩解維度坍縮。
在α=0.01/0.05這兩個強數(shù)據(jù)異質(zhì)化的場景下,觀察使用FedDecorr對模型輸出表征的影響。
結(jié)果如下圖所示。
可以看到,使用FedDecorr可以有效地緩解本地局部模型的維度坍縮,從而進一步緩解全局模型的維度坍縮。
在CIFAR10/100兩個數(shù)據(jù)集上驗證方法。研究團隊發(fā)現(xiàn)FedDecorr可以很方便的加入到之前提出的多個聯(lián)邦學(xué)習(xí)方法,并且?guī)盹@著提升:
同時,為了展示方法的可擴展性,作者在較大規(guī)模數(shù)據(jù)集(TinyImageNet)上進行了實驗,并且也觀察到了顯著提升:
此外還基于TinyImageNet,驗證了FedDecorr在更大規(guī)模聯(lián)邦參與方的場景下的有效性。
結(jié)果如下表。通過實驗結(jié)果展示了FedDecorr可以被用于較大規(guī)模聯(lián)邦參與方的場景。
FedDecorr對正則項系數(shù)(超參數(shù)β)的魯棒性結(jié)果如下圖所示。
通過實驗,發(fā)現(xiàn)FedDecorr對于其超參數(shù)β有較強的魯棒性。
同時發(fā)現(xiàn)將β設(shè)為0.1是一個不錯的默認值。
最后,研究人員驗證了在聯(lián)邦學(xué)習(xí)時,使用不同的local epoch下FedDecorr也可以帶來普遍的提升:
論文地址:?https://arxiv.org/abs/2210.00226?
代碼鏈接:
?https://github.com/bytedance/FedDecorr