【流行前沿】聯邦學習 Federated Learning with Only Positive Labels
核心問題:如果每個使用者只有一類資料,如何進行聯邦學習?
Felix X. Yu, , Ankit Singh Rawat, Aditya Krishna Menon, and Sanjiv Kumar. "Federated Learning with Only Positive Labels." (2020).
簡述
在聯邦學習中,如果每個使用者節點上只有一類資料,那麼在本地訓練時會將任何資料對映到對應標籤,此時使用分散式SGD或FedAvg演算法學習分類器會導致整體學習失效。為了安全性,不能進行使用者間資料交換,甚至不能相互交換模型引數(否則很容易推斷出對方的資料型別)。這篇文章的想法是,將輸入和標籤通過嵌入(embedding)放入同一個高維空間,在使用者端使輸入和標籤距離儘量近,在伺服器端使標籤的相互距離儘量遠。模擬看來效果與集中資料後使用Softmax訓練相差無幾。
模型設定
這篇文章是收到了contrastive loss的啟發
\(\ell_{\mathrm{cl}}(f(\boldsymbol{x}), y)=\underbrace{\alpha \cdot\left(\boldsymbol{d}\left(g_{\boldsymbol{\theta}}(\boldsymbol{x}), \boldsymbol{w}_{y}\right)\right)^{2}}_{\ell_{\mathrm{cl}}^{\mathrm{pos}}(f(\boldsymbol{x}), y)}+\underbrace{\beta \cdot \sum_{c \neq y}\left(\max \left\{0, \nu-\boldsymbol{d}\left(g_{\boldsymbol{\theta}}(\boldsymbol{x}), \boldsymbol{w}_{c}\right)\right\}\right)^{2}}_{\ell_{\mathrm{cl}}^{\mathrm{neg}}(f(\boldsymbol{x}), y)},\)
也就是將loss分為兩個部分,分別表示在嵌入空間中,與標籤的距離儘量近,與非標籤的距離儘量遠。由於聯邦學習中接觸不到非標籤的位置,所以改在伺服器端用標籤間的距離代替這一操作。
其中兩個損失函式為\(\hat{\mathcal{R}}_{\operatorname{pos}}\left(\mathcal{S}^{i}\right) =\alpha \cdot\left(\boldsymbol{d}\left(g_{\boldsymbol{\theta}}(\boldsymbol{x}), \boldsymbol{w}_{y}\right)\right)^{2}\)和\(\operatorname{reg}_{\mathrm{sp}}(W)=\sum_{c \in[C]} \sum_{c^{\prime} \neq c}\left(\max \left\{0, \nu-\boldsymbol{d}\left(\boldsymbol{w}_{c}, \boldsymbol{w}_{c^{\prime}}\right)\right\}\right)^{2}\)
。為了節省在大量標籤中的遍歷開銷,在計算標籤距離時只考慮拉開最近的若干個標籤,因此損失函式修正為\(\operatorname{reg}_{\mathrm{sp}}^{\mathrm{top}}(W)=\sum_{c \in \mathcal{C}^{t}} \sum_{y \in \mathrm{e}^{\prime} \atop y \neq c}-\boldsymbol{d}^{2}\left(\boldsymbol{w}_{c}, \boldsymbol{w}_{y}\right) \cdot [ y \in \mathcal{N}_{k}(c) ]\)。在模擬中也體現瞭如果沒有用這個技巧,準確率甚至還會降低3%到5%。
理論保證
這篇文章的理論分析是比較有意思的,說明文章所提的訓練方式Federated Averaging with Spreadout (FedAwS)與資料集中時的效果相當。證明思路參考了該團隊的前作[1]。【這部分挖坑待補充】
[1] Reddi, Sashank J., Kale, Satyen, Yu, Felix X., Holtmann-Rice, Daniel Niels, Chen, Jiecao and Kumar, Sanjiv. "Stochastic Negative Mining for Learning with Large Output Spaces.." Paper presented at the meeting of the AISTATS, 2019.
模擬結果
文章用ResNets對CIFAR-10和CIFAR-100資料集、自主構建的三層MLP在有4K個標籤的AmazonCat等資料集上進行了驗證,在90%準確下下最多的標籤數達到了13K。均遠遠超過直接的FedAvg演算法,和集中資料的學習效果相當。
評價
新意10×有效性100×問題大小1 = 1000
- 我之前想這個問題的時候,只侷限在了Softmax啟用函式上,導致思考的最終輸出只是一維的
- 新增正則項來修改loss是不亞於修改網路結構的創新方法
- embedding等來源於NLP中的內容現在很火