QSGD: Communication-Efficient SGD via Gradient Quantization and Encoding

QSGD: Communication-Efficient SGD via Gradient Quantization and Encoding

Dan Alistarh, etc

Intro

分布式的SGD训练方法:每一个iteration,master先从woker接收graident,然后更新gradient,最后将gradient广播给所有的worker。

为了减少communication,一个方法是采用lossy compression of the gradients,也就是减少表达的精度。一个极端的情况是采用 1BitSGD,将gradient的每一部分都只用一个bit表示。

这篇paper提出了Quantized SGD(QSGD),探究在使用不同n-bit进行压缩的时候,communication和convergence的trade-off。

Quantized Stochastic Gradient Descent (QSGD)

quantization function用$$Q_s(v)$$表示,其中$$s$$是quantization level。

对于任意$$v \in \mathbb{R}^n$$(即gradient)

$$ Q_s(v_i) = | v |_2 \cdot sgn(v_i) \cdot \xi_i(v,s)

$$

另$$0 \le l < s$$,且$$\xi$$定义是一个分段函数。

  • 有$$\frac{l}{s} - \frac{|v_i|}{|v|_2}$$的概率,$$\xi_i(v,s) = l/s$$
  • 有$$\frac{|v_i|}{|v|_2} - \frac{l}{s}$$的概率,$$\xi_i(v,s) = (l+1)/s$$

$$[l/s, (l+1)/s]$$就是当前$$v_i$$所在地quantization interval。

results matching ""

    No results matching ""