没有合适的资源?快使用搜索试试~ 我知道了~
11903用于模型压缩的Elad Eban在Google Research工作。elade@google.comYair Movshovitz-Attias为 Google Research工作。yairmov@google.com吴昊谷歌研究。haou@google.comGoogle Research.sandler@google.comAndrew PoonGoogle Research.ayp@google.com加州大学伯克利分校yidelbayev@ucmerced.edu米格尔·A'. Carreira-PerpinCareira-PerpinCarreira-Perp n加州大学默塞德分校mcarreira-perpinan@ucmerced.edu摘要尽管深度神经网络(DNN)取得了成功,但最先进的模型太大,无法部署在低资源设备或内存中保存多个模型的常见服务器配置上模型压缩方法通过减少模型的内存占用、延迟或能耗来解决这一限制,同时对准确性的影响我们专注于减少模型中可学习变量的数量在这项工作中,我们结合了权重哈希和降维的思想,从而产生了一种基于矩阵乘积的简单而强大的结构化多哈希方法,该方法允许直接控制任何深度网络的模型大小,并且是端到端训练的。我们通过压缩ResNet、EfficientNet和Mo- bileNet架构家族的模型来展示我们方法的优势。我们的方法使我们能够大幅度减少变量的数量,同时保持高精度。例如,通过将我们的方法应用于EfficentNet-B4(16 M参数),我们将其减少到B 0(5 M参数)的大小,同时在B 0基线上获得超过3%的准确性。在常用的基准CIFAR10上,我们将ResNet32模型减少了75%,而质量没有损失,并且能够进行10倍压缩,同时仍然达到90%以上的准确率。作者对本文同样有贡献。Elad和Yair对该论文的贡献相当他们共同提出,结构化多重哈希的概念。Yair是手稿的主要贡献者。Elad编写了大部分代码并运行了EfficentNet实验。Hao对编码和实验做出了贡献Yerlan运行了CIFAR和ResNet实验,并简化了结构化哈希的某些方面Miguel为Yerlan提供有关优化和深度网络压缩的建议。马克和安德鲁帮助进行了MobileNet和ResNet实验。†在Google Research工作期间完成的工作。1. 介绍近年来推动机器学习成功的主要因素是构建和训练越来越大的深度神经网络(DNN)的能力。这是通过算法进步的组合实现的,例如ReLU激活[15,34],批量归一化[23]和剩余连接[17];大型训练数据集[8];以及更快,更专业的硬件[25]。绝大多数情况下,当有足够的数据时,较大的模型显示出准确性的提高。然而,这种向上的发展伴随着延迟、能量和内存消耗方面的成本。例如,流行的Resnet- 101模型[17]有4400万个参数,需要150 MB的存储空间; AmoebaNet-A [39]需要469 M参数和1800MB。DNN的大小限制了它们在具有低资源的设备(诸如移动电话和可穿戴设备)中的部署。在服务器端,多租户此外,在推理过程中,网络中更深的层可能会受到加载权重的成本的严重影响。从科学的角度来看,这些模型的参数比它们所训练的数据集中的数据点数量要多得多。 这似乎是违反直觉的,因为它似乎与学习理论相矛盾(例如,VC维度属性[45]),但已被广泛认为是DNN的关键属性[2,10,1]。有人想知道:网络的参数是否存在于低维空间中?我们能否以一种有效表示模型的方式来限制模型类(例如,具有低Kolmogorov复杂度)而不牺牲精度?我们能否找到模型参数数量与其性能之间的内在联系[29]?请注意,低维假设是许多CNN组件的核心。例如,卷积是低维线性映射和可分离卷积(即,dependency后跟1×1卷积)是基于de-11904组成限制。但是,对模型中的单个元素进行严格的限制可能会过于严格。机器学习社区对降低模型成本有相当大的兴趣:减少它们的大小,无论是参数数量还是磁盘上的字节数;降低他们的潜伏期;或者减少他们在推理过程中的记忆和能量消耗。在这里,我们将这些方法称为模型压缩。我们可以将模型压缩领域划分为几种类型的技术:架构修改,例如宽度乘法器,可分离卷积的移动,或滤波器数量优化[28,14];神经元修剪,在训练期间或之后;磁盘大小压缩[36];权重量化[11];和散列[47,42]。这些方法在许多方面是互补的,并被一起使用[16]。在实践中,散列方法在映射到相同变量的模型权重之间引入身份约束。此外,它们缺乏内存局部性,这使得它们很慢,并增加了它们的RAM占用量。这限制了他们的采用。我们提出了一种新的哈希方法,用于减少模型中可训练变量的数量。我们认为DNN中的所有权重都被平铺到一个单一的大矩阵中,并将其表示为多个哈希的乘积之和,计算为矩阵乘积。这定义了从模型权重到可训练变量集合的多重散列,其中完全冲突是指数罕见的,并且被权重之间的高阶相关性取代。使用这种表示,我们然后端到端地训练简化模型。我们称之为结构化多重哈希(SMH)。SMH有一个特定的局部模式,它减少了缓存未命中,提高了压缩模型的效率 这种代表性是独一无二的:它不是线性子空间,也不假定网络中的任何特定操作是低秩的。此外,通过将散列重新参数化为一种可管理产品,实现变得既简单又快速。它在训练或推理方面的开销很小,与哈希模型相比,它的模型速度更快我们通过将SMH应用于最先进的图像分类模型并大幅减少其变量数量来证明SMH2. 相关工作在模型压缩方面已经做了大量的工作,这里我们简要介绍不同的方法。散列Weinberger等人的开创性工作。[47,42]展示了散列在线性分类器的上下文中是多么有用。这项工作建立在内核技巧的基础上,并被设计为在特征和标签数量巨大时允许更有效的训练和推理。Chen等人[5]这一观点被广泛应用于深网络引入HashNet。网络中的每一层都被独立地散列成一组较小的变量。Reagen等人[38]使用Bloomier过滤器[4]以索引权重。这项工作采用后训练/修剪方法,过滤器不是从头开始训练的,并且需要进行微调以实现良好的性能。类似地,在[43]中使用了局部敏感哈希来维护较小的权重池。修剪是去除训练神经网络的不必要的权重[28,32]或整个神经元/滤波器[31,50,14]的过程,目的是保持尽可能接近未修剪版本的性能。这可以通过用稀疏化范数惩罚模型[14,31,3]或通过在一次或多次迭代中对权重/神经元[28权重量化模型量化的工作原理是将参数值调整到较低的精度[11,33,48,24]或甚至二进制权重[7,51]。这具有显著减小大小的预期效果,并且可以有效地与修剪[16,6]结合以获得更高的压缩比。分解我们可以在很大程度上识别纯低秩方法[9,10,49],这些方法将矩阵分解应用于完全连接和适当重塑的卷积权重矩阵,以及其推广-层的张量分解[35,27,12,46]。分解的等级也可以学习[30,49,22]。架构设计一条独立的研究路线是构建紧凑的模型并从头开始训练它们[21,20,44],而不是压缩过度参数化的模型。这本质上是一个手动过程,强化学习方法用于自动执行此任务[18]。3. 方法我们的方法是基于应用于模型的原始变量的哈希方案。这是陈等人的启发。[5]但我们使用多对多映射,而不是在权重和可训练变量之间进行多对一映射。这以指数方式降低了散列中完全冲突的概率。此外,我们的方法保持内存的局部性,因此可以有效地实现,在推理过程中没有延迟开销。请注意,通常在模型的权重张量集合与其可训练变量集合之间存在一一对应关系。事实上,权重和变量这两个名称经常互换使用然而,在考虑模型压缩时,特别是基于哈希的方法,需要明确这一区别。这里我们将权重称为卷积核、全连接层、偏置等中的张量值。我们称变量为权重被散列到其中的可训练元素的集合。11905||l=1--M||MM 1M 1√⌈⌉我们用wl表示层l的权重张量,并且w l的元素为[i1,. - 是的- 是的 ,ik]对于秩k张量(例如,对于2D卷积,k=4,对于全连接层,k=2为了简化符号,我们将使用wl[i]来覆盖内核权重和偏差。 我们定义W=wlL为网络的所有权值的集合,W为模型的权值总数。 这些重量基本上我们要压缩的所有张量的集合卷积核,全连接权重矩阵,和偏置,这些定义了模型权重和变量之间的以下映射:w1 [i]= φ(V1 [h1(l,i)],. - 是的- 是的 ,VM[hM(l,i)])约简函数的选择是多重散列方案中的重要组成部分。sum函数是一个简单的归约函数的例子:ΣM除了批量标准化的规模和偏差参数外[23],因为这些参数可以被吸收到φ(x1,.xM)=m=1xm(1)推理过程中的下一个操作在这里,我们应该注意到,虽然在训练后散列或重排序权重是常见的,但我们考虑在模型训练时将权重散列到变量中的用例。这允许使用反向传播来学习散列变量的值简单散列一个简单的散列方案是基于一个S变量的基础集合,我们称之为变量池,用V表示。散列由函数h定义:h:[l,il] →S其中,l取从1到L(网络中的层数)的值,并且i,l是到w,l的索引。哈 希 h 导 致 模 型 权 重 和 变 量 之 间 的 映 射 :wl[i]=V[h(l,i)]。简单散列类似于[5]中提出的散列不同的是它没有随机符号,也可以考虑诸如产品的其它功能。3.1. 结构化多重哈希相反,我们使用多重哈希将变量划分为共享一些依赖结构的组。常见的散列函数将创建随机分区,但这会丢失一个对我们的用例很重要的属性:内存局部性。网络中的相邻权重可以映射到池中的任意变量,因此层l可能需要访问所有变量池来计算其输出。具体来说,当我们考虑一种实现方式,其中我们不离线解包哈希,而是动态计算权重张量的值时,那么获取所有变量池的成本我们提出了结构化散列的概念,这将增加分类局部性。我们定义2M和积归约器为:ΣM它对网络中的所有变量进行操作(与其每层方法)。这个简单的散列方案如图1a所示,可以认为是训练一个网络,φ<$Q(x1,.x2M)=m=1x2m−1x2m(2)利用由H的碰撞引起的可变共享模式工作。冲突的数量等于由散列方案减少的权重的数量,并且当压缩不是平凡的时,存在大量的约束。例如,如果某个层需要其权重具有较大的幅度,而另一个层需要较小的值,则这可能会造成问题。当优化模型时,会出现不幸的妥协。为了克服这些硬冲突,我们提出了一个多散列方案,如图1b所示,该方案在网络上引入了一组不同的约束,其中冲突引入了更柔和,更平滑的非线性约束。多重哈希一个M-hashing1定义为一组M个哈希函数{h}和M个可变池{V},M结合精心选择的哈希方案,这重新-ducer将保持存储器局部性并且在推理期间是高效的。首先,我们重新参数化我们引用权重的方式设N=W是网络中总权重的数量。而不是wl[i],我们认为模型的所有权重就像来自一个n维的方阵,其中n=N。权重和矩阵元素之间的映射是通过按照权重的创建顺序平铺权重来实现的:其中ri和ci是由下式确定的行索引和列索引:I.这种映射如图2所示。我们的结构化哈希方法的核心思想是和一个归约函数φ:R →R。1为了澄清,我们使用的术语多散列不同于计算机科学理论中常用的术语-我们将多散列与每个权重索引il并行使用,以产生一组变量,然后使用reducer函数将它们组合并产生一个要放置在wl[i]中的值。使用矩阵运算对权重的局部性进行一多重散列方案决定了我们如何表示MW。我们定义了一个2M矩阵乘积多重哈希:M=[V1;V2;. -是的-是的 VM]t[VM+1;VM+2;. -是的-是的(4)11906VV× ×√(b)第(1)款(一)图1:(a)使用哈希的模型压缩。模型中权重张量集合(蓝色立方体)中的每个值都映射到可训练变量集合中的单个变量。当需要强压缩时,许多权重值被映射到同一个变量,在网络中创建等式约束。(b)使用多重哈希的模型压缩。模型中权重张量集合(蓝色立方体)中的每个两个权重映射到同一集合的概率呈指数级下降设M = 10T/2nΩ。3.3. 缩放和缩放正确地初始化深度网络的权重对于它的良好训练通常很重要。因此,这是一个活跃的研究领域,从业者可以使用大量的初始化方法,每个模型架构都与适合它的初始化方案配对。对于我们的多散列压缩方法,为了匹配每个-图2:我们在概念上将深度模型的完整权重集表示为单个正方形矩阵。在这个矩阵中,wl[i]被映射到某个坐标MW[r,k]。然后,我们应用结构化多哈希来表示这个矩阵使用较小矩阵的和积。其中i是大小为n的列向量。注意,在等式(1)中定义的重新参数化。(3)与分解成等式(1)中的散列函数相结合。(4)以存储器高效的方式利用和积归约器实现2M请注意,我们的方法计算整个模型的权重矩阵的低秩近似然而,这并不假设任何特定层是低秩的,也不强制它。3.2. 选择哈希矩阵乘积多散列的大小,即它创建的可训练变量的数量是2Mn。这是由哈希向量的大小和哈希的数量决定的。这些定义了方程中矩阵的大小。(4)-nM和Mn. 我们可以通过以下方式将模型散列为任意目标大小T(最多舍入误差为N):对于未压缩模型,我们希望使用匹配的分布来初始化然而,请注意,在我们的方法中,单个权重值是2M个变量的乘积之和对于目标分布D,可以定义2M个分布dm,使得它们的和积等于D 具体来说,对于com-由于高斯分布族与加法关系密切,所以一般采用高斯分布时,和部分是平凡的。然而,尽管定义良好,但其乘积为高斯分布的分布很难从[37]中采样。相反,我们专注于匹配D的两个属性:范围和规模。请注意,深度模型中的常见做法是在所有层中使用相同的分布族,但具有适当选择的每层尺度。我们在这里遵循这种做法范围搜索方案可分为两种类型:无界分布(例如,正常的),和有界的(例如,均匀的、截断的法线)。当初始化池中的变量时,我们匹配range属性。缩放比例的挑战在于不同的图层可以初始化为不同的比例。例如,Glorot [13]初始化时会发生这种情况,其中标准的解扰是层的扇入和扇出的函数在此设置中,无法初始化散列变量11907精度L−′使得所有层同时具有期望的尺度。80我们通过首先初始化变量使std(wl)=1来解决这个问题,70然后我们重新缩放每一层以匹配目标比例S。对于和积缩减器,我们标准化得到的60通过设置标准偏差σ或基本值,50根据以下条件设置变量:std(wl)=std.ΣMm=1Σ40x2m−1x 2m30‚20.M. Σ=,则m=1var(x2m−1)var(x2m)0M 2M 4M 6M 8M 10M 12M模型大小设置σ=M=Mσ414用单位标准偏差创建权重-图3:Imagenet上基于ResNet的模型的准确度与模型大小我们在ResNet50和ResNet101上使用宽度乘数将SMH为第然后,乘以sl可以有效地控制每一层的规模。3.4. 每层可学习量表虽然我们的多重哈希技术消除了等式约束,但权重之间仍然存在依赖关系,因为它们共享其和积中使用的一些变量考虑两个层l和l',由于共享底层变量,网络可能很难学习wl和wl上面提到的每层缩放在初始化时解决了这个问题,但是以相同尺度初始化的层在训练时必然保持相似的我们允许每层规模是一个可学习的变量,这为网络提供了另一个自由度来解决这个问题。我们在4.6节中的实验表明,这一小部分额外变量(每层一个)总是有帮助的,结果是0。准确度提高5%-1%4. 结果在本节中,我们在三个模型族上评估我们的方法:ResNets、EfficientNets和MobileNets。我们表明,SMH压缩可以大大减少模型的大小,以最小的质量损失事实上,当压缩大型模型时,我们的性能往往优于来自同一家族的小型模型。4.1. ResNet模型ResNet架构[17]是通用的,因此在许多应用中使用。他们也是受欢迎的基准模型。有两个主要的过程用 来 使 ResNet 模 型 更 便 宜 : 改 变 层 数 ( 例 如ResNet101,ResNet50,ResNet18)和改变过滤器的数量,通常使用统一缩放来完成,通常称为宽度倍增器。图3显示了我们在ResNet50和ResNet101上的结构化多哈希压缩。曲线上的每一点模型类型,SMH发现更好的权衡之间的大小和准确性。是一个训练收敛到特定目标大小的模型我们比较了收缩的每一个模型使用宽度乘数。请注意,SMH压缩模型的效率更高。例如,对于70%的精度,SMH模型的大小是宽度乘数模型的一半。4.2. EfficientNet模型EfficientNet模型系列[44]为比较提供了一个自然而强大的基线。通过对影响大小和延迟的模型超参数进行大规模研究,他们提出了一个模型缩放公式。应用这个公式,作者提出了从很大(B_7)到很小(B_0)的8种不同的模型。为了评估我们的压缩技术的优点,我们将其应用于EfficientNet家族的一个子集(即B0到B6)。对于每个模型,我们使用较小变量的大小作为目标大小。例如,我们将B3架构压缩为5.3M、7.8M和9.2M参数,对应于B0、B1和B2变体的大小。图4显示了应用此过程的结果。条形图按其被压缩到的目标大小每个条形指示起始模型架构。请注意,与原始模型相比,我们可以显着提高任何理想模型大小例如,原始B0模型的精度为76。3%,但压缩到B0大小的B6架构具有80。百分之三。更激烈的是群体之间的比较- 压缩到B1大小的B4模型优于B3型号,尽管它比B3型号小了35%。4.3. MobileNetsMobileNets [20,41,19]是一系列专门针对移动设备的模型。这些模型已经完整Resnet101:44M变量ResNet101:结构化多重哈希ResNet101:宽度倍增器ResNet50:结构化多重哈希ResNet50:宽度乘法器−11908压缩架构基线(无压迫)B5B6B4B3B2B1≈联系我们压缩目标模型精度每秒样本方法大小SMH5.3M0.774 60601X哈希值5.3M 0.762 4000802X Hash 5.3M 0.765 280010X哈希5.3M 0.770 79079SMH7.9M0.782 60401X哈希7.9M 0.773 3900782X哈希7.9M 0.775 250010X哈希7.9M 0.779 7607776B0(5.3M)B1(7.8M)B2(9.2M)B3(12M)目标模型尺寸图4:EfficientNet上的准确度与目标模型大小。条形代表使用的原始架构。它们按压缩后模型的大小分组。例如,将B6架构压缩到B0的大小具有80的准确度。1%,而原来的B0为76. 百分之四请注意,B5和B6架构的训练速度很慢,并且很难找到稳定的超参数。主要针对FLOP进行优化。然而,它们也明显小于上面考虑的其他模型。在本节中,我们测量了将结构化多重哈希应用于MobileNetV 2和Mo-bileNetV 3的效果。比较结果见图5。除了我们为ResNet所做的宽度乘数之外,我们还基于宽度乘数和分辨率乘数的组合施加了一个额外的更强的基线。宽度乘法减少了FLOP和模型大小,而结构化哈希只减少了模型大小。为了建立一个更强的基线,以产生可比较的FLOP,当我们应用宽度乘数α来减小模型大小时,我们将分辨率增加α,使FLOP计数回到原始成本。注意,与[44]和[40]相比,我们实际上并没有使用更高分辨率的相反,我们只是对输入进行上采样。这保证了所有模型都是在完全相同的数据上训练的。有趣的是,对于MobileNetV2,多散列方法击败了两个基线。另一方面,对于MobileNetV3,更强的基线在完整模型周围产生稍好的权衡曲线。然而,我们注意到,强基线既慢又需要更多的内存来训练(由于早期张量的高空间分辨率)。事实上,我们无法训练乘数小于0.4的强基线示例,这需要使用上采样到450x450的输入。限制强基线的有用性的另一个潜在问题是它需要引入图像伪影的分数上采样。表1:EfficientNet B2模型上的哈希方法比较。我们比较了SMH与非结构化散列的1,2和10散列函数。请注意,SMH不仅更准确,而且更快。我们使用4x4拓扑在TPU V3上测量每秒的训练4.4. 与非结构化哈希在这里,我们将SMH的结果与单个和多个哈希基线进行比较。我们在整个网络权重集上实现模型哈希对于标准散列,我们将每个权重散列到K1,2,10组可训练变量中,并使用Eq.(一).我们在压缩到5M和7.9M可训练变量(分别为B0和B1的大小)的EfficientNetB2模型上比较了这些方法。表1示出了结果。SMH比标准哈希更准确,更快。SMH的存储局部性及其矩阵实现产品导致这种低开销。请注意,这些实验中的SMH使用的是800个哈希函数。4.5. 极端压缩如上所述,深度网络被认为是过度参数化的。在这里,我们进一步研究这个概念。我们问一个问题:当使用极少量的可训练变量时,深度模型是否准确? 对于一个没有专门为此目的而设计的体系结构,可以这样做吗?为了回答这个问题,我们进行了两组实验,在CIFAR10 [26]上使用ResNet32模型,在ImageNet上使用EfficentNet模型。在图6中,显示了应用于在CIFAR10数据集上训练的ResNet32模型的首先注意,使用我们的多哈希方法,我们可以有效地丢弃模型中75%此外,我们可以创建一个只有原始大小10%的模型(只有50K个变量),并且仍然保持90%以上的准确率。其次,我们采用EfficentNet B4和B5架构,并使用SMH将它们分别压缩10倍至2M和3M参数。在表2中,我们将它们与具有类似准确性的vanillaEfficentNet模型进行了比较,请参见精度11909(1,224)0.50.750.6(0.75,260)0.40.33(0.6,310)0.25(0.5、400)(0.4,450)0.15MobilenetV2:宽度倍增器+分辨率MobilenetV2:宽度乘数MobilenetV2:结构化多重哈希完整的Resnet32TRPTensorTrain塔克SMHWMTRN精度7580707565706065556050电话:+86-510 - 88888888传真:+86-510- 88888888型号大小,百万550.51.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0型号大小,百万(a)(b)第(1)款图5:在ImageNet上将SMH应用于MobilenetV2(a)和MobilenetV3(b)。我们比较两个基线。宽度乘数:所有图层都以一个常数缩小宽度乘数+分辨率是一个更强的基线,我们另外对输入图像进行上采样,以保持相同的FLOPS数强基线的标签(例如(0.4,450))分别表示乘数和上采样分辨率。SMH的标签是目标压缩率。959085表2:SMHB4模型比B0小60%,精度相同。SMHB5型号比B0小40%,比B0好2%,比B1小63%,比B1略低75准确度700K23K46K69K92K115K使用和不使用每层比例变量的gence(0%的百分比)(5%)(10%)(15%)模型大小(20%)(25%)相同的超参数。(原始分数)图 6 : CIFAR10 上 的 准 确 度 与 模 型 大 小 。 我 们 在ResNet32模型上比较了多种压缩方法。我们专注于极端压缩状态。最右边的点表示原始ResNet32的25%的模型。这里TRP是来自[49]的低秩ResNet 32,Tucker,Tensor-Train 和 Tensor-Ring-Net ( TRN ) 结 果 来 自[46],WM是宽度乘数。在这两种情况下的准确性。4.6. 每层可学习量表为了检查添加每层规模变量的好处,如第3.4节所述,我们在ImageNet上训练了16个基于 EfficientNet的我们训练了五个不同的基础模型B0到B4,并为每个基础模型设置了一些目标大小来压缩。然后我们训练模型,直到转换-表3显示了添加每层比例变量时的精度差异我们通常会看到大约0的改善。5%到1%。还要注意的是,这个过程永远不会影响性能。4.7. 目标重量压缩在压缩神经网络时,可以选择以所有权重为目标,或其中较小的子集例如,在我们所有的实验中,我们不需要对任何Batch Normalization变量进行散列,因为这些变量可以在推理过程中被吸收到下面的卷积中。模型权重之间的一个自然区别是将来自卷积层的权重与来自全连接层的权重分开,卷积层通常处于模型的早期阶段,而全连接层通常处于网络的后期。图7显示了来自EfficientNet系列的五个基本架构(B1,...,B5)都压缩到B0的大小(5M变量)。对于每个基本模型,(1,224)(0.75、260)(0.5、400)0.33(0.4,450)0.750.50.20.15MobilenetV3:宽度倍增器+分辨率MobilenetV3:宽度倍增器MobilenetV3:结构化多重哈希精度精度80模型精度模型大小B0百分之七十六点三5MSMH2MB476.6%2MSMH3MB5百分之七十八点三3M119100.790.780.770.760.750.74B1B2 B3 B4 B5基础模型表3:添加每层可学习量表时的准确性提高。平均精度增益为0。7%,请注意,每层规模总是有益的。通过散列所有权重来压缩它,并且一次只散列来自卷积的权重。差异并不大,表明多重哈希约束具有足够的灵活性来进行有用的权衡。还请注意,当从较小的架构(B1,B2)开始时,最好将散列限制在卷积上。这些模型中的全连接层更小,并且具有更少的表示能力。然而,当从更大的模型(B4,B5)开始时,趋势相反,并且当让多散列压缩所有层时,可以实现更高的准确性。对于这些模型,全连接层有许多参数,如果不能访问这些层,哈希必须更彻底地压缩网络的其余部分例如,B5架构在其密集层中具有30M中的2M权重。当将其压缩到B0的大小而不对密集层进行散列时,我们现在需要将28M权重散列到3M变量中,这些层压缩了89%5. 讨论在本文中,我们提出了一种有效的模型压缩方法,该方法基于权重哈希的思想,同时解决了其关键限制:我们通过引入多哈希和归约框架来消除哈希内存局部性通过避免随机散列而保留,而是定义一个结构化映射.SMH方法可以表示为矩阵乘积,并且不会向模型延迟添加材料开销。图7:将EfficientNet架构压缩到B0(5M)的大小。条形图按被压缩的体系结构进行分组。我们比较了压缩所有层(蓝色)和仅散列卷积层(橙色)。有一个小的区别-该方法请注意,较小的模型受益于保持完全连接的层不变,而较大的基础模型则受益于压缩所有层的灵活性。我们表明,一个良好的优化散列模型可以强烈压缩,精度损失最小。我们在广泛使用的ResNet模型家族以及更新且更强大的Efficient-Net和MobileNet模型家族上展示了我们的结果。从科学的角度来看,模型散列与量化或修剪明显不同。模型量化改变了基础函数近似的精度,但不改变近似器的维数。修剪导致一些权重值为零,但这本身对整体尺寸没有影响。如果修剪足够强大,可以将权重矩阵的完整行设置为零,或者如果它具有结构化形式,例如[14]它改变了近似器的维数(变量的数量)和它的表达性(层数、非线性的量等)。相比之下,模型散列不改变精度,但仅影响维度(即,变量数)。然后,模型散列提供了一个有用的工具,用于探索架构族中变量数量的作用。我们对ResNet系列模型的研究结果表明,变量的数量与准确性密切相关。基于ResNet101和ResNet50的模型,压缩到相同数量的参数,彼此几乎无法区分。这对于我们的哈希技术和宽度乘数基线都是正确的相比之下,这不适用于EfficientNet或Mobilenet家族,其中不同的架构(例如,B6与B4,或V2与V3)压缩到相同的大小,在其准确性上有显著差异。显然,在我们完全理解参数计数的作用所有卷积基础模型目标大小固定比例可学习量表精度差分B02.0M71.9%73.1%百分之一点二3.0M百分之七十三点七百分之七十四百分之零点三B12.0M百分之七十三点四百分之七十四点二百分之零点八3.0M百分之七十五点二76.5%百分之一点三5.0M百分之七十六点四76.8%百分之零点四精度11911引用[1] 吉米·巴和里奇·卡鲁阿纳深网真的需要深吗?神经信息处理系统的进展,第2654-2662页,2014年。1[2] Mikhail Belkin,Daniel Hsu,Siyuan Ma,and SoumikMan-dal.验证现代机器学习和偏差-方差权衡。ArXiv,abs/1812.11118,2018。1[3] 米格尔A'.卡雷拉-佩尔普因纳坦 和 叶尔兰Idelbayev. 用于神经网络修剪的“学习压缩”算法。在2018年IEEE计算 机协 会会议 上, 计算机 视觉 和模式 识别(CVPR'18),第8532-8541页,2018年。2[4] Bernard Chazelle , Joe Kilian , Ronitt Rubinfeld , andAyellet Tal. bloomier filter:静态支持查找表的有效数据结构。在第十五届年度ACM-SIAM离散算法研讨会的会议录中,第30- 3939.工业与应用数学学会,2004年。2[5] 陈文林、詹姆斯·威尔逊、斯蒂芬·泰里、基利安·温伯格和陈益新。用散列技巧压缩神经网络。国际机器学习会议,第2285-2294页,2015年。二、三[6] Yoojin Choi,Mostafa El-Khamy,and Jungwon Lee.走向网络量化的极限 在proc 第五届国际Conf. Learning Representations(ICLR 2017),2017. 2[7] Matthieu Courbariaux , Yoshua Bengio 和 Jean-PierreDavid。Binaryconnect:在传播过程中使用二进制权重训练深度神经网络。神经信息处理系统的进展,第3123-3131页,2015年。2[8] Jia Deng,Wei Dong,Richard Socher,Li-Jia Li,KaiLi,and Li Fei-Fei. Imagenet:一个大规模的分层图像数据库。2009年IEEE计算机视觉和模式识别会议,第248-255页。Ieee,2009年。1[9] MishaDenil , BabakShakibi , LaurentDinh ,Marc'Aurelio Ranzato,and Nando De Freitas.深度学习中的参数预测。神经信息处理系统的进展,第2148-2156页,2013年2[10] 艾米丽·L·丹顿、沃伊切赫·扎伦巴、琼·布鲁纳、扬·勒昆和罗布·弗格斯。利用卷积网络中的线性结构神经信息处理系统的进展,第1269-1277页,2014年一、二[11] Julian Faraone , Nicholas Fraser , Michaela Blott , andPhilip H.W.梁SYQ:学习对称量化以实现高效的深度神经网络。 在proc 2018年IEEE Computer Society Conf. 计算机视觉和模式识别(CVPR'18),第4300-4309页,2018年。2[12] TimurGaripov , DmitryPodoprikhin , AlexanderNovikov,and Dmitry Vetrov. 终极张量化:压缩卷积层和FC层一样。arXiv:1611.03214 [cs.LG],Nov. 2016年10月。2[13] 泽维尔·格洛特和约舒亚·本吉奥了解训练深度前馈神经网络的困难。第十三届人工智能和统计,第249-256页,2010年。4[14] Ariel Gordon、Elad Eban、Ofir Nachum、Bo Chen、HaoWu、Tien-Ju Yang和Edward Choi。Morphnet:快速模拟-深度网络的资源受限结构学习在IEEE计算机视觉和模式识别会议论文集,第1586-1595页二、八[15] Richard HR Hahnloser,Rahul Sarpeshkar,Misha A Ma-howald,Rodney J Douglas,and H Sebastian Seung.数字选择和模拟放大共存于一个受大脑皮层启发的硅电路中。Nature,405(6789):947,2000. 1[16] Song Han,Huizi Mao,and William J Dally.深度压缩:使用修剪、训练量化和霍夫曼编码压缩深度神经网络。arXiv预印本arXiv:1510.00149,2015。2[17] Kaiming He,Xiangyu Zhang,Shaoying Ren,and JianSun.用于图像识别的深度残差学习。在Proceedings ofthe IEEE conference on computer vision and patternrecognition,第770-778页,2016中。一、五[18] Yihui He ,Ji Lin ,Zhijian Liu ,Hanrui Wang, Li-JiaLi,and Song Han. AMC:AutoML用于移动设备上的模型压缩和加速。第15届欧洲会议。计算机视觉(ECCV2[19] Andrew Howard , Mark Sandler , Grace Chu , Liang-Chieh Chen,Bo Chen,Mingxing Tan,Weijun Wang,Yukun Zhu,Ruoming Pang,Vijay Vasudevan,Quoc V.Le和Hartwig Adam。正在搜索mobilenetv3。CoRR,abs/1905.02244,2019。5[20] Andrew G. Howard,Menglong Zhu,Bo Chen,DmitryKalenichenko,Weijun Wang,Tobias Weyand,MarcoAn- dreetto,and Hartwig Adam. Mobilenets:用于移动视觉应用的高效卷积神经网络CoRR,abs/1704.04861,2017。二、五[21] 福雷斯特N.放大图片放大图片作者:Matthew W.放大图片作者:William J.达利和库尔特·库泽。SqueezeNet:AlexNet级别的精度,参数减少50倍eters和0.5MB的模型大小。 arXiv:1602.07360 [cs.CV],2016年11月4日。2[22] 你是伊得贝和米耶瓦。 Carreira-Perpi nZara'n. 神经网络的低秩压缩:学习每一层的等级。在2020年IEEE计算机协会会议上。计算机视觉和模式识别(CVPR'20),2020年。2[23] Sergey Ioffe和Christian Szegedy。批次标准化:通过减少内部协变量偏移来加速深度网络训练。arXiv预印本arXiv:1502.03167,2015。第1、3条[24] Benoit Jacob,Skirmantas Kligys,Bo Chen,MenglongZhu , Matthew Tang , Andrew G. Howard , HartwigAdam,Dmitry Kalenichenko.神经网络的量化和训练,用于高效的仅整数算术推理。IEEE/CVF计算机视觉和模式识别会议,第2704-2713页,2018年。2[25] Norman P Jouvillage,Cliff Young,Nishant Patil,DavidPatter- son,Gaurav Agrawal,Raminder Bajwa,SarahBates,Suresh Bhatia,Nan Boden,Al Borchers,et al.张 量 处 理 单 元 的 数 据 中 心 内 性 能 分 析 。 2017
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功