LEARNING SPARSE NEURAL NETWORKS THROUGH L0 REGULARIZATION

摘要:文章提出一种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(θjzj=1 以某种方式适应于 q ( θ j ∣ z j = 1 ) q(\theta_ j|z_j=1) q(θjzj=1从而导致大约需要 λ \lambda λ nats来转换 p ( θ j ∣ z j = 1 ) p(\theta_ j|z_j=1) p(θjzj=1到特定的 q ( θ j ∣ z j = 1 ) q(\theta_ j|z_j=1) q(θjzj=1。因此,这些 λ \lambda λ nat是 如果我们使用 p ( θ j ∣ z j = 1 ) p(\theta_ j|z_j=1) p(θjzj=1)作为先验, q ( θ j ∣ z j = 1 ) q(\theta_ j|z_j=1) q(θjzj=1可以对数据进行编码的信息量,在这种假设下我们可以把 λ \lambda λ看作是假设先验的灵活性程度, λ = 0 \lambda=0 λ=0则先验分布足够精确近似后验分布 q ( θ j ∣ z j = 1 ) q(\theta_ j|z_j=1) q(θjzj=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散度的计算,为了保持一致性令在这里插入图片描述
在这里插入图片描述

  1. 实验设计
    https://github.com/AMLab-Amsterdam/L0_regularization.
  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值