XNOR-Net

论文:XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks 

Github:https://github.com/allenai/XNOR-Net

yolo的作者Joseph Redmon 作为三作的论文,论文提出了二值网络(Binary-Weight-Networks(BWN)) 的改进版异或网络(XNOR-Net)

上图对比了传统的卷积网络和BWN网络和XNOR网络。XNOR网络使用位运算和异或运算替代了加减运算,实现了速度的大幅提升。

 

论文贡献:

  1. 提出了一种新的二值化卷积网络的权值的方法,并且相比其他方法表现出更大的优势。
  2. 提出了一个二值化网络权值和二值化输入的网络XNOR-Net,减少了网络的模型大小大约32X,加快推理速度大约58X。当然精度上的损失也略大。

 

模型压缩的相关方法:

(1)Shallow networks

使用浅层的网络结构

(2)Compressing pre-trained deep networks

包括Hessian 矩阵分解,哈夫曼编码Huffman coding ,哈希网络HashedNets ,矩阵因式分解Matrix factorization

(3)Designing compact layers

包括使用global average pooling替换全连接层,分解3*3的卷积为2个1*1的卷积,使用1*1卷积来替换3*3卷积。

(4)Quantizing parameters

将32位浮点参数量化为8位参数

(5)Network binarization

包括BinaryConnect,BinaryNet

 

二值化啊网络Binary-Weight-Networks(BWN):

第一个式子表示了正常卷积网络的输入I和网络权值W和卷积操作*

第4个式子将一个正常的网络权值W近似为a*B的操作,其中a属于实数,B属于二值的矩阵。

最后一个式子实现了将一个传统的卷积过程转化为二值的计算过程,中间的圆圈+号表示没有乘法的卷积运算。

得出下面的式子,

然后对上面式子两边做差,得到优化函数J(B,a)

整个优化过程就是最小化J(B,a),

经过上面的变量替换后,得到看最新的J(B,a)函数,由于a,n,c都是正值,要使得J(B,a)最小,就得最大化WTB,

然后对J(B,a)求导,得到

由于

使用sign(w)替换B*最终得到下面的式子,

训练过程如下,

基本思路就是,先计算二值的卷积的参数A,B,然后使用二值的卷积进行前向运算,使用二值的卷积参数进行梯度返向传播,更新float类型的卷积的参数和学习率。如此循环训练。

 

异或网络XNOR-Networks :

类似上面的权值二值化的思想,将输入特征也进行了二值化,从而得到上面的最小化公式,

其中圆圈点表示elentment-wise乘积

基于下面的式子,进行替换后得到最终的优化函数

要最小化上面的式子,就是使得Y=rC,最终得到最优化的C*

然后基于C*得到r*

最终得到异或卷积的公式如下,

其中,圆圈*表示位运算或者异或运算,I表示输入特征,W表示filter权值特征,K表示输入的scale的float值,a表示filter的scale的float值。

上图表示了几种卷积操作的对比,

  1. 二值化卷积核矩阵
  2. 二值化输入矩阵,重复大量的重复计算
  3. 基于channel维度对(2)中的参数做了基于均值的操作(reduce_mean),大大减少了计算量
  4. 异或卷积的最终计算形式,其中K基于(3)操作得到,a基于(1)操作得到

 

模块对比:

第一个传统卷积模块(conv+BN+relu+pooling),第二个为XNOR网络卷积模块(BN+relu+XNOR conv+pooling)。可以看出XNOR网络首先对输入进行了BN归一化操作,才进行异或卷积操作。

 

 

实验结果:

 

总结:

论文提出了压缩网络结构XNOR-Net,模型参数有32X压缩,速度有58X提升,精度下降也比较严重,而二值网络BWN对精度损失则很少。可以根据实际环境进行取舍

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值