摘要:文章提出一种L0正则化的方法来对神经网络进行剪枝,有效提高了训练速度和模型泛化能力,由于L0的不可微性所以不能直接将其整合在目标函数中进行优化,文章提出了一种非负随机门来确定具体那部分权值设置为0.基于这个随机门确定一种分布,目标函数关于其分布参数是可微的,进而又提出hard concrete 分布,这个分布是对binary concrete 分布的一个推广( Chris J Maddison, Andriy Mnih, and Yee Whye Teh. The concrete distribution: A continuous relaxation of discrete random variables. arXiv preprint arXiv:1611.00712, 2016.),最后通过随机梯度下降进行模型训练。
引言
介绍了目前神经网络的缺点
1.参数过多,带来不必要的计算。
2 .容易过拟合,泛化能力差。
目前解决的方法主要是模型压缩和稀疏化处理。
具体过程
目标函数: 采用的是平均误差损失,加上L0正则化。
对其进行如下处理
其中
z
j
z_{j}
zj是所说的binary gates ,其服从伯努利分布
q
(
z
j
∣
π
j
)
q(z_{j}|\pi_{j})
q(zj∣πj)进而对
(
1
)
(1)
(1)式进行化简。在贝叶斯变量选择中有引入这样的方法:具体参考博文稀疏线性模型
实际上在计算先验概率时可以推到到如下式子,其中
w
w
w为权重,
γ
\gamma
γ与本文
z
z
z一样为二元伯努利变量,
论文中我们假设先验条件如下
由于在此先验条件下参数的真实后验分布是难以确定的,所以采用的是变分推理(求后验分布的方法很多,只是文章选取的式变分推断方法)来近似后验概率分布,Let
q
(
θ
;
z
)
q(\theta; z)
q(θ;z) be a spike and slab approximate posterior over the parameters
θ
\theta
θ and gate variables z, where we assume that it factorizes over the dimensionality of the
parameters
θ
\theta
θ.
(变分推理Matthew James Beal. Variational algorithms for approximate Bayesian inference. 2003.)(Toby J Mitchell and John J Beauchamp. Bayesian variable selection in linear regression. Journal of the American Statistical Association, 83(404):1023–1032, 1988.)(变分推断https://www.cnblogs.com/yifdu25/p/8181185.html)
我们可以写出变分自由能公式():
上式当中KL散度表示概率函数之间的近似程度,
现在我们进行对参数
θ
\theta
θ的优化,并且进一步假设
从经验贝叶斯过程中可以知道:对每个参数都有一个假设先验
p
(
θ
j
∣
z
j
=
1
)
p(\theta_ j|z_j=1)
p(θj∣zj=1) 以某种方式适应于
q
(
θ
j
∣
z
j
=
1
)
q(\theta_ j|z_j=1)
q(θj∣zj=1)从而导致大约需要
λ
\lambda
λ nats来转换
p
(
θ
j
∣
z
j
=
1
)
p(\theta_ j|z_j=1)
p(θj∣zj=1)到特定的
q
(
θ
j
∣
z
j
=
1
)
q(\theta_ j|z_j=1)
q(θj∣zj=1)。因此,这些
λ
\lambda
λ nat是 如果我们使用
p
(
θ
j
∣
z
j
=
1
)
p(\theta_ j|z_j=1)
p(θj∣zj=1))作为先验,
q
(
θ
j
∣
z
j
=
1
)
q(\theta_ j|z_j=1)
q(θj∣zj=1)可以对数据进行编码的信息量,在这种假设下我们可以把
λ
\lambda
λ看作是假设先验的灵活性程度,
λ
=
0
\lambda=0
λ=0则先验分布足够精确近似后验分布
q
(
θ
j
∣
z
j
=
1
)
q(\theta_ j|z_j=1)
q(θj∣zj=1)从而导致无编码损失过拟合,基于这样假设下的变分自由能公式可以改下为下式
最后一步是由于KL散度的正性。现在通过把数据的负对数概率取为等于公式1的损失
L
(
)
L()
L(),我们看到式22与式3相同。注意,如果我们对闸门z的不确定性感兴趣 我们应该优化公式21,而不是公式22,因为这将适当地惩罚
q
(
z
)
q(z)
q(z)的熵。 此外,等式21还允许将关于 门(例如,门平均有10%的时间处于活动状态)。因此,我们已经证明了预期的L0 最小化过程实际上是包含尖峰和板的变分界的一个紧代理门激活时的参数分布和参数的固定编码成本
最后得到
由于z的离散性,也不能直接对其进行求梯度
文章采用了一种方法,让
s
s
s是个连续随机变量,分布为
q
(
s
)
q(s)
q(s) 参数为
ϕ
\phi
ϕ. 让
z
z
z be given by a hard-sigmoid rectification of
s
s
s,用hard-sigmoid而不是整流器可以更好的模拟二进制门变量 z。
这样处理后 z z z可以取到精确0值,并且具有连续型变量 s s s。 q ( s ) q(s) q(s)的选择是基于(Yarin Gal, Jiri Hron, and Alex Kendall. Concrete dropout. arXiv preprint arXiv:1705.07832, 2017.)这篇文章。
我们接着可以计算门值变量的非零的概率,比较容易从累积分布函数得到(CDF)
Q
(
.
)
Q(.)
Q(.) 0f
s
s
s.
上式
i
e
i e
ie s变量为正的概率,那么我们可以等式3中的二元伯努利门值变量光滑化,用过前面提及的连续性分布使得目标函数可以光滑化成
连续分布 q ( s ) q(s) q(s)可以用到 再参数化技巧
接着加入无噪声的参数化分布
p
(
ε
)
p(\varepsilon)
p(ε)和可微变换
f
f
f,其参数为
ϕ
\phi
ϕ and
ε
\varepsilon
ε,这样处理的好处是这个期望的蒙特卡罗估计量通常比 REINFORCE 估计量的相同数量具有明显更低的方差。
采用蒙特卡洛近似上面复杂的期望的到
下面讨论具体的分布
两篇文章具体讨论了binary concrete型随机变量s分布,区间于(0,1)之间,概率密度
q
s
(
s
∣
ϕ
)
q_s(s|\phi)
qs(s∣ϕ)和累积密度
Q
s
(
s
∣
ϕ
)
Q_s(s|\phi)
Qs(s∣ϕ),参数为
ϕ
=
(
l
o
g
α
,
β
)
\phi=(log\alpha,\beta)
ϕ=(logα,β),并运用hard-sigmoid随机抽样
接着我们可以引出 $ q_\bar s (\bar s | \phi)$ 负值上的概率质量分布
注意,即使我们通过hard-sigmoid从实线上的任何其他分布传递样本,也会获得类似的结果。只要能够得到
s
ˉ
\bar s
sˉ.在0 ,1上的累积分布。选取binary conreate分布是因为它与Bernoulli r.v.s(伯努利随机变量序列)比较接近。最初是由Maddison et al. (2016); Jang et al.(2016)提出来光滑近似Bernoulli r.v.s。参数
β
\beta
β代表近似程度,当
β
\beta
β=0时回到了伯努利随机变量。
从图中可以看到采用hard concrete同样具有伯努利分布的性质
具体细节在论文([1]Chris J Maddison, Andriy Mnih, and Yee Whye Teh. The concrete distribution: A continuous relaxation of discrete random variables. arXiv preprint arXiv:1611.00712, 2016.[2]Eric Jang, Shixiang Gu, and Ben Poole. Categorical reparameterization with gumbel-softmax. arXiv preprint arXiv:1611.01144, 2016.)
这样9式可以转换为下式
下面讨论具体KL散度的计算,为了保持一致性令
- 实验设计
https://github.com/AMLab-Amsterdam/L0_regularization.