Spherical motion dynamic
本文主要介绍了归一化神经网络在训练中,在 Weight Decay 的约束下,权重范数(Weight Norm)和角度更新步长(Angular Update) 会以线性速率收敛到由超参数决定的平衡态值。
基本假设
Hypothesis 1. 稳定性假设
- 学习率远小于1 η≪1
- 达到稳定态时(即权重范数收敛时), 有 ∥wt∥≃∥wt+1∥
Hypothesis 2. Scaling-Invarient
∀k,L(kw)=L(w)
基于这个假设可以得到两个基本性质
Property 1. 权重方向与Loss的梯度向量的方向正交
⟨wt,∇wL(wt)⟩=0
Proof:
由于Scaling-Invarient Property, f(k)=L(kw)是关于k 的常函数,则
dkdL(kw)=j∑∂wi∂L(kw)dkd(kwi)=i∑∂wi∂L(kw)⋅wi=⟨w,∇wL(w)⟩=0
对于任何w=wt均成立
Corollary 1. 没有Weight Decay的优化器的权重范数是严格增的
Proof:
∥wt+1∥2=∥wt−η∇wL(w)∥2=∥wt∥2+∥η∇wL(w)∥2−η⟨wt,∇wL(w)⟩=∥wt∥2+∥η∇wL(w)∥2≥0
这说明如果没有Weight Decay, 优化器在有限步梯度下降中难以实现权重范数收敛
Property 2. Gradient Homogeneity
∇kwL(kw)=k1∇wL(w)
Proof:
∇wL(w)=∇wL(kw)=(∂wi∂L(kw))i≤n=k(∂(kwi)∂L(kw))i≤n=k∇kwL(kw)
即
∇kwL(kw)=k1∇wL(w)
或者记为
∇L(kw)=k1∇L(w)
分析对象
本文主要的分析对象是优化器的梯度与优化前后的向量夹角。做如下定义
Definition 1. SGD的归一化梯度与归一化学习率
这个的计算需要基于向量的模长已经收敛的假设,即 ∥wt+1∥≃∥wt∥
对于最朴素的随机梯度下降,有
wt+1=wt−η∇wL(wt):=wt−η⋅gt
取归一化向量梯度下降wt~=∥wt∥wt, 根据Property2与模长收敛 , 有
w~t+1=w~t−∥wt∥η∇wL(wt)=w~t−∥wt∥2η∇L(w~t):=w~t−∥wt∥2η⋅g~t
记
ηerr=∥wt∥2η 为修正后的学习率
Definition 2。 夹角更新量
Δt=arccos(∥wt∥∥wt+1∥⟨wt,wt+1⟩)
对于充分小的学习率η且 ∥wt∥≃∥wt+1∥时,有
Δt=∥wt∥∥η⋅gt∥=∥wt∥η∇L(wt)
Core Concept
SGD 的 稳定性讨论
Theorem 1. SGD 的梯度模稳定态
考虑带WD的SGD
wt+1=wt−η(gt+λwt)
取模得
∥wt+1∥2=∥wt∥2+η2∥gt+λwt∥2−2ηwt(gt+λwt)=∥wt∥2+η2∥gt∥2+η2λ2∥wt∥2−2ηλ∥wt∥2=(1−ηλ)2∥wt∥2+∥wt∥2η2∥g~t∥2
取xt=∥wt∥2, 此时需要一个 ∥g~t∥2 的下界保证 ∥g~t∥2>l, 以保证分子为t无关的常数,则
xt+1≥(1−2ηλ)xt+xtη2l
对于递推
xt+1≥Axt+xtBA>0,B>0
正不动点为
x∗=Ax∗+x∗B
即
x∗=1−AB
对于充分大的t, 有
- ∀t,xt<x∗
则
x∗−xn+1≤x∗−Axn−xnB=x∗−Axn−xn(1−A)x∗2=x∗−xn+(1−A)xn−xn(1−A)x∗2=(x∗−xn)(1−xn(1−A)(xn+x∗))=(x∗−xn)(A−xn(1−A)x∗)≤A(x∗−xn)
因此
xt≥x∗−At−1∣x∗−x1∣
- ∃t,xt>x∗
xt>x∗>x∗−At−1∣x∗−x1∣
因此SGD 的不动点为
x∗=2ληl
即
∥wt∥=42ληl
且对于某个充分大的t0,t>t0时有
xt>2ληl−(1−2ηλ)t−12ληl−x1
考虑递推
xt+1=(1−2ηλ)xt+xtLtη2
真实不动点为
E[xt+1xt]=(1−2ηλ)E[xt]+E[xtLtη2]
这导出了稳定性的第二个要求:E[Ltxt]=L,∥g~t∥2的期望稳定。基于这个要求,我们得出
x∗=(1−2ηλ)x∗+x∗Lη2
x∗=2ληL
基于最佳平方估计的理念,我们试图去证明权重范数的二阶矩是线性收敛的
E[(xt+1−x∗)2xt]=E[[1−2ηλ−xtx∗Lη2)(x∗−xt)+η2xtLt−L]2xt]=(1−2ηλ−xtx∗Lη2)2(x∗−xt)2+η2(1−2ηλ−xtx∗Lη2)(x∗−xt)E[xtLt−Lxt]+E[(η2xtLt−L)2xt]=(1−2ηλ−xtx∗Lη2)2(x∗−xt)2+xt2η4E[(Lt−L)2xt]
此时我们需要梯度模的二阶中心矩稳定,即满足 E[(Lt−L)2xt]=V, 这就是稳定性的第三个条件
基于这三个条件,我们总有
E[(xt+1−x∗)2xt]≤(1−2ηλ)2(x∗−xt)2+l4λVη3
对于整体权重范数的二阶中心矩,且根据全期望公式,有
E[(xt+1−x∗)2]=E[E[(xt+1−x∗)2xt]]≤(1−2ηλ)2E[(x∗−xt)2]+l4λVη3
对于t<t0 的期望总是一个有限值,因此总有有限的常数N,K
E[(xt−x∗)2]<(1−2ηλ)2tN+K
这便说明了WD-SGD 总会在某一充分大时刻后,以线性速度收敛到稳定态。WD-SGD 能达到稳定的条件为
⎩⎨⎧(梯度模下界存在)(梯度的期望与方差稳定)∃l>0∃L,V>0Lt>lE[Lt∣xt]=L, E[(Lt−L)2∣xt]=V
Theorem 2. SGD的角度更新速度
当归一化梯度模 ∥g~t∥2 趋于稳定时,角度更新量会以线性速率稳定到固定的角度更新量,即
∣Δt−2λη∣≤C(1−ηλ)t
对于
wt+1=wt−η(gt+λwt)
有
⟨wt+1,wt⟩=∥wt∥2−ηλ∥wt∥2=(1−ηλ)∥wt∥2
cos2Δt=∥wt∥2∥wt+1∥2⟨wt+1,wt⟩2=∥wt∥2∥wt+1∥2(1−ηλ)2∥wt∥4=(1−ηλ)2∥wt+1∥2∥wt∥2∼(1−2ηλ)∥wt+1∥2∥wt∥2
根据梯度模稳定性
cos2Δt−1+2ηλ=(1−2ηλ)∥wt+1∥2∥wt∥2−1=O(1−4ηλ)t
∣cosΔt−1+2ηλ∣∼2sin22Δt−2ηλ=21∣Δt2−4ηλ∣∼∣Δt−2ηλ∣
因此
∣Δt−2ηλ∣=O(1−4ηλ)t