量化新方:模型压缩 6 倍,无需重训练

技术讨论 三井 ⋅ 于 3天前 ⋅ 559 阅读

file

来源:原创 Edison_G 计算机视觉研究院 作者:Edison_G


神经网络压缩是指在对神经网络性能影响不大的情况下,通过有关方法来减少网络的参数和存储空间,大体上可以分为近似量化剪枝三类方法。

1、简要

为了降低随机存取存储器(RAM)的要求,并提高识别算法的速度,考虑了训练神经系统的权重离散化问题,在比特数为1或2时达到相同的精度。在3bit指数离散化的情况下,神经网络VGG-16的性能已经令人满意(top5精度69%,ResNet50神经网络在4bit时top5的精度为84%。其他神经网络在5bit时表现相当好(Xception、Inception-v3和MobileNet-v2 top5的精度分别为87%、90%和77%)。在较少的比特数下,精度迅速下降。
file

近日,来自俄罗斯人民友谊大学(RUDN)的数学家团队找到一种方法,可以将训练后的神经网络的大小减小六倍,而无需花费更多的资源来对其进行重新训练。该方法基于找到初始系统及其简化版本中神经连接权重之间的相关性。这项研究的结果发表在《Optical Memory and Neural Networks》期刊上。
file

2、回顾

目前的神经网络包括数百万个参数,它们的大小越来越大。 这是一个全球性的问题,阻止在移动设备和不同芯片上部署神经网络。 

例如,即使是一个相对较小的预训练神经网络VGG16设计成图像分类,在设备的内存中约占553MB。 有不同的方法允许我们减少预训练的神经网络的大小。 特别是,其中一种方法是离散化,即通过将权重分布区间划分为离散值来减小神经网络权值的比特宽度。 将离散化应用于预训练神经网络,大大减小了权重的大小,并“减轻”了神经网络,使其适用于移动设备上的实现和发射。
file

在[Kryzhanovsky, B.V., Kryzhanovsky, M.V. & Malsagov, M.Y. Discretization of a matrix in quadratic functional binary optimization. Dokl. Math. (2011) 83: 413. https://doi.org/10.1134/S1064562411030197;Kryzhanovsky M.V., Malsagov M.Yu. Modification of Binary Optimization Algorithm and Use Small Digit Capacity Numbers. "Optical Memory and Neural Networks (Information Optics)". Vol.20. №3. pp. 194–200, 2011. https://doi.org/10.3103/S1060992X11030052.\]论文中,他们研究了神经网络的裁剪操作和矩阵权值的量化,并获得了Hopfield神经网络权值的最优离散表示的解析估计,以及所获得的模型中误差概率的公式。 

对于基于二元神经元的Hopfield模型,证明了连接权重的最优离散对应于输入和离散权重之间的相关性最大化。 在今天分享中,作者使用了同样的思想,但是对于前馈深度神经网络。

3、Description of discretization procedure
file
file

Linear partition

在这种情况下,我们将分布的区间划分为相同的区间:
file
file
file

4、Discretization results for random numbers

测试了两种分布的离散化过程,即高斯拉普拉斯分布。 在这两种情况下,使用给定分布的10000个数字来生成一个向量,然后使用上述方法之一进行离散化。 将参数x0从0到1,并将位数从2改为6。 在表1和表2中收集了获得的结果,并在图3和图4中显示了它们。
file
file
file

在上图中,给出了神经网络离散化的过程。 应特别注意倒数第二排。 重点是相关性的最大化不是精确离散化的唯一标准。 我们可以将离散化的数乘以任意数,而不改变相关值。 这就是为什么在研究中,额外乘以离散化的权重,使它们的色散在离散之前和之后保持不变的原因。

从下图我们看到线性离散化的量化是指数离散化后的一个比特,在某些情况下是两个比特(VGG-16是一个例子)。
file
file
file

5、拓展

生命体中人工神经网络和神经元的结构是基于相同的原理。网络中的节点是相互连接的;其中一些接收信号,一些通过激活或抑制链中的下一个元素来发送信号。任何信号(例如图像或声音)的处理都需要很多网络元素及其之间的连接。但是,计算机模型只有有限的模型容量和存储空间。为了处理大量数据,这一领域的研究者必须发明各种方法来降低对模型能力的需求,包括所谓的量化。这有助于减少资源消耗,但需要对系统进行重新训练。RUDN 大学的一些数学家发现后者可以避免。
file

RUDN 大学 Nikolskii 数学研究所助理教授 Iakov Karandashev 博士说:「几年前,我们在 Hopfield 网络中进行了有效且经济高效的权重量化。这是一个关联存储网络,并带有遵循 Hebb 规则形成的元素之间的对称连接。在其运行过程中,网络的活动被降低到某个平衡状态,并且在该状态达到时任务就被认为是已经解决了,该研究中获得的见解后来被应用于当今在图像识别中非常流行的前馈深度学习网络。通常这些网络需要在量化后进行重新训练,而我们找到了避免重新训练的方法。」

简化人工神经网络背后的主要思想是所谓的权重量化,即减少每个权重的位数。量化提供信号的均值化:例如,如果将其应用于图像,则代表相同颜色不同阴影的所有像素将变得相同。从数学上讲,这意味着借助某些参数的相似神经连接应该具有相同的权重(或重要性),即表示成同一个数字。

RUDN 大学的一个数学家团队进行了计算并创建了公式,该公式可以有效地在量化前后,在神经网络的权重之间建立相关性。基于此,科学家们开发了一种算法,利用该算法,经过训练的神经网络可以对图像进行分类。在该研究的实验中,数学家使用了包含 5 万张照片的数据集,这些照片包可以被分为 1000 组。训练之后,该网络会使用新方法进行量化,并且不进行重新训练。然后,该研究将实验结果与其他量化算法进行了比较。

RUDN 大学的 Iakov Karandashev 补充说道:「量化之后,分类准确率仅降低了 1%,但是所需的存储容量减少了 6 倍。实验表明,由于初始权重与量化后权重之间的相关性很强,该网络不需要重新训练。这种方法有助于在完成时间敏感任务或在移动设备上运行任务时节省资源。」

论文链接:**https://arxiv.org/abs/2002.00623**

© THE END 


相关推荐:

模型加速与压缩 | 剪枝乱炖

成为第一个点赞的人吧 :bowtie:
回复数量: 0
暂无回复~
您需要登陆以后才能留下评论!