Note_Training time minimization for federated edge learning with optimized gradient quantization and

Training time minimization for federated edge learning with optimized gradient quantization and
bandwidth allocation
Peixi LIU1,3, Jiamo JIANG†‡2, Guangxu ZHU†‡3,LeiCHENG4,5, Wei JIANG1,WuLUO1,Ying DU2, Zhiqin WANG2
Frontiers of Information Technology & Electronic Engineering
CCF C/SCI 3区 刊
2022

一、动机和贡献

动机:在 “同步 FL” 中,如果使用量化技术缓解通信压力,通常会有两个问题:1)若使用低精度量化尽可能减少传输数据量,会减少每轮的执行时间(由于通信时间的减少),但是却会导致量化误差增大,使得总轮数增加;2)若使用高精度量化尽可能保持低量化误差,会减少总轮数,但却相应的增加了通信时间。另一方面,由于client在 “计算能力”(CPU频率) 中有着较大差异,因此对所有client都使用相同的量化精度显然是不合理的。

贡献:这篇文章的主要解决问题是:如何对不同 “计算能力”的client分配相应的通信带宽并确定相应的量化精度,以达到使用最少通信轮数实现指定模型精度的目的。具体贡献如下:

  • 训练时间” 的理论分析:难点是如何分析“总执行轮数”,这篇文章分析了给定量化精度下,模型达到指定优化精度所需要的总轮数的上界。但是由于理论结果太严格,因此这篇文章后续使用 “数据/模型驱动拟合法data-and-model-driven fitting method” 来估计总轮数。这样,就可以表示总训练时间;
  • 训练时间” 的最小化:这篇文章是要同时优化 “带宽分配”和“量化精度选择”,但是这个优化问题是非凸的,不能直接解决。因此,将上述问题拆分成两个子问题:1)固定量化精度下,带宽的分配问题(使用 双重二分查找解决);2)固定带宽下,量化精度的选择问题(使用 逐次凸逼近SCA 解决)。

注1:这篇文章将client“通信能力”也作为一个变量(通信带宽),是可以client进行指定的,而不是作为每个client固定的量,这与我们之前的想法是不同的。
注2:量化精度每个client在同一个时间是相同的,即量化精度只是关于时间的函数。

二、算法

2.1 预备知识

无线传输模型
定义sever和client k k k 之间的 信道传播系数channel propagation coefficient 为:
h k = ϕ k h ˉ k , h_{k}=\sqrt{\phi_{k}\bar{h}_k}, hk=ϕkhˉk ,其中, ϕ k \phi_k ϕk 表示大尺度传播因素(随时间变化保持不变的); h ˉ k \bar{h}_k hˉk 表示小尺度传播因素,满足标准正太分布 h ‾ k ∼ C N ( 0 , 1 ) \overline{h}_k\sim\mathcal{CN}(0,1) hkCN(0,1)(随时间变化而变化的)。另外,这篇文章假设 信道传播系数只被sever知晓哦啊。

因此,定义 client k k k遍历容量ergodic capacity 为:
R k = E h k [ b k log ⁡ 2 ( 1 + p k ∣ h k ∣ 2 b k N 0 ) ] R_k=\mathbb{E}_{h_k}\left[b_k\log_2\left(1+\frac{p_k|h_k|^2}{b_kN_0}\right)\right] Rk=Ehk[bklog2(1+bkN0pkhk2)]其中, b k b_k bk 表示分配给client k k k 的频率带宽,且满足 ∑ k = 1 K b k = B 0 \sum_{k=1}^K b_k=B_0 k=1Kbk=B0(这个就是需要优化的带宽); p k p_k pk 表示 client k k k 的传输能量; N 0 N_0 N0 表示噪声。假设有 S S S bits 数据需要传输,那么时间可以计算为:
T = S R k . T = \frac{S}{R_k}. T=RkS.

注:在不同client的传输能力方面,本文本质上假设只有带宽 b k b_k bk 是可变且需要优化的,其他系数,如 p k , h k , N 0 p_k,h_k,N_0 pk,hk,N0 是相同的。

2.2 训练时间分析

假设 T d T_d Td 表示一轮更新所需要的时间,那么:
T k c o m p + T k c o m m ≤ T d T_{k}^{\mathrm{comp}}+T_{k}^{\mathrm{comm}}\leq T_{\mathrm{d}} Tkcomp+TkcommTd其中, T k c o m p T_{k}^{\mathrm{comp}} Tkcomp 表示执行SGD的时间; T k c o m m T_{k}^{\mathrm{comm}} Tkcomm 表示传输量化后模型的时间。假设 N ϵ N_{\epsilon} Nϵ 表示达到 ϵ − \epsilon- ϵ模型精度时所需要的最少轮数,那么总训练时间可以表示为:
T = N ϵ T d . T=N_{\epsilon}T_d. T=NϵTd.

注:原文中认为 T k c o m p T_{k}^{\mathrm{comp}} Tkcomp 表示SGD时间,但是这里应该也包括将全精度梯度量化所需要的时间。

定义 T k c o m p T_{k}^{\mathrm{comp}} Tkcomp
T k c o m p = ν f k , T_{k}^{\mathrm{comp}}=\frac{\nu}{f_{k}}, Tkcomp=fkν,其中, ν \nu ν 表示执行SGD的处理轮数; f k f_k fk 表示client k k k 的CPU主频。

定义 T k c o m m T_{k}^{\mathrm{comm}} Tkcomm
假设 S S S 表示量化后需要传输的总比特数, q q q 表示随机量化精度, d d d 表示梯度维数( g ∈ R d \boldsymbol{g}\in\mathbb{R}^{d} gRd),那么有如下关系:
S = ( 1 + log ⁡ 2 ( q + 1 ) ) d . S=(1+\log_2(q+1))d. S=(1+log2(q+1))d.因此,可以得到通信时间为:
T k c o m m = S R k . T_{k}^{\mathrm{comm}}=\frac{S}{R_{k}}. Tkcomm=RkS.

2.2.1 最少轮数 N ϵ N_{\epsilon} Nϵ 的估计

首先我们需要知道: N ϵ N_{\epsilon} Nϵ 的值只和量化精度 q q q 有关,与其他量无关。

原文给出定理:
Theorem 1:在量化精度 q ≤ 2 q\leq 2 q2 的条件下,当FL模型执行 N N N 轮更新后,损失函数的精度误差为:
E [ F ( w ( N ) ) ] − F ( w ∗ ) ≤ α κ N + 2 α κ − 1 ( L ∥ w ( 0 ) − w ∗ ∥ 2 + 2 Γ μ ) , \mathbb{E}\left[F\left(\boldsymbol{w}^{(N)}\right)\right]-F(\boldsymbol{w}_*)\leq\frac{{\color{Red}\alpha}\kappa}{N+2\alpha\kappa-1}\left(L\left\|\boldsymbol{w}^{(0)}-\boldsymbol{w}_*\right\|^2+\frac{2\Gamma}{\mu}\right), E[F(w(N))]F(w)N+2ακ1ακ(L w(0)w 2+μ),其中, α = d q K + 1 , κ = L μ , F δ = F ( w ∗ ) − 1 K ∑ k = 1 K F k ∗ , F k ∗ = min ⁡ w F k ( w ) , Γ = 2 L F δ + 1 K ∑ k = 1 K δ k 2 {\color{Red}\alpha}=\frac{\sqrt d}{{\color{Red}q}K}+1,\kappa=\frac{L}{\mu},F_{\delta}=F(\boldsymbol{w}_{*})-\frac{1}{K}\sum_{k=1}^{K}F_{k}^{*}, F_{k}^{*}=\operatorname*{min}_{\boldsymbol{w}}F_{k}(\boldsymbol{w}),\Gamma=2LF_{\delta}+\frac{1}{K}\sum_{k=1}^{K}\delta_{k}^{2} α=qKd +1,κ=μL,Fδ=F(w)K1k=1KFk,Fk=minwFk(w),Γ=2LFδ+K1k=1Kδk2,且 w ( 0 ) \boldsymbol{w}^{(0)} w(0) 表示初始权重。

虽然 Theorem 1 给出了理论上界,但是却有两个缺点:1)由于证明过程中进行太多放缩,导致上界是偏大的,也就意味着实际中可能陷入局部最优;2)一些实际的模型参数,例如 μ , L , F δ , w ∗ , Γ \mu,L,F_{\delta},\boldsymbol{w}_{*},\Gamma μ,L,Fδ,w,Γ 是不容易获取的。

因此这篇文章采用了 “数据/模型驱动法” 来估计 N ϵ N_{\epsilon} Nϵ 的值,核心思想是:进行一定程度的预训练,得到估计值。具体做法如下:

  1. 首先根据 Theorem 1 定义 “上界函数” :
    U ^ ( N ) = α κ ( L ∥ w 0 − w ∗ ∥ 2 + 2 Γ μ ) N + 2 α κ − 1 . \hat{U}(N)=\frac{\alpha\kappa\left(L\left\|\boldsymbol{w}_0-\boldsymbol{w}_*\right\|^2+\frac{2\Gamma}\mu\right)}{N+2\alpha\kappa-1}. U^(N)=N+2ακ1ακ(Lw0w2+μ).因为只关心 N N N q q q(即 N N N α \alpha α)的关系,上式有两个特点:1) U ^ ( N ) \hat{U}(N) U^(N) 是递减函数,且当 N → ∞ N\rightarrow\infty N U ^ ( N ) → 0 \hat{U}(N)\rightarrow 0 U^(N)0;2) U ^ ( N ) \hat{U}(N) U^(N) 总体是分数形式,且分子分母都随 α \alpha α 做线性增加。因此重新定义 U ^ ( N ) \hat{U}(N) U^(N) 为:
    E [ F ( w ( N ) ) ] − F ( w ∗ ) = α A + D n + α B + C ≜ U ( N ) \mathbb{E}\left[F(\boldsymbol{w}^{(N)})\right]-F(\boldsymbol{w}_{*})=\frac{\alpha A+D}{n+\alpha B+C}\triangleq U(N) E[F(w(N))]F(w)=n+αB+CαA+DU(N)其中, A > 0 , B > 0 , C ≥ 0 , D ≥ 0 A>0,B>0,C\geq0,D\geq0 A>0,B>0,C0,D0。因此,只需要通过预训练估计得出 A , B , C , D A,B,C,D A,B,C,D 的值,就可以得出 N ϵ N_{\epsilon} Nϵ(即 U ( N ) U(N) U(N))。

  2. 接下来通过 “数据/模型驱动法”得出 A , B , C , D A,B,C,D A,B,C,D。假设 N ~ \tilde{N} N~表示预设的预训练轮数,且: X i = α i A + D , Y i = α i B + C , Z = F ( w ∗ ) , ∀ i ∈ { 1 , 2 } X_i=\alpha_iA+D,Y_i=\alpha_iB+C, Z=F(\boldsymbol{w}_{*}),\forall i\in\{1,2\} Xi=αiA+D,Yi=αiB+C,Z=F(w),i{1,2},那么根据 U ^ ( N ) \hat{U}(N) U^(N) 定义有:
    F i , n − Z ≈ X i n + Y i , n ∈ [ 1 , N ~ ] , F_{i,n}-Z\approx\frac{X_{i}}{n+Y_{i}},n\in[1,\tilde{N}], Fi,nZn+YiXi,n[1,N~],其中, α i = d q i K + 1 \alpha_{i}=\frac{\sqrt{d}}{q_{i}K}+1 αi=qiKd +1。(注:这里 i ∈ { 1 , 2 } i\in\{1,2\} i{1,2}是为了联立解出 A , B , C , D A,B,C,D A,B,C,D的值)。为了得到合适的 X i , Y i , Z X_i,Y_i,Z Xi,Yi,Z 的值,一个有效的做法是解决如下非线性回归问题:
    min ⁡ X i , Y i , Z ∑ i = 1 2 ∑ n = 1 N ~ ( ( F i , n − Z ) ( n + Y i ) − X i ) 2 . \min_{X_{i},Y_{i},Z}\sum_{i=1}^{2}\sum_{n=1}^{\tilde{N}}\left((F_{i,n}-Z)(n+Y_{i})-X_{i}\right)^{2}. Xi,Yi,Zmini=12n=1N~((Fi,nZ)(n+Yi)Xi)2.注意到上述优化问题在 固定 Z Z Z 的条件下 可以转化为两个线性回归问题:
    min ⁡ X i , Y i ∑ n = 1 N ~ ( ( F i , n − Z ) ( n + Y i ) − X i ) 2 . \min\limits_{X_i,Y_i}\sum\limits_{n=1}^{\tilde{N}}\left((F_{i,n}-Z)(n+Y_i)-X_i\right)^2. Xi,Yiminn=1N~((Fi,nZ)(n+Yi)Xi)2.根据线性回归中的“最小二乘法”解出:
    X i = ∑ n = 1 N ~ χ i , n ∑ n = 1 N ~ ψ i , n 2 − ∑ n = 1 N ~ χ i , n ψ i , n ∑ n = 1 N ~ ψ i , n N ∑ n = 1 N ~ ψ i , n 2 − ( ∑ n = 1 N ~ ψ i , n ) 2 , Y i = ∑ n = 1 N ~ χ i , n ∑ n = 1 N ~ ψ i , n − N ∑ n = 1 N ~ χ i , n ψ i , n N ∑ n = 1 N ~ ψ i , n 2 − ( ∑ n = 1 N ~ ψ i , n ) 2 . X_i=\frac{\sum_{n=1}^{\tilde{N}}\chi_{i,n}\sum_{n=1}^{\tilde{N}}\psi_{i,n}^{2}-\sum_{n=1}^{\tilde{N}}\chi_{i,n}\psi_{i,n}\sum_{n=1}^{\tilde{N}}\psi_{i,n}}{N\sum_{n=1}^{\tilde{N}}\psi_{i,n}^{2}-\left(\sum_{n=1}^{\tilde{N}}\psi_{i,n}\right)^{2}},\\ Y_i=\frac{\sum_{n=1}^{\tilde{N}}\chi_{i,n}\sum_{n=1}^{\tilde{N}}\psi_{i,n}-N\sum_{n=1}^{\tilde{N}}\chi_{i,n}\psi_{i,n}}{N\sum_{n=1}^{\tilde{N}}\psi_{i,n}^{2}-\left(\sum_{n=1}^{\tilde{N}}\psi_{i,n}\right)^{2}}. Xi=Nn=1N~ψi,n2(n=1N~ψi,n)2n=1N~χi,nn=1N~ψi,n2n=1N~χi,nψi,nn=1N~ψi,n,Yi=Nn=1N~ψi,n2(n=1N~ψi,n)2n=1N~χi,nn=1N~ψi,nNn=1N~χi,nψi,n.其中, χ i , n = ( F i , n − Z ) n , ψ i , n = F i , n − Z \chi_{i,n}=(F_{i,n}-Z)n,\psi_{i,n}=F_{i,n}-Z χi,n=(Fi,nZ)n,ψi,n=Fi,nZ。对于 Z Z Z是变量的情况,可以在 F i , N ~ F_{i,\tilde{N}} Fi,N~ 周围进行 一维搜索得到。这样, A , B , C , D A,B,C,D A,B,C,D 的值可以由 { X i } , { Y i } \{X_i\},\{Y_i\} {Xi},{Yi} 表示为:
    { A = X 1 − X 2 α 1 − α 2 , B = Y 1 − Y 2 α 1 − α 2 , C = α 2 Y 1 − α 1 Y 2 α 2 − α 1 , D = α 2 X 1 − α 1 X 2 α 2 − α 1 . \begin{cases}A=\dfrac{X_1-X_2}{\alpha_1-\alpha_2},\\B=\dfrac{Y_1-Y_2}{\alpha_1-\alpha_2},\\C=\dfrac{\alpha_2Y_1-\alpha_1Y_2}{\alpha_2-\alpha_1},\\D=\dfrac{\alpha_2X_1-\alpha_1X_2}{\alpha_2-\alpha_1}.\end{cases} A=α1α2X1X2,B=α1α2Y1Y2,C=α2α1α2Y1α1Y2,D=α2α1α2X1α1X2.

  3. 因此,可以得到 N ϵ N_{\epsilon} Nϵ 的估计值为:
    N ϵ = ⌈ ( d q K + 1 ) ( A ϵ − B ) + D ϵ − C ⌉ . N_\epsilon=\left\lceil\left(\frac{\sqrt{d}}{qK}+1\right)\left(\frac{A}{\epsilon}-B\right)+\frac{D}{\epsilon}-C\right\rceil. Nϵ=(qKd +1)(ϵAB)+ϵDC.

2.3 训练时间最小化

本文通过优化 “量化精度”(与每轮训练时间和总训练轮数都相关) 和 “带宽分配”(只和每轮训练时间相关) 最小化训练时间。

上述问题可以表示为:
( P 1 ) min ⁡ q ∈ Z + , { b k } T d N ϵ s . t .   T k c o m p + T k c o m m ≤ T d ( ∀ k ∈ [ K ] ) , ∑ k = 1 K b k = B 0 , q ≥ 2. \begin{gathered} (\mathrm{P}1)\quad\operatorname*{min}_{q\in\mathbb{Z}^{+},\{b_{k}\}}T_{\mathrm{d}}N_{\epsilon} \\ \mathrm{s.t.~}T_{k}^{\mathrm{comp}}+T_{k}^{\mathrm{comm}}\leq T_{\mathrm{d}}(\forall k\in[K]), \sum_{k=1}^{K}b_{k}=B_{0}, q \geq2. \end{gathered} (P1)qZ+,{bk}minTdNϵs.t. Tkcomp+TkcommTd(k[K]),k=1Kbk=B0,q2.由于上述优化问题涉及到两个控制变量( q q q { b k } \{b_k\} {bk}),因此直接解决是困难的。这篇文章中,作者将 问题(P1) 转化为两个子问题,具体来说是:

  • 固定量化精度 q q q,优化带宽分配 { b k } \{b_k\} {bk}:借用 双重二分查找技术
  • 固定带宽分配 { b k } \{b_k\} {bk},优化量化精度 q q q:借用 逐次凸逼近技术SCA

2.3.1 带宽分配优化

在固定带宽的条件下,问题(P1) 转化为:
( P 2 ) min ⁡ { b k } , T d T d s . t .   T k c o m p + T k c o m m ≤ T d ( ∀ k ∈ [ K ] ) , ∑ k = 1 K b k = B 0 . \begin{gathered}(\text{P}2)\quad\min_{\{b_k\},T_{\mathrm{d}}}T_{\mathrm{d}}\\\mathrm{s.t.~}T_k^\mathrm{comp}+T_k^\mathrm{comm}\leq T_\mathrm{d}(\forall k\in[K]),\sum_{k=1}^Kb_k=B_0.\end{gathered} (P2){bk},TdminTds.t. Tkcomp+TkcommTd(k[K]),k=1Kbk=B0.注意到 T k c o m m = S R k T_{k}^{\mathrm{comm}}=\frac{S}{R_{k}} Tkcomm=RkS,因此有:
( P 2 ) min ⁡ { b k } , T d T d s . t .   T k c o m p + S R k ≤ T d ( ∀ k ∈ [ K ] ) , ∑ k = 1 K b k = B 0 . . \begin{gathered}(\text{P}2)\quad\min_{\{b_k\},T_{\mathrm{d}}}T_{\mathrm{d}}\\\mathrm{s.t.~}T_k^\mathrm{comp}+\frac{S}{R_{k}}\leq T_\mathrm{d}(\forall k\in[K]),\sum_{k=1}^Kb_k=B_0.\end{gathered}. (P2){bk},TdminTds.t. Tkcomp+RkSTd(k[K]),k=1Kbk=B0..

根据 R k R_k Rk 定义,可以得到:这部分没有看懂
R k = − b k ln ⁡ 2 e b k θ k E i ( − b k θ k ) R_k=-\frac{b_k}{\ln2}\mathrm{e}^{b_k\theta_k}\mathrm{Ei}(-b_k\theta_k) Rk=ln2bkebkθkEi(bkθk)其中, θ k = N 0 p k ϕ k , E i ( x ) = ∫ − ∞ x e ρ ρ d ρ \theta_{k}=\frac{N_{0}}{p_{k}\phi_{k}},\mathrm{Ei}(x)=\int_{-\infty}^{x}\frac{\mathrm{e}^{\rho}}{\rho}\mathrm{d}\rho θk=pkϕkN0,Ei(x)=xρeρdρ。可以证明,函数 R k ( b k ) R_k(b_k) Rk(bk) 单调递增。

原文得到引理:
Lemma 1:问题(P2) 中的第一个约束条件可以代替为:
T k c o m p + T k c o m m = T d , ∀ k ∈ [ K ] T_k^{\mathrm{comp}}+T_k^{\mathrm{comm}}=T_\mathrm{d},\forall k\in[K] Tkcomp+Tkcomm=Td,k[K]因此,可以得到:
R k ( b k ) = S T d − T k c o m p , R_k(b_k)=\frac{S}{T_\mathrm{d}-T_k^\mathrm{comp}}, Rk(bk)=TdTkcompS,由于函数 R k ( b k ) R_k(b_k) Rk(bk)单调性,可以使用 “二分查找”(双重) 进行求解:

  • 外层二分查找:搜索 T d T_d Td 在范围 [ T d − , T d + ] [T_d^-,T_d^+] [Td,Td+],这里 T d − = max ⁡ k { T k c o m p } , T d + = max ⁡ k { T k c o m p + R k ( B 0 / K ) } T_{\mathrm{d}}^{-}=\operatorname*{max}_{k}\{T_{k}^{\mathrm{comp}}\},T_{\mathrm{d}}^{+}=\max_{k}\{T_{k}^{\mathrm{comp}}+R_{k}(B_{0}/K)\} Td=maxk{Tkcomp},Td+=maxk{Tkcomp+Rk(B0/K)}; 注:这里我认为有问题,应该是 T d + = max ⁡ k { T k c o m p + R k ( S R k ( B 0 ) ) } T_{\mathrm{d}}^{+}=\max_{k}\{T_{k}^{\mathrm{comp}}+R_{k}(\frac{S}{R_k(B_0)})\} Td+=maxk{Tkcomp+Rk(Rk(B0)S)}
  • 内层二分查找:根据公式 R k = − b k ln ⁡ 2 e b k θ k E i ( − b k θ k ) R_k=-\frac{b_k}{\ln2}\mathrm{e}^{b_k\theta_k}\mathrm{Ei}(-b_k\theta_k) Rk=ln2bkebkθkEi(bkθk)搜索 b k b_k bk,搜索范围 [ 0 , B 0 ] [0,B_0] [0,B0]

algorithm1

2.3.2 量化精度优化

这里先假设 p p p 是正实数进行优化。

在固定带宽的条件下,问题(P1) 可以转化为:
( P3 ) min ⁡ q T ~ s.t. ( T k c o m p + T k c o m m ) ( d q K H 1 + H 2 ) ≤ T ~ , q ≥ 2. \begin{aligned}(\text{P3})&\min_{q}\tilde{T}\\\text{s.t.}&(T_k^\mathrm{comp}+T_k^\mathrm{comm})\left(\frac{\sqrt{d}}{qK}H_1+H_2\right)\le\tilde{T},q\ge2.\end{aligned} (P3)s.t.qminT~(Tkcomp+Tkcomm)(qKd H1+H2)T~,q2.其中,引入 T ~ \tilde{T} T~ 是为了消除 N ϵ N_{\epsilon} Nϵ 的取上界操作; H 1 = A ϵ − B , H 2 = A + D ϵ − B − C H_{1}=\frac{A}{\epsilon}-B,H_{2}=\frac{A+D}{\epsilon}-B-C H1=ϵAB,H2=ϵA+DBC

使用 SCA 技术将院非凸问题,转化为局部凸问题进行求解。核心思路是:改变第一个约束条件。根据 T k c o m m = ( 1 + log ⁡ 2 ( 1 + q ) ) d R k T_k^\mathrm{comm}=\frac{(1+\log_2(1+q))d}{R_k} Tkcomm=Rk(1+log2(1+q))d,则第一个约束条件为:
( T k c o m p + ( 1 + log ⁡ 2 ( 1 + q ) ) d R k ) ( d q K H 1 + H 2 ) ≤ T ~ . \left(T_{k}^{\mathrm{comp}}+\frac{\left(1+\log_{2}(1+q)\right)d}{R_{k}}\right)\left(\frac{\sqrt{d}}{qK}H_{1}+H_{2}\right)\leq\tilde{T}. (Tkcomp+Rk(1+log2(1+q))d)(qKd H1+H2)T~.对等式两边取对数有:(对数的优势是可以将乘法变加法)
J k ( q ) − ln ⁡ ( q K ) − ln ⁡ T ~ ≤ 0 , J_k(q)-\ln(qK)-\ln\tilde{T}\leq0, Jk(q)ln(qK)lnT~0,其中, J k ( q ) = ln ⁡ ( T k c o m p + ( 1 + log ⁡ 2 ( 1 + q ) ) d R k ) + ln ⁡ ( q K H 2 + H 1 d ) J_{k}(q)=\ln\left(T_{k}^{\mathrm{comp}}+\frac{(1+\log_{2}(1+q))d}{R_{k}}\right)+\ln\left(qKH_{2}+H_{1}\sqrt{d}\right) Jk(q)=ln(Tkcomp+Rk(1+log2(1+q))d)+ln(qKH2+H1d )。可以证明 函数 J k ( q ) J_k(q) Jk(q) 是凹函数,那么根据一阶泰勒公式有:
J k ( q ) ≤ J k ( q ( r ) ) + J k ′ ( q ( r ) ) ( q − q ( r ) ) ≜ J ^ k ( q ) J_k(q)\leq J_k\left(q^{(r)}\right)+J_k^{\prime}\left(q^{(r)}\right)\left(q-q^{(r)}\right)\triangleq\hat{J}_k(q) Jk(q)Jk(q(r))+Jk(q(r))(qq(r))J^k(q)其中,导数 J k ′ ( q ( r ) ) J_k^{\prime}\left(q^{(r)}\right) Jk(q(r)) 为:
J k ′ ( q ( r ) ) = K H 2 q ( r ) K H 2 + H 1 d + 1 ln ⁡ 2 [ log ⁡ 2 ( 1 + q ( r ) ) + 1 d R k T k c o m m + 1 ] ( 1 + q ( r ) ) \begin{aligned} J_{k}^{\prime}\left(q^{(r)}\right)=\frac{KH_{2}}{q^{(r)}KH_{2}+H_{1}\sqrt{d}} +\frac{1}{\ln2\left[\log_{2}(1+q^{(r)})+\frac{1}{d}R_{k}T_{k}^{\mathrm{comm}}+1\right](1+q^{(r)})} \end{aligned} Jk(q(r))=q(r)KH2+H1d KH2+ln2[log2(1+q(r))+d1RkTkcomm+1](1+q(r))1因此,问题(P3) 可以是:
( P 3.1 ) q ( r + 1 ) = arg ⁡ min ⁡ q T ~ s.t.> J ^ k ( q ) − ln ⁡ ( q K ) − ln ⁡ ( T ~ ) ≤ 0 ( ∀ k ∈ [ K ] ) , q ≥ 2. \begin{aligned}(P3.1)\quad q^{(r+1)}=\arg\min_q\tilde{T}\\\text{s.t.>}\hat{J}_k(q)-\ln(qK)-\ln(\tilde{T})\leq0(\forall k\in[K]),q\geq2.\end{aligned} (P3.1)q(r+1)=argqminT~s.t.>J^k(q)ln(qK)ln(T~)0(k[K]),q2.这是一个 凸问题,可以通过 CVXPY 技术进行求解。

这里对凸问题还是凹问题的判断不是很清楚

algorithm2

2.3.3 联合算法

由于之前假设 q q q 是正实数,因此需要找到合适的正整数赋值给 q q q,这篇文章使用如下方法得到:
q ∗ = arg ⁡ min ⁡ q ∈ { ⌈ q ^ ⌉ − 1 , ⌈ q ^ ⌉ } T ( q , { b k ∗ } ) q^{*}=\arg\min_{q\in\{\lceil\hat{q}\rceil-1,\lceil\hat{q}\rceil\}}T(q,\{b_{k}^{*}\}) q=argq{⌈q^1,q^⌉}minT(q,{bk})

algorithm3

三、讨论

这篇文章作者写出的缺点(未来方向)有:

  • 没有涉及到 client 采样。在这种情况下如何惊醒 带宽分配;
  • 没有涉及到误差补偿,这种技术可以减少量化精度。

我认为的优点是:

  • 对通讯时间进行了表征( R k R_k Rk),而不是单单使用时间开估算
  • 考虑了一轮训练时间和总训练轮数之间的 tradeoff

我认为的缺点有:

  • 本文聚焦于 “减少总训练时间”,而对模型精度问题没有进行考虑
  • 需要进行一定程度的预训练

四、定理证明

4.1 L-Smooth 和 Strongly convex 的相关定义和推论

4.1.1 L-Smooth

L-Smooth定义: 假设 L > 0 L>0 L>0,如果一个在在集合 D ⊂ E D\subset \mathbb{E} DE 上可微的函数 f : E → ( − ∞ , + ∞ ] f:\mathbb{E}\rightarrow(-\infty,+\infty] f:E(,+] 是 L-Smooth,那么函数将满足:
∥ ∇ f ( x ) − ∇ f ( y ) ∥ ≤ L ∥ x − y ∥ for all  x , y ∈ D \|\nabla f(\mathbf{x})-\nabla f(\mathbf{y})\|\leq L\|\mathbf{x}-\mathbf{y}\|\quad\text{for all }\mathbf{x},\mathbf{y}\in D ∥∇f(x)f(y)Lxyfor all x,yD其中, L L L被称为 smoothness parameter, ∥ ⋅ ∥ \|\cdot\| 表示 2范数。

Lemma 1(descent lemma):
f ( y ) ≤ f ( x ) + ⟨ ∇ f ( x ) , y − x ⟩ + L 2 ∥ x − y ∥ 2 f(\mathbf{y})\leq f(\mathbf{x})+\langle\nabla f(\mathbf{x}),\mathbf{y}-\mathbf{x}\rangle+\frac{L}{2}\|\mathbf{x}-\mathbf{y}\|^2 f(y)f(x)+f(x),yx+2Lxy2
Lemma 2:
f ( y ) − f ( x ) − ⟨ ∇ f ( x ) , y − x ⟩ ≥ 1 2 L ∥ ∇ f ( x ) − ∇ f ( y ) ∥ 2 f(\mathbf{y})-f(\mathbf{x})-\langle\nabla f(\mathbf{x}),\mathbf{y}-\mathbf{x}\rangle\geq\frac1{2L}\|\nabla f(\mathbf{x})-\nabla f(\mathbf{y})\|_{}^{2} f(y)f(x)f(x),yx2L1∥∇f(x)f(y)2
Lemma 3:
⟨ ∇ f ( x ) − ∇ f ( y ) , x − y ⟩ ≤ L ∥ x − y ∥ 2 \langle\nabla f(\mathbf{x})-\nabla f(\mathbf{y}),\mathbf{x}-\mathbf{y}\rangle\leq L\|\mathbf{x}-\mathbf{y}\|^2 f(x)f(y),xyLxy2
Lemma 4:
⟨ ∇ f ( x ) − ∇ f ( y ) , x − y ⟩ ≥ 1 L ∥ ∇ f ( x ) − ∇ f ( y ) ∥ 2 \langle\nabla f(\mathbf{x})-\nabla f(\mathbf{y}),\mathbf{x}-\mathbf{y}\rangle\geq\frac{1}{L}\|\nabla f(\mathbf{x})-\nabla f(\mathbf{y})\|^2 f(x)f(y),xyL1∥∇f(x)f(y)2

4.1.2 Strongly convex

将在L-Smooth 部分得到的 所有不等式变换方向 并且 将 L L L 替换为 μ \mu μ 就得到了Strongly Convex 函数满足的性质:
f ( y ) − f ( x ) − ⟨ ∇ f ( x ) , y − x ⟩ ≥ μ 2 ∥ x − y ∥ 2 ⟨ ∇ f ( x ) − ∇ f ( y ) , x − y ⟩ ≥ μ ∥ x − y ∥ 2 ∥ ∇ f ( x ) − ∇ f ( y ) ∥ ≥ μ ∥ x − y ∥ f ( y ) − f ( x ) − ⟨ ∇ f ( x ) , y − x ⟩ ≤ 1 2 μ ∥ ∇ f ( x ) − ∇ f ( y ) ∥ 2 ⟨ ∇ f ( x ) − ∇ f ( y ) , x − y ⟩ ≤ 1 μ ∥ ∇ f ( x ) − ∇ f ( y ) ∥ 2 \begin{aligned} f(\mathbf{y})-f(\mathbf{x})-\langle\nabla f(\mathbf{x}),\mathbf{y}-\mathbf{x}\rangle & \geq\frac{\mu}{2}\|\mathbf{x}-\mathbf{y}\|^{2} \\ \langle\nabla f(\mathbf{x})-\nabla f(\mathbf{y}),\mathbf{x}-\mathbf{y}\rangle & \geq\mu\|\mathbf{x}-\mathbf{y}\|^{2} \\ \|\nabla f(\mathbf{x})-\nabla f(\mathbf{y})\|_{}& \geq\mu\|\mathbf{x}-\mathbf{y}\| \\ f(\mathbf{y})-f(\mathbf{x})-\langle\nabla f(\mathbf{x}),\mathbf{y}-\mathbf{x}\rangle & \leq\frac{1}{2\mu}\|\nabla f(\mathbf{x})-\nabla f(\mathbf{y})\|_{}^{2} \\ \langle\nabla f(\mathbf{x})-\nabla f(\mathbf{y}),\mathbf{x}-\mathbf{y}\rangle & \leq\frac{1}{\mu}\|\nabla f(\mathbf{x})-\nabla f(\mathbf{y})\|_{}^{2} \end{aligned} f(y)f(x)f(x),yxf(x)f(y),xy∥∇f(x)f(y)f(y)f(x)f(x),yxf(x)f(y),xy2μxy2μxy2μxy2μ1∥∇f(x)f(y)2μ1∥∇f(x)f(y)2

1.https://zhuanlan.zhihu.com/p/369961290 点击打开知乎博客

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值