【文献阅读/翻译...】bayesian compression for deep learning深度学习中的贝叶斯压缩

Max Welling团队2017年5月发布在arXiv sta.ML。

[abstract]考虑深度学习中的压缩和计算效率问题。采用以bayesian的视角,通过先验分布引入稀疏性,进而对网络进行剪枝。(这确实是最principled的方式,真的是effective的方式吗?)文章的两个新颖之处在于,使用的层次先验最后剪枝的是节点(结构),而非单个权重(参数);使用后验不确定性确定最优的固定点准确率来编码权重。
从压缩率来看达到最新水平,与那些专门设计的优化速度/能源效率的模型水平差不多。

[key points]为网络权重参数w设置0均值高斯先验,讨论了高斯先验的scale的两种先验分布。变分贝叶斯估计,全贝叶斯学习。目的是让网络的各层的(有效)size减小。


背景:深度神经网络 模型压缩

深度学习的复杂的网络在实际应用中意味着 计算、带宽的巨大消耗,以及延时。

Alexnet的卷积层占4%的参数,91%的计算量。

现有方法大多数是减少网络结构,同时减少每个权重的有效的固定点precision(?)。
减少网络结构。NN有很严重的参数冗余。网络剪枝减掉不必要的连接。用一个大网络来训练一个小网络。

从bayesian视角看,网络剪枝 与 减小权重的bit precision 是aligned。bayesian方法搜索最优的模型结构(先验 稀疏性 剪枝),同时 通过 bit back argument 奖励参数的不确定性后验移除不重要的bit。

变分bayes, MDL

N 个输入-输出数据点构成的数据集D={(x1,y1),...,(xn,yn)}, 考虑一个参数模型 p(D|w)=Ni=1p(yi|xi,w) , 参数是 w 其先验分布p(w)
后验分布 p(w|D)=p(D|w)p(w)/p(D) 是intractable,我们用一个固定形式的近似后验 qϕ(w) , ϕ 是变分参数。
数据拟合误差error cost LE=Eqϕ(w)[logp(D|w)]
模型复杂度cost LC=Eqϕ(w)[logp(w)]+H(qϕ(w))
evidence下界ELBO/正变分自由能量 L(ϕ)=LE+LC 表示出了通讯的最小代价。

一种方法,为权重引入先验得到稀疏性。

另一种方法,

通过 qϕ(w)Hbitsbackargument.

无限准确权重 H(δ(w))=inf

实践中 噪声权重编码的神经网络的数据拟合误差项是intractable的,常采用蒙特卡洛积分。 连续的 qϕ(w) 可以使用reparametrization技巧,不是从 qϕ(w) 中采样,而是通过噪声变量 ϵ 和变分参数 ϕ 的确定函数采样。 LE=Ep(ϵ)[logp(D|f(ϕ,ϵ))]

高斯分布的比例混合,bayes压缩

scale-mixtures of normals分布族: zp(z);wN(w;0,z2)
z 是参数w的先验分布的scale。

将z看做随机变量,得到w的边界先验分布(积分掉z后的w的(相对于数据D来说是)先验的分布)有(相对于把z看做固定值?更)长尾,且更聚集在0点。随后w的后验分布就会偏向稀疏。

这是一种比较通用的分布族,许多能导致稀疏性的分布都是它的特例。

  • spike&slab分布 p(w)是伯努利分布。dropout(2012,2014)神经网络种受欢迎的正则技巧。
  • Laplace分布 p(z2)=exp(λ) 。laplace先验的后验分布的mode是Lasso估计。有被用到稀疏化神经网络(2016)。易压榨大信号,只提供点估计,没有保留不确定性,overfit,不足够compression。
  • 不含超参数的 log-uniform先验,half-cauchy先验得到horseshoe分布,spike$slab先验的连续松弛。

对数一致先验

p(z)1|z| , wN(0,z2)

得到对数一致先验/normal-Jeffreys先验 p(w)1|w|
联合分布 p(w,z)Ai1|zi|A,Bi,jN(wij|0,z2i) 一层网络,输入A维, 输出B维
变分估计 qϕ(w,z)=AiN(zi|μzi,μ2ziαi)A,Bi,jN(wij|ziμij,z2iσ2ij) ,其中变分参数 ϕ=(μzi,αi,μij,σ2ij) ,第i个输入维参数组的dropout率 αi
….
W^=...

半柯西比例先验

C+(0,a)=2(aπ(1+(z/a)2)1)
w~ijN(0,1)
ziC+(0,1)
sC+(0,τ)
wij=w~ijzis

实验

全连接卷积网络
比较剪枝前后的网络结构,bit-precision
时间消耗

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值