首頁 > 軟體

FedAvg聯邦學習FedProx異質網路優化實驗總結

2022-05-13 21:48:36

前言

題目: Federated Optimization for Heterogeneous Networks

會議: Conference on Machine Learning and Systems 2020

論文地址:Federated Optimization for Heterogeneous Networks

FedAvg對裝置異質性和資料異質性沒有太好的解決辦法,FedProx在FedAvg的基礎上做出了一些改進來嘗試緩解這兩個問題。

在Online Learning中,為了防止模型根據新到來的資料進行更新後偏離原來的模型太遠,也就是為了防止過調節,通常會加入一個餘項來限制更新前後模型引數的差異。FedProx中同樣引入了一個餘項,作用類似。

I. FedAvg

Google的團隊首次提出了聯邦學習,並引入了聯邦學習的基本演演算法FedAvg。問題的一般形式:

FedAvg:

簡單來說,在FedAvg的框架下:每一輪通訊中,伺服器分發全域性引數到各個使用者端,各個使用者端利用本地資料訓練相同的epoch,然後再將梯度上傳到伺服器進行聚合形成更新後的引數。

FedAvg存在著兩個缺陷:

  • 裝置異質性:不同的裝置間的通訊和計算能力是有差異的。在FedAvg中,被選中的使用者端在本地都訓練相同的epoch,雖然作者指出提升epoch可以有效減小通訊成本,但較大的epoch下,可能會有很多裝置無法按時完成訓練。無論是直接drop掉這部分使用者端的模型還是直接利用這部分未完成的模型來進行聚合,都將對最終模型的收斂造成不好的影響。
  • 資料異質性:不同裝置中資料可能是非獨立同分布的。如果資料是獨立同分布的,那麼本地模型訓練較多的epoch會加快全域性模型的收斂;如果不是獨立同分布的,不同裝置在利用非IID的本地資料進行訓練並且訓練輪數較大時,本地模型將會偏離初始的全域性模型。

II. FedProx

為了緩解上述兩個問題,本文作者提出了一個新的聯邦學習框架FedProx。FedProx能夠很好地處理異質性。

定義一:

簡單來說,每個使用者端都是優化所有樣本的損失和,這個是正常的思路,讓全域性模型在本地資料集上表現更好。

但如果裝置間的資料是異質的,每個使用者端優化之後得到的模型就與初始時伺服器分配的全域性模型相差過大,本地模型將會偏離初始的全域性模型,這將減緩全域性模型的收斂。

為了有效限制這種偏差,本文作者提出,裝置 k k k在本地進行訓練時,需要最小化以下目標函數:

作者在FedAvg損失函數的基礎上,引入了一個proximal term,我們可以稱之為近端項。引入近端項後,使用者端在本地訓練後得到的模型引數 w將不會與初始時的伺服器引數 wt偏離太多。

觀察上式可以發現,當  μ=0時,FedProx使用者端的優化目標就與FedAvg一致。

這個思路其實還是很常見的,在機器學習中,為了防止過調節,亦或者為了限制引數變化,通常都會在原有損失函數的基礎上加上這樣一個類似的項。比如在線上學習中,我們就可以新增此項來限制更新前後模型引數的差異。

FedProx的演演算法虛擬碼:

通過觀察這個步驟可以發現,FedProx在FedAvg上做了兩點改進:

引入了近端項,限制了因為資料異質性導致的模型偏離。引入了不精確解,各個使用者端不再需要訓練相同的輪數,只需要得到一個不精確解,這有效緩解了某些裝置的計算壓力。

III. 實驗

圖1給出了資料異質性對模型收斂的影響:

上圖給出了損失隨著通訊輪數增加的變化情況,資料的異質性從左到右依次增加,其中 μ = 0 表示FedAvg。可以發現,資料間異質性越強,收斂越慢,但如果我們讓 μ>0,將有效緩解這一情況,也就是模型將更快收斂。

圖2:

左圖:E增加後對μ=0情況的影響。可以發現,太多的本地訓練將導致本地模型偏離全域性模型,全域性模型收斂變緩。

中圖:同一資料集,增加μ後,收斂將加快,因為這有效緩解了模型的偏移,從而使FedProx的效能較少依賴於 E。

作者給出了一個trick:在實踐中,μ可以根據模型當前的效能自適應地選擇。比較簡單的做法是當損失增加時增加 μ,當損失減少時減少μ。

但是對於 γ,作者貌似沒有具體說明怎麼選擇,只能去GitHub上研究一下原始碼再給出解釋了。

IV. 總結

資料和裝置的異質性對傳統的FedAvg演演算法提出了挑戰,本文作者在FedAvg的基礎上提出了FedProx,FedProx相比於FedAvg主要有以下兩點不同:

考慮了不同裝置通訊和計算能力的差異,並引入了不精確解,不同裝置不需要訓練相同的輪數,只需要得到一個不精確解即可。引入了近端項,在資料異質的情況下,限制了本地訓練時模型對全域性模型的偏離。

以上就是FedProx異質網路的聯邦優化經驗總結的詳細內容,更多關於FedProx異質網路聯邦優化的資料請關注it145.com其它相關文章!


IT145.com E-mail:sddin#qq.com