CVPR 2020 | IR-Net: 信息保留的二值神经网络(已开源)

      最后更新:2020-03-28 13:06:32 手机定位技术交流文章

      温|上汤

      编辑|韦嘉

      在CVPR 2020上,上塘研究所的链接与编译组和北京航空航天大学的刘祥龙教师团队提出了一种实用有效的网络二值化新算法IR-Net,旨在优化正向和反向传播中的信息流。

      地址:https://arxiv.org/abs/1909.10788

      项目地址:https://github.com/htqin/IR-Net

      与以往主要关注量化误差的二进制神经网络不同,本文首次从统一信息的角度研究了二进制网络的前向和后向传播过程,为网络二进制化机制的研究提供了新的视角。同时,本工作首次在ARM设备上验证了先进的二值化算法的有效性,显示了IR-Net部署的优异性能和极高的实用性,有助于解决业界关注的神经网络二值化登陆的核心问题。

      1.移动机器

      二元神经网络因其存储量小、推理效率高而受到广泛关注。

      1)正向传播中的libra参数二进制化(libra-pb)

      在此之前,绝大多数网络二值化方法都试图降低二值化操作的量化误差。然而,通过最小化量化误差来获得良好的二进制网络是不够的。因此,Libra-PB设计的关键是利用信息熵指数最大化二元网络正向传播过程中的信息流。

      根据信息熵的定义,在二元网络中,二元参数Qx(x)的熵可以通过以下公式计算:

      如果只追求量化误差的最小化,在极端情况下,量化参数的信息熵甚至可以接近零。因此,Libra-PB同时将量化值的量化误差和二进制参数的信息熵定义为优化目标,并将其定义为:

      在伯努利分布假设下,当p=0.5时,量化值的信息熵取最大值。

      因此,在Libra-PB中,标准化的平衡重量是通过标准化和平衡操作获得的。如图2所示,在伯努利分布下,由Libra-PB量化的参数具有最大的信息熵。有趣的是,权重的简单转换也可以极大地改善前向过程中激活的信息流。因为此时,每个层的二进制激活值的信息熵也可以最大化,这意味着可以保留特征图中的信息。

      在过去的二值化方法中,为了减少量化误差,几乎所有的方法都会引入浮点缩放因子来数值逼近原始参数,这无疑会引入高浮点运算。在Libra-PB中,为了进一步减少量化误差和避免以前二值化方法中昂贵的浮点运算,Libra-PB引入整数移位标量S来扩展二值权重的表示能力。

      因此,最后,用于正向传播的Libra参数的二进制化可以表示如下:

      红外网络的主要操作可以表示为:

      2)反向传播中的误差衰减估计器(EDE)

      由于二值化的不连续性,梯度的逼近对于反向传播是不可避免的。符号函数的这种近似带来了两种梯度的信息损失,包括截断范围之外的参数更新能力下降引起的信息损失和截断范围内的近似误差引起的信息损失。为了更好地保留反向传播中损失函数的信息,并平衡每个训练阶段对梯度的要求,EDE引入了一种渐进的两阶段近似梯度法。

      第一阶段是保留反向传播算法的更新能力。梯度估计函数的导数值保持在接近1的水平,然后截断值从大的数字逐渐减小到1。通过使用这一规则,近似函数从封闭的身份函数演化为剪辑函数,从而保证了训练的早期更新能力。

      第二阶段是在0附近更精确地更新参数。截断保持在1,导数曲线逐渐演变成阶梯函数的形状。使用该规则,近似函数从削波函数演化为符号函数,从而确保向前和向后传播的一致性。

      图3(c)示出了每个阶段中EDE的形状变化。通过这种设计,EDE减小了前向二值化函数和后向逼近函数之间的差异,并且所有参数都可以合理地更新。

      3.实验结果

      作者使用了两个基准数据集:CIFAR-10和ImageNet(ILSVRC12)进行实验。在两个数据集上的实验结果表明,红外网络比最先进的方法更具竞争力。

      4、部署效率

      为了进一步验证红外网在实际移动设备中的部署效率,作者进一步在1.2GHz 64位四核ARM Cortex-A53的覆盆子3B上实现了红外网,并在实际应用中测试了其真实速度。表5显示,红外网络推理速度快得多,模型尺寸大大减小,红外网络中的置换操作几乎不会带来额外的推理时间和存储消耗。

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/3098.html

          热门文章

          文章分类