大规模 CNN(卷积神经网络)是许多最先进的计算机视觉算法中最基本的部分,可在各种任务中实现高精度。这种网络的架构往往非常深,因为它们具有大量参数。所有的参数,数以百万计,数以亿计,权重冗余度高,使用巨大的计算资源。由于其对计算和硬件的高要求,在内存和计算资源有限的嵌入式和移动设备上部署此类模型变得非常困难。为了解决这个问题,已经进行了研究,以使用各种技术(如修剪、神经架构搜索、量化和知识蒸馏)来减小模型的大小。Learning to Prune Filters in CNNs论文并使用混合精度量化论文中的量化来减少模型大小和计算量。

大规模 CNN(卷积神经网络)是许多最先进的计算机视觉算法中最基本的部分,可在各种任务中实现高精度。这种网络的架构往往非常深,因为它们具有大量参数。所有的参数,数以百万计,数以亿计,权重冗余度高,使用巨大的计算资源。由于其对计算和硬件的高要求,在内存和计算资源有限的嵌入式和移动设备上部署此类模型变得非常困难。为了解决这个问题,已经进行了研究,以使用各种技术(如修剪、神经架构搜索、量化和知识蒸馏)来减小模型的大小。Learning to Prune Filters in CNNs论文并使用混合精度量化论文中的量化来减少模型大小和计算量。

1、学习在 CNN 中修剪过滤器

修剪过滤器的单个权重会导致 CNN 的稀疏性增加,这需要专门设计的软件或硬件来处理它。本文介绍了一种数据驱动的方法来修剪过滤器,基于其对模型整体准确性的贡献。他们将这种方法制定为“尝试和学习”任务,其中每个修剪代理(由神经网络建模)将过滤器权重作为输入,并输出关于保留过滤器的二元决策(是/否)。

Eq 1. 奖励函数(基于选择的二元动作和验证集)

每个剪枝代理都使用新的奖励函数 (Eq 1) 进行训练,该函数是准确度项和效率项的乘积。这种奖励功能可以轻松控制网络性能和规模之间的权衡。奖励函数的准确度项(等式 3)由一个下限参数“b”组成,它确保修剪过滤器后的准确度下降不超过阈值,并且还提高了更高的准确度。效率项是模型中过滤器总数与修剪代理保留的过滤器数量之比的对数(如公式 2 所示);这有利于更高的修剪。由于奖励函数相对于剪枝代理的参数不可微,因此在训练时使用策略梯度更新来修改参数。

Eq 2. 效率项,这里 N 表示第 l(th) 层中的过滤器数量,C(.) 是保留过滤器的数量

Eq 3. Accuracy Term,这里 p* 和 p^ 是基线和修剪模型的性能,b 是下降界限。M 是使用的度量(识别中的分类准确度和分割任务中的全局准确度)

该论文的作者评估了他们的模型在图像分割和视觉识别这两个任务中的性能。对于视觉识别任务,他们以两种方式进行了实验。首先,他们单独训练每一层的剪枝代理,然后一起训练所有卷积层的代理。图 1 显示了在 CIFAR-10 数据集上训练的 VGG-16 网络上的单个层剪枝结果,其精度下降边界 b = 2。从图中,我们可以观察到我们可以修剪高达 99.4% 的层精度下降非常小(0.5%)(第 10 层和第 11 层)。

为了单独修剪过滤器,它们从已经在数据集上训练的基线模型 (f) 开始,然后根据神经修剪代理为每个权重选择的动作对其进行修剪。层中权重的动作是随机初始化的,并在我们评估动作的奖励函数和基于策略梯度方法的精度下降时通过迭代学习。在对基线网络进行手术后,网络再次在数据集上进行微调,以适应剪枝动作。对网络的每一层重复此过程。在所有层一起修剪的情况下,我们从“L”层网络的 L 修剪代理开始,一个用于网络中的每个卷积层和一个基线网络。在这种情况下,他们遵循跨层的单层修剪方法。随着我们在网络中深入,基线网络不会重新初始化,并且来自早期层的修剪网络被带到更深层以进一步修剪。在每一层修剪之后,模型在训练数据集上进行微调以补偿性能下降。下面的图 2 显示了 VGG-16 在 CIFAR-10 数据集上的这个过程的结果,下降边界为 2。我们可以在此处观察到,每一层的修剪比其单层修剪对应物少一点,但仍然具有攻击性.

网络性能和规模之间的权衡由下拉参数“b”提供。不同b值的实验如图 3 所示,结果如图 4 所示。从中可以看出,较大的 drop bound 给出了更高的剪枝率,更多节省的 FLOP(浮点运算),更高的 GPU和 CPU 加速,以及测试集上更大的准确度下降。此外,我们可以看到,对于数据驱动的剪枝,在与基于幅度的剪枝相同的剪枝率下,VGG-16 网络上的精度下降较低。

在 ResNet-18 网络上使用 CIFAR-10 数据集进行了类似的实验,该数据集比 VGG-16 更大、更复杂。据观察,修剪率比 VGG-16 中的更小(仍然显着),这是因为 ResNet-18 是一种更有效的网络架构。结果表明,在残差块中,第一个 Conv 层比第二个更容易修剪;这也可以在图 5 中看到(7th/9th/12th/14th — 第一层,8th/10th/13th/15th — 第二层)。

对于语义分割任务,在具有 Pascal VOC 数据集的 FCN-32s 网络和 CamVid 数据集上的 SegNet 网络上进行了实验。为分割任务定义的网络基于像素级标记过程,这需要更多的权重和表示能力,因此更难以修剪。用于评估模型的指标是全局像素精度,下降边界b设置为 2。从图 6 中,我们可以看到,对于 SegNet 网络,有一个负的精度下降,这意味着精度的提高,这有利于奖励函数中的准确度项。这是由于修剪导致网络的过度拟合减少。

从下图可以看到一个有趣的结果,它显示了 SegNet 在 CamVid 数据集上的修剪结果,即使网络是对称的,网络的较深一半也有更多的冗余过滤器需要修剪。据观察,下半年去除了 49.2% 的过滤器,而上半年去除了 26.9%。

2、通过可微神经架构搜索实现混合精度量化

量化是另一种压缩模型大小的技术,它使用较小的位以较低的精度(< 32 位)将滤波器权重存储在卷积层中。之前考虑了 CNN 每一层中所有激活和权重的相同精度。本文首先介绍了对不同层具有不同精度(位宽)的想法。从N层和每层M候选精度的 CNN 开始,我们希望找到最佳精度分配,以减少模型大小、内存占用和计算次数,同时保持精度下降最小。这将花费 O(M^N) 时间来搜索指数;因此,他们引入了一种新方法来有效地解决这个问题。

在这个方法中介绍了可微神经架构搜索 (DNAS) 框架,该框架将架构搜索空间表示为一个随机“超网”,它是一个 DAG(有向无环图),其节点代表 CNN 的中间数据张量(特征图)和边表示网络的运算符(卷积层),如图 1 所示。因此,任何候选架构都可以是该超级网络的子图。图的任何边都是随机执行的,执行概率由一些架构参数参数化因此,我们需要找到提供最有希望的准确性的最佳架构参数,然后可以从找到的最佳参数中对网络进行采样。通过使用 SGD(随机梯度下降)在网络权重和架构参数方面训练超级网络来找到最佳架构参数。由于边缘执行由一组离散值控制,作者使用 Gumbel Softmax 函数来“软控制”边缘,这有助于计算架构参数的梯度估计,并在偏差和方差之间进行可控权衡。

Eq 1. 超网 vⱼ 中的一个节点被写为所有传入边 vᵢ's 与掩码变量 mᶦʲ 的总和。

在 DNAS 框架中,数据张量(节点 vⱼ)是通过将来自先前节点(vᵢ's)的所有传入边与掩码变量相加来计算的,这已在上面的等式 1 中显示。掩码变量m是一个“边缘掩码”,用于决定将在候选网络中执行的边缘。本文开始时将边缘掩码设为离散值 {0,1},并且特定节点的所有掩码总和为 1,这确保仅执行 1 个边缘。超级网络通过使用等式 2 中给出的概率分布随机执行边缘来实现随机化。这将架构搜索的问题归结为找到最佳架构分布参数 θ 以最小化预期损失函数。使用架构参数 θ,我们可以通过从 P_θ 中采样得到候选架构。

Eq 2. 为每条边分配一个参数 θ ij k 以便从 P_θ 中采样执行边 eᵢⱼ 的概率

方程 3. 梯度的蒙特卡罗估计,其中 aᵢ 是从分布 P_θ 采样的架构,B 是批量大小。

当我们尝试求解最优架构参数 θ 时,我们尝试使用 Monte Carlo 方法(在方程 3 中给出)估计损失函数的梯度,我们发现存在高方差,因为架构空间大小是数量级大于任何可行的 Batch 大小B。梯度的高方差使得 SGD 难以收敛。这个问题是通过使用 Gumbel Softmax 来控制边缘选择来解决的,而不是应用“硬采样”,我们使用“软采样”来选择两个节点之间执行的边缘。这使得掩码向量变量是连续的并且可以直接对 θ 微分,并且没有梯度通过 gᶦʲ 传播(等式 4)。

Eq 4. 使用 gumbel softmax 计算掩码,这里 τ 是温度系数。

温度系数 τ 呈指数衰减。这很有帮助,因为在训练开始时,我们需要具有低方差的梯度,这受到高 τ 值的青睐,从而使m的分布均匀。随着训练的进行,τ 减小,这使得m的分布越来越离散。在训练快结束时,通过离散选择边缘来实现更高的方差是有利的。这有助于温度系数的退火。该管道在开始时用作DARTS(一起训练整个网络),最后用作ENAS(要独立训练的样本子网络)。这里有 2 个参数需要训练w和θ它们是交替和分开训练的。w优化所有候选边,而θ优化选择性能更好的边缘并抑制性能较差的边缘的概率。因此w被训练了几个额外的时期(N_warmup),以便在训练θ 之前得到充分的训练。

针对混合精度量化的问题,DNAS 框架创建了一个具有相同宏观结构(层数和每层滤波器数)的随机超网。使用的损失函数在下面的等式 5 中给出,其中 Cost(a) 表示候选架构的成本(基于选择的权重和激活精度),C(.) 用于平衡交叉熵项和成本(它可以根据选择的超参数偏爱一个)。

Eq 5. 混合精度量化的损失函数

在具有不同网络架构的两个数据集(CIFAR-10 和 ImageNet)上进行了实验。ResNet{20,56,110} 仅在权重上进行量化,并为激活保持全精度,并且在块级别进行搜索,块中的所有层都获得相同的精度。这个实验是在 CIFAR-10 数据集上完成的,按照惯例,第一层和最后一层没有被量化。精度是从 {0, 1, 2, 3, 4, 8, 32} 中选择的,其中 0 表示忽略该块,输入与输出相同,32 表示该块使用全精度。该实验的结果如下图2所示。

CIFAR10 数据集上 ResNet 的混合精度量化。我们在 ResNet{20, 56, 110} 上报告结果。在表中,精度为“Acc”,压缩率为“Comp”。

从上面的结果中,我们可以观察到 DNAS 框架有助于更有效地搜索解决方案,因为总体精度结果更好。此外,所有 Most Accuracy 模型在将模型压缩 11.6x — 12.5x 的同时具有更高的 0.37% 精度,最有效的模型可以实现 16.6x–20.3x 模型大小压缩,精度下降小于 0.39%。从图 3 中我们可以看到,对于最高效的网络,第三个块(在第 1 组中)的精度为 0,这意味着它被跳过了。

ResNet20 最准确与最高效架构的分层位宽

ResNet{18,34} 使用 imagenet 数据集进行量化。他们进行了 2 种不同类型的实验,一种是压缩模型大小,他们只量化权重,另一种是压缩计算成本,他们量化权重和激活。模型压缩的结果如图 4 所示,计算压缩的结果如图 5 所示。DNAS 非常高效,使用 8 个 V100 GPU 在 ResNet 18 上完成对 ImageNet 的搜索不到 5 小时。

ImageNet 上 ResNet 的混合精度量化,用于模型大小压缩。

ImageNet 上 ResNet 的混合精度量化,用于计算成本压缩。“arch-{1, 2, 3}”是按准确度排名的三个搜索架构。

从上图 中可以观察到与图 2 非常相似的情况,DNAS 框架优于全精度对应物,并且最准确模型具有比具有 2 (TTQ) 和 3 (ADMM) 位固定精度的计数器更高的精度。从图 5 中我们可以看到,最准确的架构(arch-1)与压缩率为 40 倍的全精度模型具有非常相似的准确度。arch-2 的压缩率与 PACT、DoReFa、QIP 相似,但精度更高。Arch-3 比 GroupNet 具有更高的压缩率和更高的准确度。

小结

随着对任何 ConvNet 的深入研究,过滤器会不断从数据中学习冗余信息,并且可以将更深的层修剪 90% 以上,而不会损失手头任务的太多准确性,但搜索需要很多时间.

为每一层存储全精度的权重和激活是一种过度杀伤,实验表明,单独的 DNAS(全精度)提高了模型的精度,量化导致了更好的精度他们最准确的模型,并且在他们最有效的模型中下降很少。

模型压缩、模型修剪、量化、神经架构搜索和知识蒸馏等有很多不同的方法,这是一项非常实验性的任务。

DNAS 是一种通用架构搜索框架,不限于混合精度量化问题,可用于不同的应用。

数据驱动的剪枝比基于权重大小或 L1 范数的剪枝效果更好。

“尝试学习”算法本身并不是很有效。我们需要一种方法将整个网络的修剪制定为更高自动化的学习任务,目前它是一项长期运行的顺序任务。

参考

学习在卷积神经网络中修剪过滤器[2018]

通过可微神经架构搜索对卷积网络进行混合精度量化[2018]

 
责编:Challey
阅读全文,请先
您可能感兴趣
新款开发板售价仅为249美元,而上一代40 TOPS开发板售价为499美元,价格仅为上一代的一半。这使得Jetson Orin Nano Super成为“世界上最经济实惠的生成式AI计算机”,特别适合商业AI开发者、爱好者和学生使用。
面对AI时代带来的差异化趋势、软件应用及开发时间长、软硬件协同难、高复杂度高成本等挑战,国产EDA仍需不断探索和创新。
近年来,AWS还积极投资于人工智能(AI)、机器学习(ML)、大数据分析和边缘计算等前沿技术,以保持其在这些领域的竞争优势。
通过机器学习技术,EDA工具可以获取更精确的模型来预测设计中存在的问题,如布线拥塞、信号干扰、热效应等,从而为用户提供更准确快速的指导,避免后期返工。
这一新规则可能会引起美国在世界各地的合作伙伴和盟友的重大担忧,以及一些国家的不满,担心美国会充当单方面仲裁者,决定谁可以获得对AI至关重要的先进芯片。
股东诉讼指控英伟达的首席执行官黄仁勋隐藏了公司记录性收入增长主要由其旗舰产品GeForce GPU的挖矿销售驱动,而非游戏销售,导致投资者对公司的盈利来源和风险敞口产生错误认知。
目前,智能终端NFC功能的使用频率越来越高,面对新场景新需求,ITMA多家成员单位一起联合推动iTAP(智能无感接近式协议)标准化项目,预计25年上半年发布1.0标准,通过功能测试、兼容性测试,确保新技术产业应用。
中科院微电子所集成电路制造技术重点实验室刘明院士团队提出了一种基于记忆交叉阵列的符号知识表示解决方案,首次实验演示并验证了忆阻神经-模糊硬件系统在无监督、有监督和迁移学习任务中的应用……
C&K Switches EITS系列直角照明轻触开关提供表面贴装 PIP 端子和标准通孔配置,为电信、数据中心和专业音频/视频设备等广泛应用提供创新的多功能解决方案。
投身国产浪潮向上而行,英韧科技再获“中国芯”认可
点击蓝字 关注我们安森美(onsemi)在2024年先后推出两款超强功率半导体模块新贵,IGBT模块系列——SPM31 IPM,QDual 3。值得注意的是,背后都提到采用了最新的FS7技术,主要性能
来源:苏州工业园区12月17日,江苏路芯半导体技术有限公司掩膜版生产项目迎来重要进展——首批工艺设备机台成功搬入。路芯半导体自2023年成立以来,专注于半导体掩膜版的研发与生产,掌握130nm至28n
近期,多个储能电站项目上新。■ 乐山电力:募资2亿建200MWh储能电站12月17日晚,乐山电力(600644.SH)公告,以简易程序向特定对象发行A股股票申请已获上交所受理,募集资金总额为2亿元。发
投资界传奇人物沃伦·巴菲特,一位94岁的亿万富翁,最近公开了他的遗嘱。其中透露了一个惊人的决定:他计划将自己99.5%的巨额财富捐赠给慈善机构,而只将0.5%留给自己的子女。这引起了大众对于巴菲特家庭
12月18日,珠海京东方晶芯科技举行设备搬入仪式。插播:加入LED显示行业群,请加VX:hangjia188在10月31日,珠海京东方晶芯科技有限公司发布了Mini/Micro LED COB显示产品
万物互联的时代浪潮中,以OLED为代表的新型显示技术,已成为人机交互、智能联结的重要端口。维信诺作为中国OLED赛道的先行者和引领者,凭借自主创新,实现了我国OLED技术的自立自强,成为中国新型显示产
阿里资产显示,随着深圳柔宇显示技术有限公司(下称:“柔宇显示”)旗下资产一拍以流拍告终,二拍将于12月24日开拍,起拍价为9.8亿元。拍卖标的包括位于深圳市龙岗区的12套不动产和一批设备类资产,其中不
LG Display  12月18日表示,为加强OLED制造竞争力,自主开发并引进了“AI(人工智能)生产体系”。“AI生产体系”是AI实时收集并分析OLED工艺制造数据的系统。LG Display表
在科技浪潮翻涌的硅谷,马克·扎克伯格不仅是“脸书”帝国的掌舵人,更是以其谦逊低调的形象,在公众心中树立了独特的领袖风范。然而,在镁光灯难以触及的私人领域,扎克伯格与39岁华裔妻子普莉希拉·陈的爱情故事
今天上午,联发科宣布新一代天玑芯片即将震撼登场,新品会在12月23日15点正式发布。据悉,这场发布会联发科将推出全新的天玑8400处理器,这颗芯片基于台积电4nm制程打造,采用Arm Cortex A