The Non-IID Data Quagmire of Decentralized Machine Learning閱讀筆記
簡介
機器學習演算法需要的資料往往會在不同的裝置上產生,並且將資料集中起來是非常困難的,因此,分散式計算就成為了一種可行性方案。但分散式的計算學習會出現各種各樣的問題,如下:
困難
- 分散式訓練會導致不同裝置訓練出來的模型具有不同的分佈特性,例如小明喜歡貓,小紅喜歡狗,若進行圖片分類,小明的模型對識別貓的效果非常好,但識別狗的效果並不好。
- 分散式訓練的不同訓練裝置之間會進行頻繁的通訊,而通訊時間對效能的影響十分嚴重
作者對以上的問題進行的非常細緻的研究,並提出了他們在實驗過程中的一些發現。
實驗發現
-
Label distribution skew很常見
Label distribution skew:不同客戶端的\(P_i(y)\)
以MNIST資料集為例,Client1中含有90%的數字1圖片,其餘10%隨機;Client2中含有90%的數字7圖片,其餘10%隨機;即\(P_i(y)\)標籤分佈不同。而當給定識別結果7時,對應的特徵大概率都是7的特徵.
-
Label distribution skew對Depp Neural Network的影響十分嚴重
-
資料the degree of skew對模型的影響十分嚴重,是一個決定性因素
解決方案:SkewScout
作者根據以上的困難與實驗發現,提出了一種解決方案:SkewScout
- 調整通訊頻率來調整模型的精度損失
- 通過Group Normalization來有效提高準確率
SkewScout
Overview of SkewScout
作者將SkewScout設計為一個通用模組,可以與不同的分散學習演算法、ML訓練框架和ML應用程式無縫整合
SkewScout通過三個模組來實現兩個效果,最後達到目的:
- Estimating the degree of skew. 在簡介的實驗發現中提到,the degree of skew對模型的影響十分嚴重,是一個決定性的因素。因此,為了知道這個資訊,SkewScout週期性地通過Model Traveling將模型從一個客戶端傳送到另一個客戶端中測試準確度accuracy. 由於我們已經知道該模型在其原始資料分割槽中的訓練精度accuracy,我們可以推斷在遠端資料分割槽中的精度損失accuracy loss
- Adaptive communication control. 根據已經估計到的精度損失accuracy loss,SkewScout動態的調整通訊的次數,從而保證模型的質量。SkewScout將其看作一個最優化問題,該優化問題旨在最小化資料分割槽之間的通訊,同時將精度損失保持在合理的閾值內。
Details of SkewScout
Accuracy Loss
資料分割槽之間的Accuracy Loss代表了模型之間的差異。作者用[Gaia](Gaia Geo-Distributed Machine Learning Approaching LAN Speeds閱讀筆記 - Aegsteh - 部落格園 (cnblogs.com))研究了IID分佈和Non-IID分佈下,超引數選擇為=2%、5%、10%、20%時的Accuracy Loss. 作者發現,從IID分佈(Accuracy Loss平均0.4%)到Non-IID設定分佈(Accuracy Loss平均39.6%),Accuracy Loss急劇變化,而在Non-IID設定下,低閾值的準確度損失較小。
Communication Control
Communication Control的目標是保持模型質量,同時最小化資料分割槽之間的通訊。SkewScout通過解決一個優化問題來實現這一點,該問題旨在最小化通訊,同時將精度損失保持在一個小閾值以下,以便控制Non-IID資料分割槽導致的模型差異。Model Traveling估計精度損失後,SkewScout週期性地解決這個優化問題。目標函式:
\[\underset{\theta}{argmin} (\lambda_{AL}(max(0,AL(\theta) - \sigma_{AL})) + \lambda_{C}\frac{C(\theta)}{CM}) \]\(AL(\theta)\)是引數為\(\theta\)的精度損失,\(C(\theta)\)是引數為\(\theta\)時的通訊次數,\(CM\)時整個模型的通訊費用,\(\lambda_{AL},\lambda_{C}\)是超引數.
思考
優點:
- 通過Accuracy Loss量化了模型之間的差異性
- 通過平衡通訊次數來保證模型質量,即保持了模型質量,又減小了通訊所需要的時間
缺點:
- 只研究了Non-IID之中的Label Skew,對其他型別沒有進行研究
- Model Traveling之間可採用梯度壓縮排行進一步嘗試
一些問題:
- 通訊次數為什麼可以保證模型的質量