正交约束

2,307 阅读7分钟

摘要

什么是正交约束

  • 在训练过程中通过约束来鼓励或强制参数矩阵保持正交。

正交约束的作用

  • 稳定激活输出后的分布。
  • 常用于解决梯度消失或爆炸等问题。
y=yTy=xTWWTx=xTx=x||y|| = \sqrt{y^Ty} = \sqrt{x^TWW^Tx} = \sqrt{x^Tx} = ||x||

WWT=IWW^T=I

  • 特征解耦。

论文主要解决问题

  • 优化训练过程中的收敛性、速度和稳定性,同时保证模型性能。

主要方法

  • 硬约束 比如在训练过程中对目标矩阵的 WW 重复进行奇异值分解等操作,强制其正交性。

Generalized backpropagation,’{E} tude de cas: Orthogonality
On orthogonality and learning recurrent networks with long term dependencies
Orthogonal Weight Normalization Solution to Optimization over Multiple Dependent Stiefel Manifolds in Deep Neural Network

  • 软约束 比如在使用带有惩罚项的正则化器,鼓励其正交性。

All you need is beyond a good init Exploring better
Can We Gain More from Orthogonality Regularizations in Training Deep CNNs

On orthogonality and learning recurrent networks with long term dependencies

背景动机

  • RNN中存在梯度消失和梯度爆炸问题,一般会使用正交约束,但是进行严格正交是否就是最好的呢?

研究目标

  • 提出一种权值矩阵分解的参数化策略,通过参数约束矩阵范数,并允许其偏离正交,探究是否严格正交造成的影响。

方法

梯度爆炸和梯度消失与参数矩阵 WW 的最大增益和最小增益有关,而 WW 的最大增益为其谱范数。
谱范数的物理意义是:对于任何一个向量,在经过矩阵的变换后,新的向量长度小于等于原来的向量长度乘以该矩阵的谱范数,换句话说,任何一个向量经过该矩阵后,长度的变化是有限的。

W2=max[Wxx]||W||_2 = max[\frac{||Wx||}{||x||}]

在过去,通常通过软约束或正则化项的形式约束其正交。

λiWiTWiI2λ\sum_{i}||W_i^TW_i-I||^2

而本文章尝试通过更参数化的方式,也就是奇异值分解 WW 来控制其正交性和增益。

W=USVTW = USV^T

UU 为左特征向量组成的矩阵,VV 为右特征向量组成的矩阵,SS 为奇异值组成的矩阵。
矩阵的谱范数(最大增益)为最大奇异值,最小增益为最小奇异值。

在优化过程中,沿满足 UTU=IU^TU=IVTV=IV^TV=I 的测地线梯度进行优化,使 UUVV 保持正交。

A=GMTMGTA = GM^T-MG^T
Mnew=M+(I+η2A)1(Iη2A)M_{new}=M+(I+\frac{η}{2}A)^{-1}(I-\frac{η}{2}A)

MM 是我们想要维持正交的矩阵,GG 是其对于目标函数的雅可比矩阵,AA 是依赖于这两者的偏对称矩阵,通过凯莱变换映射到一个正交矩阵,ηη 是学习速率。

同时,论文想要探究偏离Stiefel流形(简单来说就是k个正交向量所组成的空间)的影响。
即,若 WW 严格正交,分解后的对角矩阵 SS 中的奇异值都为1,但是我们允许其中的奇异值偏离。
我们对 SS 进行参数化约束奇异值最大和最小偏离程度。mm 是偏离边缘,用于衡量偏移幅度。

si=2m(σ(pi)0.5)+1s_i=2m(σ(p_i)-0.5)+1

sidiag(S),m[0,1]s_i ∈ {diag(S)},m∈[0,1]。通过上式将奇异值限制在 [1m,1+m][1-m,1+m]

实验结论

使用不同大小的边缘 mm (m大束缚小)测试,发现收敛速度随着 mm 增大而变快,但是在长序列任务下,过大的 mm 会使其无效。

1629880254(1).png

性能:

1629880460(1).png

综上,对于不同 task ,模型表现不同;在 sequence training 中,正交约束不应该太严格;而对于 training 的 sequence 非常长的情况,则应该对正交约束比较强才合适。

Can We Gain More from Orthogonality Regularizations in Training Deep CNNs

背景动机

  • 权值的正交性是训练神经网络的有利特性,现在已经有多种多样的方式。
  • 目前仍缺乏对最先进的CNN的正交性研究。
  • 没有很好的针对非平方权值矩阵的正交性评估和约束方案。

研究目标

  • 提出新颖的正交正则项方案,评估其在各种先进CNN上的作用。

方法

Baseline:现有的软正交正则化项(SO)

λWTWIF2λ||W^TW-I||^2_F

λλ 是一个权重衰减项,是对正交程度的一个“放松”。

Double Soft Orthogonality Regularization(DSO)

对于矩阵 Wm×nW^{m×n},当矩阵 WWm<nm<n 时,WTWW^TW 的秩最多为 mm,很难靠近 II,因此采用:

λ(WTWIF2+WWTIF2)λ(||W^TW-I||^2_F+||WW^T-I||^2_F)

对于 m>nm>nm<nm<n 都可以覆盖。

Mutual Coherence Regularization(MC)

将矩阵 WW 的相互相干性定义为:

µW=maxij<wi,wj>wiwjµ_W = max_{i≠j}\frac{|<w_i,w_j>|}{|w_i|·|w_j|}

可以看出 µWµ_W 测量的是 WW 的任意两列之间的最高相关性,为了让 WW 正交,µWµ_W 应尽可能小,而 <wi,wj><w_i,w_j> 就是 WTWW^TW 的第 (i,j)(i,j) 个元素,因此使用正则项:

λWTWIλ||W^TW-I||_∞

Spectral Restricted Isometry Property Regularization(SRIP)

之前的文章得出了一个RIP condition,即对于所有 kk 稀疏的向量 zRnz ∈ R^n,存在一个小的 δW(0,1)δ_W ∈ (0,1),使得:

(1δW)Wz2z2(1+δW)(1-δ_W)≤\frac{||Wz||^2}{||z||^2}≤(1+δ_W)

上式可以限制 WW 中基数不大于 kk 的列相互正交。
对于 k=nk=n 的情况,RIP condition将有限制整个矩阵 WW 正交的效果,我们此时写成:

Wz2z21δW,zRn|\frac{||Wz||^2}{||z||^2}-1| ≤ δ_W,\forall z ∈ R^n

α(W)=supzRn,z0Wzzα(W) = sup_{z∈R^n,z≠0}\frac{||Wz||}{||z||} 是矩阵 WW 的谱范数,同时也是其最大奇异值。
又因此 α(WTWI)=supzRn,z0Wzz1α(W^TW-I) = sup_{z∈R^n,z≠0}|\frac{||Wz||}{||z||} - 1| ,因此问题转化成了最小化矩阵 WTWIW^TW - I 的谱范数:

λα(WTWI) λ·α(W^TW-I)

实验

使用正则化器训练了三个模型,并和原始版本进行了比较,可以看到,SRIP的效果很好,DSO效果不明显。

image.png

而由训练曲线可以看到,与非正则化的初始版本相比,所有四种正则化器在初始训练阶段都显著加速了训练过程,并在整个训练(大部分部分)过程中保持更高的准确性。正则化器也可以通过减少训练曲线的波动来稳定训练。

1629891073(1).png

使用SRIP在ImageNet和SVHN上进行比较,效果也很好。

1629891188(1).png

结论

  • 文章提出的正则化机制可以实现更好的精度、更稳定的训练曲线和更平滑的收敛,可有效应用于各类先进的CNN上。

Orthogonal Weight Normalization: Solution to Optimization over Multiple Dependent Stiefel Manifolds in Deep Neural Networks

背景动机

  • 正交权重约束可以在保留特征的同时降低冗余度,被广泛研究。
  • 现有的工作较多限定在RNN的隐藏层到隐藏层的变换。

研究目标

  • 文章期望在神经网络中学习更一般的矩形正交矩阵,不局限于RNN或CNN。

方法

设计转换

对于我们要约束的权重矩阵 WRn×dW∈R^{n×d},我们使用 VRn×dV∈R^{n×d} 来表示,即 W=φ(V)W = φ(V)。我们期望 WW 正交,即希望 φ(V)φ(V)T=Iφ(V)*φ(V)^T=I。在反向传播时,梯度信息也会更新在 VV 身上。

我们将 φ(V)φ(V) 表示为线性的转换,即 φ(V)=PVφ(V) = PV,同时通过 VC=Vc1dTV_C = V-c1_d^TVV 进行零中心化, c=1dV1dc = \frac{1}{d}V1_d1d1_d 是一个全1的d-dimension向量。那么我们如何选择这个 PP

1629877727.png

首先,我们希望 W/V∂W/∂V 接近1,因为我们不希望用 VV 来间接表示 WW 时失真,我们希望它们接近,所以我们用最小二乘的方式衡量这个约束:

minptr((WVC)(WVC)T)min_ptr((W-V_C)(W-V_C)^T)
s.t.W=PVCs.t. W=PV_C
WWT=IWW^T = I

对上述问题联立求解,我们可以有:

W=φ(V)=DΛ1/2DT(VC1dT)W = φ(V) = DΛ^{-1/2}D^T(V-C1_d^T)

上式中 P=DΛ1/2DTP^*=DΛ^{-1/2}D^TΛ=diag(α1,...,αn)Λ=diag(α_1,...,α_n)。 我们用 ΣΣ 代表 (VC1dT)(VC1dT)T(V-C1_d^T)(V-C1_d^T)^TΛΛ 代表 ΣΣ 的特征值,DD 代表 ΣΣ 特征向量,即 Σ=DΛDTΣ = DΛD^T,是特征分解。

反向传播

反向传播时,我们希望更新代理参数 VV,经过数学推导,反向传播的公式如下:

1629878034(1).png

文章将以上推演出的前向和后向传播计算方法封装为模块,作为可以适应于多种场景的硬正交约束。

实验

Group Based Orthogonalization
对于矩阵 Wn×dW^{n×d},当 ndn>d 的情况,将 WW 划分为组大小为 NGdN_G<d 的多个组(每 NGN_G 行为一组),对每个组内进行正交化。

1629879339(1).png

增加组的规模有助于提高正交化,但过大的组的规模将会降低性能,当我们添加学习规模(由“olm-scale-128”表示),它可以帮助实现最佳性能。

结合Batch Normalization 和 Adam Optimization
结合后效果很好。

1629879615(1).png

替换
实验结果表明,使用OLM替换部分网络的原有层后训练的效果提升比较显著。 1629879802(1).png

结论

  • 实验结果表明,使用OLM替换原有层后训练的效果提升比较显著。
  • 在前向神经网络里面可以确切的学习到正交过滤器。
  • 这种学习到的正交过滤器可以提升深度神经网络的效果。