對拜占庭攻擊魯棒的異分佈資料分佈學習的梯度更新方法RSA
主體內容
這篇文章主要是在說,當在distributed leanring
存在Byzantine attack
,即可以向中央伺服器傳送任何內容導致最終結果出現bias
,以及各個client
之間不滿足同分布的假設下該如何進行學習。
文章的formula
如下:
作者把中央伺服器的引數和每個客戶的引數分隔開,最後通過\(x_0=x_i\)的約束來同一兩者。但是上面這個式子是無法優化的,作者近似出下面的式子,
作者證明了當\(\lambda\)足夠大的時候,上面兩個式子的最優解是一樣的。在優化的時候,對\(x_i\)和\(x_0\)分別進行優化,它們各自的更新公式如下:
作者這樣設計的演算法有下面這樣的優勢:
- 同樣面對
Byzantine attack
,相比於計算geometric mean
之類的aggregation method
這樣的更新方式更為簡便 - 演算法設計時考慮了異分佈的情況,更貼合實際
client
和server
的引數不一定相同,client
可以保留personal
的引數
定理證明
Proposition 1
這個命題是在說,一個p-norm
的subgradient
集合等於另一個集合。
集合相等的證明需要證明兩個集合中的元素都相同,或者證明兩個集合相互包含。
作者首先根據subgradient
的定義證明了凡是屬於\(\{z\in R^d:<z,x>=\Vert x\Vert_p, \Vert z\Vert_b\leq 1\}\)
在證明\(\partial_x\Vert x\Vert_p\)的元素都屬於\(\{z\in R^d:<z,x>=\Vert x\Vert_p, \Vert z\Vert_b\leq 1\}\)上,作者首先找到一個特殊的\(y=\Vert x\Vert_p x_z\)來得到\(\Vert x\Vert_p\Vert z\Vert_b=<z,x>\)。再通過對\(y\)進行特殊的賦值來得到\(\Vert z\Vert_b=1\)。需要注意的是p-norm
在\(0\)處需要分開討論。
Theroem 1
定理一是在說,當\(\lambda\)足夠大的時候,兩個formula
得到的結果是一樣的。
自己的想法:客戶的目標函式都是
convex
的,加總得到的中央伺服器的目標函式也是convex
的,那麼一定存在使得中央伺服器最優的引數\(w^*\),然後中央伺服器\(w^*\)廣播出去,每個client
得到\(w^*\)。在我之前的理解下,如果client
的資料是異分佈的,那麼他們有不同的行為習慣,那麼應該得到不同的最後引數\(w^*_k\)。例如,一個客戶喜歡自行車上班,另一個客戶喜歡公交車上班,那麼在給兩人推薦的路線就應該是不同的。但是按照上面的分析,每個client
得到的最終引數是相同的。我在想異分佈和個性化到底存在什麼聯絡?
這個證明特別有意思,
首先作者證明了\(\nabla E\Vert F(\tilde{x}^*, \xi_i) \Vert\in \lambda \Vert 0\Vert_p\),然後因為\(\lambda \Vert 0\Vert_p\)這個集合是對稱的,就得到了(20),將所有的\(i\)彙總得到(21)。這個(21)的式子會利用第一個formula
中的式子進行代換,
然後就得到了\(0\in \nabla f_0(\tilde{x}^*)+\sum\limits_{i\in\mathcal{R}} \lambda\partial \Vert \tilde{x}^*- \tilde{x}^*\Vert\)集合,那就證明\([\tilde{x}^*]\)是第二個formula
的解。
其實這個定理不很直接易得的,第二個formula
是第一個formula
的slack版本,那麼第一個都得到了那麼第二個也是最優的。
Theorem 2
定理二涉及的就是最終收斂性的證明。終於到達最後的收斂性證明了,其實收斂性證明也是有規範可循的。
因為作者這裡的\(x=[x_i; x_0]\),所以client
和server
都需要證明一下啊但是基本上大同小異。
先來看regular work的update rule,其中\(A\)項是我們想要保留的,剩下的\(B\)、\(C\)和\(D\)都要進行放縮,要用到假設的convex
,strongly-convex
,bounded variance of gradient
等假設來進行。
首先來看\(B\)項,因為涉及了\(E\Vert \nabla F(x_i^k, \xi_i^k)\Vert^2\),首先不希望其中跟樣本有關係然後我們假設的Bounded variance可以用到,
得到這樣之後,雖然跟\(\nabla E[F(x_i^k, \xi_i^k)]\)與樣本沒有關係了但是形式上基本沒有改變。仍然要分離\(\nabla E[F(x_i^k, \xi_i^k)]\)和\(\lambda \partial_{x_i} \Vert x_i^k-x_0^k\Vert_p\),引入\(E[\nabla F(x_i^*, \xi_i^k)]+\lambda \partial_{x_i} \Vert x_i^*-x_0^*\Vert_p=0\)得到
其中最後一個不等式用到了Proposition 1,即次梯度\(z\)滿足\(\Vert z \Vert_b\leq 1\)。
再對\(C\)項進行放縮,在對這一項進行放縮時看形勢可以用到\(L\) smooth或者\(\mu\) strongly convex的假設,在進行縮放時,先進行拆分,變為
然後可以再利用[2]中p66中的定理,可以得到
其中第二個不等式通過了對學習率\(\alpha\)的限制得到。化簡結果中第一項是我們要保留的,第二項是一個誤差,第三項還需要進行再次處理。
現在轉向server
端的引數更新,證明方式大同小異,
同樣將更新規則帶入整理得到四項,對於第二項和第三項,與regular worker
不同,要將Byzantine
的client
去除掉,再利用同樣的縮放技巧。對於第四項,則直接利用AM-GM inequality
可以得到
server
的式子縮放整理可以得到
無論是client
還是server
最後的式子中都有一個\(\E<\lambda\sum\limits_{i\in\mathcal{R}}\partial_{x}\Vert x^k_0 - x^k_i\Vert_p-\lambda\sum\limits_{i\in\mathcal{R}}\partial_x\Vert x_0^*-x_i*\Vert, x^k-x^*>\)的東西,作者證明了這個東西是大於\(0\)的,減去一個大於\(0\)的項直接進行捨棄就放大了。作者設計瞭如下函式,通過\(g(x)\)是凸函式證明了這件事情
最終得到的結果就是下面這個樣子
作者在這裡討論了學習率\(\aplha\)是固定值還是跟隨步數逐漸縮小的值,至於為什麼學習率要減小呢,可以看看SVRG(Stochasitc Variance Reduce Gradient)[3]。如果是採用固定學習率的話,那麼直接可以telescopic cancellation
就可以得到,如果是隨著步數變化的學習率的話(一般是\(\frac{\alpha}{t+1}\)這種形式),就需要通過數學歸納法來進行了。
文章最後說的\(\frac{1}{\sqrt{k}}\)函式值收斂好吧,根據convex和\(\mu\) strongly convex一轉化應該就OK了。
總結和心得
- 作者這樣
formula
給個性化的引數提供了另一種思路,但是個性化和全域性最優的\(w^*\)到底存在什麼聯絡還需要進一步探究。 - 收斂性證明的格式基本如上所示,常用到
AM-GM
,holder-inequality
,\(\Vert a-b\Vert^2 \leq 2 \Vert a\Vert^2 + 2\Vert b\Vert^2\),在證明中會用到學習率\(\eta\)的條件來消除某些不好處理的項。如果學習率是變動的那麼則要使用歸納法。