【流行前沿】Communication Efficient Federated Learning with Adaptive Quantization

今天分享一篇研究联邦学习中量化位数设计的文章,作者YUZHU MAO来自清华深圳研究院,文章发表在ACM Trans. Intell. Syst. Technol. 2022上。

故事的起源当然还是communication as a bottleneck了,但是这篇作者将通信内容的增加归根于安全计算。作者先大谈隐私保护在联邦学习中的重要性,包括一些常用安全计算的方法一一点出,然后笔锋一转开始说这些方法带来的通信开销

However, high-dimensional neural networks and extra security masks[8, 16, 31] may lead to high communication overhead, which becomes a main bottleneck of FL systems.

这既强调了联邦学习的安全性,同时又点名了了量化的重要性,是比较聪明的写法。

在文章结构上,作者选择了先介绍具体算法(包括threshold的取值),然后再进行收敛性分析,与一般先收敛性然后据此优化不同。这样安排相当于隐藏了参数设计的原因,直接提出调好的参数了。如果审稿人反问有没有更好的参数设置?恐怕就不好回答了。

整篇文章的思路主要是收到LAQ的启发,即如果有些梯度的用户不重要,那么可以跳过这些用户的上传,从而节省通信开销。

Sun et al. proposed a gradient innovation-based Lazily Aggregated Quantized (LAQ) gradient method, which utilizes the differences between local loss functions and skips the transmission of slowly-varying quantized gradients[15].

那么具体哪些用户不重要呢?LAQ的作者认为那些变得慢的梯度不重要。

LAQ的作者考虑了两个方面:量化误差和模型的更新量。如果量化后的模型满足下列条件,那就值得上传,否则可以不上传

\[\left\|Q_{b}\left(\hat{g}_{m}^{k-1}\right)-Q_{b}\left(g_{m}^{k}\right)\right\|_{2}^{2} \geq \frac{1}{\alpha^{2} M^{2}} \sum_{d=1}^{D} \xi_{d}\left\|\theta^{k+1-d}-\theta^{k-d}\right\|_{2}^{2}+3\left(\left\|\varepsilon_{b}\left(\hat{g}_{m}^{k-1}\right)\right\|_{2}^{2}+\left\|\varepsilon_{b}\left(g_{m}^{k}\right)\right\|_{2}^{2}\right) \]

而在这篇文章中,作者又再次基础上做了两点改进:

第一个是从每个用户固定的量化比特数细化到了不同的比特数。

\[\begin{aligned} &\left\|Q_{\hat{b}_{m}^{k-1}}\left(\hat{g}_{m}^{k-1}\right)-Q_{b_{\max }}\left(g_{m}^{k}\right)\right\|_{2}^{2} \geq \\ &\frac{1}{\alpha^{2} M^{2}} \sum_{d=1}^{D} \xi_{d}\left\|\theta^{k+1-d}-\theta^{k-d}\right\|_{2}^{2}+3\left(\left\|\varepsilon_{b_{\max }-b+1}\left(\hat{g}_{m}^{k-1}\right)\right\|_{2}^{2}+\left\|\varepsilon_{b_{\max }-b+1}\left(g_{m}^{k}\right)\right\|_{2}^{2}\right) \end{aligned} \]

其实也就是将“传还是不传”细化到了“多传还是少传”。对于每一个用户,如果不断减少其量化比特数,取满足条件的最小比特数(也就是能反映出模型变化量\(\left\|\theta^{k+1-d}-\theta^{k-d}\right\|_{2}^{2}\)的最小比特数,再小则量化后梯度差\(\left\|Q_{\hat{b}_{m}^{k-1}}\left(\hat{g}_{m}^{k-1}\right)-Q_{b_{\max }}\left(g_{m}^{k}\right)\right\|_{2}^{2}\)太小,反应不出模型变化量,同时带来的噪声太大了)

第二个是考虑每个用户有一定概率掉线dropout。因为掉线后上传的梯度就是零,为了保证期望是无偏的,所以将真实上传的梯度进行放大

\[E\left[Q_{b_{m}^{k}}\left(g_{m}^{k}\right)\right]=(1-p) \cdot\left(Q_{b_{m}^{k}}\left(g_{m}^{k}\right) /(1-p)\right)+p \cdot 0=Q_{b_{m}^{k}}\left(g_{m}^{k}\right) \]

但其实本质上,这个操作是为了保证相邻两次上传的梯度并不会太大,从而一定程度上减少了上传梯度的方差

The intuitive explanation for gradient amplification is that the loss function \(f_m\) is smooth, which means the new update \(Q_{b_{m}^{k}}\left(g_{m}^{k}\right)\) tends to be approximate to recent previous updates that may have been lost due to client dropouts.

作者讲完了具体方法,自然就要讲合理性,这就来到了收敛性分析。作者的分析建立在Lyapunov function之上,似乎与smooth那一套不太相同,值得参考。同时一个收敛性证明有一个问题。前文作者考虑了异构的数据分布,但是在收敛性证明的时候,考虑的又是唯一的最优点,似乎与常见的异构条件有所差异。

总的来说,这篇文章的贡献并不是很大,主要还是继承了LAQ的思想。不过其收敛性分析似乎比较扎实,可以作为范例进行参考。

posted @ 2022-07-24 18:35  木坑  阅读(445)  评论(0编辑  收藏  举报