专栏
天翼云开发者社区

基于半结构化的R-TOSS剪枝框架

2024-03-14 10:58:32 30阅读

《R-TOSS: A Framework for Real-Time Object Detection using Semi-Structured Pruning》提出了一种新的半结构化剪枝框架R-TOSS,它克服了最先进的模型剪枝技术的缺点。在JetsonTX2上的实验结果表明,R-TOSS在YOLOv5目标探测器上的压缩率为4.4×,推理时间加速了2.15×,能耗降低了57.01%。R-TOSS还可以在RetinaNet网络上进行2.89×的压缩,推理时间加速了1.86×,能耗降低了56.31%。还展示了与各种最先进的剪枝技术相比的显著改进。

1.剪枝技术:

修剪目标检测模型旨在通过使用某些标准从模型中移除权重参数来减少模型大小和计算复杂性。考虑具有Ln个层的深度学习模型,深度学习模型最复杂的操作是卷积(Conv)层。如果每个Conv层具有Kn个kernel和Wn个非零权重,则在推断过程中,模型的计算成本是Wn * Kn * Ln的函数。

随着所涉及参数的增加,计算成本急剧增加。通过执行参数修剪,可以在模型中引入稀疏性,这将减少Wn中的参数,通过kernel修剪,还可以减少Kn,降低了总体计算成本。新兴计算平台提供了软件压缩技术,该技术可以响应于零值(删减)参数的存在来压缩输入矩阵和权重矩阵,从而在模型执行期间完全skipping它们。skipping操作也可以可选地由具有专门设计的硬件的硬件执行。

先前工作中的剪枝方法可分为3大类:

  • 非结构化剪枝
  • 结构化剪枝
  • 半结构化剪枝或基于模式的剪枝

 

 

1.1非结构化剪枝:

在非结构化修剪中,如图1(a),多余的权重被随机地修剪,同时将损失保持在最小,这有助于保持模型的准确性。目前已有几种非结构化的修剪方案,例如:

  • weight magnitude pruning,重点是将一组低于预定义阈值的权重替换为零;
  • gradient magnitude pruning,修剪梯度低于预定义阈值的一组权重;
  • synaptic flow pruning,是一种迭代修剪技术,使用全局评分方案并修剪一组权重,直到全局评分降至阈值以下;
  • second order derivative pruning,通过将一组权重替换为零并保持网络的损失接近原始损失来计算权重的二阶导数。

由于来自不同权重矩阵的不同稀疏度导致的负载失衡,这些方法线程级并行性产生了负面影响。不规则的稀疏性也会影响内存性能,因为它会在数据访问位置中产生变化,从而降低跨各种平台(GPU、CPU、TPU)缓存的性能。

 

1.2结构化剪枝:

在结构化修剪中,对整个滤波器(如图1(c))或连续通道(如图1(b))进行修剪,以增加模型的稀疏性。滤波器/通道修剪提供了更均匀的权重矩阵,并减小了模型的大小。与非结构化修剪相比,简化的矩阵有助于减少乘法和累加(MAC)操作的数量。

然而,结构化修剪也会降低模型的准确性,因为可以有助于模型整体准确性的权重也将与冗余权重一起被修剪。结构化修剪也可以与TensorRT等加速算法一起使用。

与非结构化修剪不同,由于权重矩阵的统一性质,结构化修剪可以更好地利用各种平台在内存和带宽方面提供的硬件加速。

 

1.3半结构化剪枝:

半结构化剪枝,也称为模式剪枝,是结构化剪枝和非结构化剪枝方案的组合,如图1(d)。这种类型的剪枝利用了可以用作kernel掩码的kernel模式。掩码防止其覆盖的权重被修剪,从而导致kernel中的部分稀疏。通过评估修剪kernel的有效性,例如利用L2范数,可以在推理过程中识别和部署最有效的模式掩码。由于kernel模式只能修剪kernel内固定数量的权重,因此它们将比其对应的稀疏性更少。

为了克服这个问题,模式剪枝与连接剪枝一起应用,连接剪枝会完全剪枝一些kernel。然而,大多数现代目标检测器都有大量的1×1卷积核,这些核包含在这个过程中不被修剪的冗余权重。因为模式修剪技术通常侧重于大小为3×3或更大的卷积核,这些卷积核具有更多的候选权重用于修剪。

连接剪枝也会降低模型的准确性,因为在这个过程中,特定卷积核中的几个重要权重也会被移除。然而,由于其半结构化性质,kernel模式修剪仍然可以利用硬件并行性来减少模型的推理时间。

 

2.R-TOSS提出动机:

表2总结了在Jetson TX2上随着目标检测器模型大小的增加,推断时间也在增加。为了减少操作延迟,同时保持模型精度,可以采用剪枝技术。在剪枝技术中,基于模式的半结构化剪枝可以提供比非结构化剪枝更好的稀疏性,同时确保比结构化剪枝技术更好的准确性

 

半结构化剪枝还允许更规则的权重矩阵形状,从而允许硬件更好地加速模型推断。同时,与结构化剪枝不同,它不会剪枝整个卷积核权重,从而保留更多信息,从而确保更好的准确性。因此,理想情况下,基于模式的剪枝技术可以生成具有高稀疏性和高精度的模型

然而,基于模式的剪枝存在一个问题,当前的技术主要集中在3×3卷积核上,这限制了可实现的稀疏性和推理加速的程度。大多数最先进的模型,如YOLOv5、RetinaNet和DETR,分别由68.42%、56.14%和63.46%的1×1小卷积核组成。因此,为了增加此类模型的稀疏性,基于模式的剪枝技术有时会在这3×3个卷积核上使用连通性修剪。但是,连接剪枝中使用的“每层最后一个内核”标准会导致重要信息的丢失,从而影响模型的准确性。因此,作者选择在剪枝框架中避免连接剪枝

如上所述,该技术仍然没有处理1×1卷积核,这是卷积核的重要组成部分。

为了解决这些缺点,作者提出了一种三步剪枝方法来剪枝1×1卷积核:

  • 将1×1卷积核组成3×3卷积核临时权重矩阵;
  • 对这些权重矩阵应用kernel模式剪枝;
  • 将临时权重矩阵分解为1×1卷积核,并重新分配给它们的原始层。

因此,该方法增加了模型的稀疏性,同时保留了有助于模型准确性的重要信息。

 

3.R-TOSS的创新:

  • 通过使用深度优先搜索来生成要一起修剪的父子核计算图来降低迭代修剪的计算成本的方法;
  • 提出一种剪枝技术用于修剪1×1核权重,以增加模型稀疏性;
  • 提出一种在不进行连通性修剪的情况下实现kernel修剪,以保留kernel信息用于推断,这有助于保持模型的准确性;
  • 与多种最先进的修剪方法进行详细对比,R-TOSS新框架在mAP、延迟、能耗和实现的稀疏性方面的有效性。

 

4.R-TOSS剪枝框架:

如图2所示,R-TOSS框架采用了迭代修剪方案,并进行了若干优化,以减少计算成本和时间开销。首先使用深度优先搜索(DFS)算法,该算法用于查找模型中的父子层耦合。由此获得的父子图用于减少修剪的计算要求。当父层的修剪反映在图中的子层中时,计算成本会降低。跟踪DFS,识别子图中的3×3和1×1内核,并对其应用内核大小特定的修剪。

 

 

4.1 DFS算法:

算法1显示DFS算法的伪代码。使用预训练的模型作为输入,使用从反向传播获得的梯度来计算计算图(G)。初始化一个空列表(group_list)(第2行)以存储父子图层组。然后遍历模型层(l),并在计算图G上应用DFS搜索来识别该层的父层。如果一个层没有任何父层,那么将该层指定为它自己的父层(lp)(第7-9行),这将成为一个组。如果一个层被标识为group_list(第5行)中任何层的子层(lc),则该层现在成为子层(lc)的父层(lp),并添加到该组(第5-6行)。每个父层(lp)可以有多个子层(lp),但每个子层只能有一个父层(lp)。此过程将继续,直到所有图层都指定给一个组。由于每个组中的层都有耦合通道,因此它们也共享其kernel weight,因此可以共享相同的kernel模式。

 

 

4.2选择kernel模式:

通过标准组合法在所有可能的组合中生成模式掩模,使用以下公式:

其中,n是矩阵的大小,k是模式掩模的大小。

然后使用以下两个标准来减少使用的内核模式的数量:

  • 丢弃所有没有相邻非零权重的模式;这样做是为了保持kernel模式的半结构化性质;
  • 通过使用范围[-1,1]内的随机初始化计算kernel的L2范数来选择最常用的kernel模式。k的值可以从1到8,可以生成8种不同类型的模式组。。

为了增加模型的稀疏度,模式中非零权重的数量应该更低。先前关于kernel模式修剪的工作使用了由kernel中的4个非零权重组成的4入口模式。但这导致模型具有相对较低的稀疏性,作者建议在R-TOSS框架中使用3入口模式(3EP)2入口模式(2EP)kernel模式,它们分别使用3个和2个非零权重。

 

 

4.3 3×3 kernel修剪:

 

算法2显示了使用所提出的内核模式进行3×3 kernel模式修剪的伪代码,其示例如图3所示。

首先使用来自算法1的3×3父核权重(KW)作为输入,并初始化一个变量(shape)以存储核权重的形状(第1行)。还创建了一个由3EP(图3(a))和2EP(图2(b))模式组成的模式字典(kernel_patterns_dict)(第3行)。然后遍历3×3 kernel,并将当前3×3 kernel的权重矩阵存储在层中作为temp_kernel(第5行)。然后,初始化一个空列表(L2_dict),在应用模式字典中的kernel模式后,该列表可以存储temp_kernel的范数。

然后遍历kernel_patterns_dict中的kernel模式,并在应用kernel模式后计算kernel的L2_norm。该L2_norm与来自kernel_patterns_dict的当前模式的key一起存储在L2_dict列表中(第7-10行)。然后,使用L2_dict中的L2_norm值找到temp_kernel的最佳kernel模式,并将kernel模式的索引存储在最佳拟合变量(bestfit variable)中(第11行)。来自bestfit的索引现在被用作kernel的kernel模式,并更新为其原始权重矩阵(第12-14行)。然后,遍历父层中的所有kernel,并将其存储为算法1中父层组(lP)中其余3×3 kernel的 kernel 掩码。一旦找到适合于父kernel的模式,这些模式也将通过利用卷积映射应用于相应的子kernel。

还通过执行1×1到3×3 kernel的转换,将这种模式匹配方法应用于1×1 kernel。由于将相同的kernel掩码应用于特定组中的所有kernel,因此可以减少框架修剪整个模型所需的时间。

通过实验,将所需的模式总数减少到21个模式。由于在推理时只有21个预定义的kernel模式,因此具有类似模式的kernel被分组在一起,可以降低总体计算成本并加快推理速度。

 

4.4 1×1 kernel修剪:

通过执行1×1到3×3变换,从内核剪枝中删除了连接剪枝。这可以确保保持模型的准确性,并减轻连接修剪带来的损失。1×1 kernel剪枝还可以通过将相似的kernel模式分组在一起来加速推理。算法3显示了执行1×1内核修剪的伪代码。

 

首先使用来自算法1(group_list)的父层的1个×1内核权值Kw作为输入。然后初始化一个列表FL,用于存储来自Kw的扁平的1×1内核权重(第1-2行)。随后,初始化一个用于存储临时权值矩阵的temp_array。我们遍历扁平数组FL,并将列表中的每9个权重分组为3×3个临时权重矩阵,这些矩阵存储在temp_array中(第5-11行)。这个过程一直持续到列表的末尾,或者如果值小于9。此时,剩余的权重被视为零权重并被修剪(第13行)。然后,使用算法2对来自temp_array的临时3×3权重矩阵进行3×3 kernel修剪(第14行)。算法2的输出矩阵被存储回temp_array,temp_array被转换回1×1 kerne,并附加到原始的1×1 kernel权重(第15-16行)。

 

 

5.总结:

本文提出了一种新的剪枝框架(R-TOSS),它能够在压缩比和推理时间方面优于几种最先进的剪枝框架。与基线模型的mAP相比,还能够增加目标探测器的mAP。R-TOSS框架实现了显著的压缩率,同时在两种最先进的对象检测模型,YOLOv5sRetinaNet上提高了mAP性能。所提出的框架在不需要任何编译器优化或附加硬件要求的情况下实现了这些结果。R-TOSS剪枝框架在YOLOv5s上的模型压缩率为4.4×,在RetinaNet上为2.89×,同时在准确性和推理时间方面优于原始模型和一些最先进的剪枝框架。

 

 

参考:

论文来源:R-TOSS: A Framework for Real-Time Object Detection using Semi-Structured Pruning

 

 

  • 2
  • 2
  • 0
0 评论
0/1000
评论(0) 发表评论
pandame

pandame

4 篇文章 0 粉丝
关注

基于半结构化的R-TOSS剪枝框架

2024-03-14 10:58:32 30阅读

《R-TOSS: A Framework for Real-Time Object Detection using Semi-Structured Pruning》提出了一种新的半结构化剪枝框架R-TOSS,它克服了最先进的模型剪枝技术的缺点。在JetsonTX2上的实验结果表明,R-TOSS在YOLOv5目标探测器上的压缩率为4.4×,推理时间加速了2.15×,能耗降低了57.01%。R-TOSS还可以在RetinaNet网络上进行2.89×的压缩,推理时间加速了1.86×,能耗降低了56.31%。还展示了与各种最先进的剪枝技术相比的显著改进。

1.剪枝技术:

修剪目标检测模型旨在通过使用某些标准从模型中移除权重参数来减少模型大小和计算复杂性。考虑具有Ln个层的深度学习模型,深度学习模型最复杂的操作是卷积(Conv)层。如果每个Conv层具有Kn个kernel和Wn个非零权重,则在推断过程中,模型的计算成本是Wn * Kn * Ln的函数。

随着所涉及参数的增加,计算成本急剧增加。通过执行参数修剪,可以在模型中引入稀疏性,这将减少Wn中的参数,通过kernel修剪,还可以减少Kn,降低了总体计算成本。新兴计算平台提供了软件压缩技术,该技术可以响应于零值(删减)参数的存在来压缩输入矩阵和权重矩阵,从而在模型执行期间完全skipping它们。skipping操作也可以可选地由具有专门设计的硬件的硬件执行。

先前工作中的剪枝方法可分为3大类:

  • 非结构化剪枝
  • 结构化剪枝
  • 半结构化剪枝或基于模式的剪枝

 

 

1.1非结构化剪枝:

在非结构化修剪中,如图1(a),多余的权重被随机地修剪,同时将损失保持在最小,这有助于保持模型的准确性。目前已有几种非结构化的修剪方案,例如:

  • weight magnitude pruning,重点是将一组低于预定义阈值的权重替换为零;
  • gradient magnitude pruning,修剪梯度低于预定义阈值的一组权重;
  • synaptic flow pruning,是一种迭代修剪技术,使用全局评分方案并修剪一组权重,直到全局评分降至阈值以下;
  • second order derivative pruning,通过将一组权重替换为零并保持网络的损失接近原始损失来计算权重的二阶导数。

由于来自不同权重矩阵的不同稀疏度导致的负载失衡,这些方法线程级并行性产生了负面影响。不规则的稀疏性也会影响内存性能,因为它会在数据访问位置中产生变化,从而降低跨各种平台(GPU、CPU、TPU)缓存的性能。

 

1.2结构化剪枝:

在结构化修剪中,对整个滤波器(如图1(c))或连续通道(如图1(b))进行修剪,以增加模型的稀疏性。滤波器/通道修剪提供了更均匀的权重矩阵,并减小了模型的大小。与非结构化修剪相比,简化的矩阵有助于减少乘法和累加(MAC)操作的数量。

然而,结构化修剪也会降低模型的准确性,因为可以有助于模型整体准确性的权重也将与冗余权重一起被修剪。结构化修剪也可以与TensorRT等加速算法一起使用。

与非结构化修剪不同,由于权重矩阵的统一性质,结构化修剪可以更好地利用各种平台在内存和带宽方面提供的硬件加速。

 

1.3半结构化剪枝:

半结构化剪枝,也称为模式剪枝,是结构化剪枝和非结构化剪枝方案的组合,如图1(d)。这种类型的剪枝利用了可以用作kernel掩码的kernel模式。掩码防止其覆盖的权重被修剪,从而导致kernel中的部分稀疏。通过评估修剪kernel的有效性,例如利用L2范数,可以在推理过程中识别和部署最有效的模式掩码。由于kernel模式只能修剪kernel内固定数量的权重,因此它们将比其对应的稀疏性更少。

为了克服这个问题,模式剪枝与连接剪枝一起应用,连接剪枝会完全剪枝一些kernel。然而,大多数现代目标检测器都有大量的1×1卷积核,这些核包含在这个过程中不被修剪的冗余权重。因为模式修剪技术通常侧重于大小为3×3或更大的卷积核,这些卷积核具有更多的候选权重用于修剪。

连接剪枝也会降低模型的准确性,因为在这个过程中,特定卷积核中的几个重要权重也会被移除。然而,由于其半结构化性质,kernel模式修剪仍然可以利用硬件并行性来减少模型的推理时间。

 

2.R-TOSS提出动机:

表2总结了在Jetson TX2上随着目标检测器模型大小的增加,推断时间也在增加。为了减少操作延迟,同时保持模型精度,可以采用剪枝技术。在剪枝技术中,基于模式的半结构化剪枝可以提供比非结构化剪枝更好的稀疏性,同时确保比结构化剪枝技术更好的准确性

 

半结构化剪枝还允许更规则的权重矩阵形状,从而允许硬件更好地加速模型推断。同时,与结构化剪枝不同,它不会剪枝整个卷积核权重,从而保留更多信息,从而确保更好的准确性。因此,理想情况下,基于模式的剪枝技术可以生成具有高稀疏性和高精度的模型

然而,基于模式的剪枝存在一个问题,当前的技术主要集中在3×3卷积核上,这限制了可实现的稀疏性和推理加速的程度。大多数最先进的模型,如YOLOv5、RetinaNet和DETR,分别由68.42%、56.14%和63.46%的1×1小卷积核组成。因此,为了增加此类模型的稀疏性,基于模式的剪枝技术有时会在这3×3个卷积核上使用连通性修剪。但是,连接剪枝中使用的“每层最后一个内核”标准会导致重要信息的丢失,从而影响模型的准确性。因此,作者选择在剪枝框架中避免连接剪枝

如上所述,该技术仍然没有处理1×1卷积核,这是卷积核的重要组成部分。

为了解决这些缺点,作者提出了一种三步剪枝方法来剪枝1×1卷积核:

  • 将1×1卷积核组成3×3卷积核临时权重矩阵;
  • 对这些权重矩阵应用kernel模式剪枝;
  • 将临时权重矩阵分解为1×1卷积核,并重新分配给它们的原始层。

因此,该方法增加了模型的稀疏性,同时保留了有助于模型准确性的重要信息。

 

3.R-TOSS的创新:

  • 通过使用深度优先搜索来生成要一起修剪的父子核计算图来降低迭代修剪的计算成本的方法;
  • 提出一种剪枝技术用于修剪1×1核权重,以增加模型稀疏性;
  • 提出一种在不进行连通性修剪的情况下实现kernel修剪,以保留kernel信息用于推断,这有助于保持模型的准确性;
  • 与多种最先进的修剪方法进行详细对比,R-TOSS新框架在mAP、延迟、能耗和实现的稀疏性方面的有效性。

 

4.R-TOSS剪枝框架:

如图2所示,R-TOSS框架采用了迭代修剪方案,并进行了若干优化,以减少计算成本和时间开销。首先使用深度优先搜索(DFS)算法,该算法用于查找模型中的父子层耦合。由此获得的父子图用于减少修剪的计算要求。当父层的修剪反映在图中的子层中时,计算成本会降低。跟踪DFS,识别子图中的3×3和1×1内核,并对其应用内核大小特定的修剪。

 

 

4.1 DFS算法:

算法1显示DFS算法的伪代码。使用预训练的模型作为输入,使用从反向传播获得的梯度来计算计算图(G)。初始化一个空列表(group_list)(第2行)以存储父子图层组。然后遍历模型层(l),并在计算图G上应用DFS搜索来识别该层的父层。如果一个层没有任何父层,那么将该层指定为它自己的父层(lp)(第7-9行),这将成为一个组。如果一个层被标识为group_list(第5行)中任何层的子层(lc),则该层现在成为子层(lc)的父层(lp),并添加到该组(第5-6行)。每个父层(lp)可以有多个子层(lp),但每个子层只能有一个父层(lp)。此过程将继续,直到所有图层都指定给一个组。由于每个组中的层都有耦合通道,因此它们也共享其kernel weight,因此可以共享相同的kernel模式。

 

 

4.2选择kernel模式:

通过标准组合法在所有可能的组合中生成模式掩模,使用以下公式:

其中,n是矩阵的大小,k是模式掩模的大小。

然后使用以下两个标准来减少使用的内核模式的数量:

  • 丢弃所有没有相邻非零权重的模式;这样做是为了保持kernel模式的半结构化性质;
  • 通过使用范围[-1,1]内的随机初始化计算kernel的L2范数来选择最常用的kernel模式。k的值可以从1到8,可以生成8种不同类型的模式组。。

为了增加模型的稀疏度,模式中非零权重的数量应该更低。先前关于kernel模式修剪的工作使用了由kernel中的4个非零权重组成的4入口模式。但这导致模型具有相对较低的稀疏性,作者建议在R-TOSS框架中使用3入口模式(3EP)2入口模式(2EP)kernel模式,它们分别使用3个和2个非零权重。

 

 

4.3 3×3 kernel修剪:

 

算法2显示了使用所提出的内核模式进行3×3 kernel模式修剪的伪代码,其示例如图3所示。

首先使用来自算法1的3×3父核权重(KW)作为输入,并初始化一个变量(shape)以存储核权重的形状(第1行)。还创建了一个由3EP(图3(a))和2EP(图2(b))模式组成的模式字典(kernel_patterns_dict)(第3行)。然后遍历3×3 kernel,并将当前3×3 kernel的权重矩阵存储在层中作为temp_kernel(第5行)。然后,初始化一个空列表(L2_dict),在应用模式字典中的kernel模式后,该列表可以存储temp_kernel的范数。

然后遍历kernel_patterns_dict中的kernel模式,并在应用kernel模式后计算kernel的L2_norm。该L2_norm与来自kernel_patterns_dict的当前模式的key一起存储在L2_dict列表中(第7-10行)。然后,使用L2_dict中的L2_norm值找到temp_kernel的最佳kernel模式,并将kernel模式的索引存储在最佳拟合变量(bestfit variable)中(第11行)。来自bestfit的索引现在被用作kernel的kernel模式,并更新为其原始权重矩阵(第12-14行)。然后,遍历父层中的所有kernel,并将其存储为算法1中父层组(lP)中其余3×3 kernel的 kernel 掩码。一旦找到适合于父kernel的模式,这些模式也将通过利用卷积映射应用于相应的子kernel。

还通过执行1×1到3×3 kernel的转换,将这种模式匹配方法应用于1×1 kernel。由于将相同的kernel掩码应用于特定组中的所有kernel,因此可以减少框架修剪整个模型所需的时间。

通过实验,将所需的模式总数减少到21个模式。由于在推理时只有21个预定义的kernel模式,因此具有类似模式的kernel被分组在一起,可以降低总体计算成本并加快推理速度。

 

4.4 1×1 kernel修剪:

通过执行1×1到3×3变换,从内核剪枝中删除了连接剪枝。这可以确保保持模型的准确性,并减轻连接修剪带来的损失。1×1 kernel剪枝还可以通过将相似的kernel模式分组在一起来加速推理。算法3显示了执行1×1内核修剪的伪代码。

 

首先使用来自算法1(group_list)的父层的1个×1内核权值Kw作为输入。然后初始化一个列表FL,用于存储来自Kw的扁平的1×1内核权重(第1-2行)。随后,初始化一个用于存储临时权值矩阵的temp_array。我们遍历扁平数组FL,并将列表中的每9个权重分组为3×3个临时权重矩阵,这些矩阵存储在temp_array中(第5-11行)。这个过程一直持续到列表的末尾,或者如果值小于9。此时,剩余的权重被视为零权重并被修剪(第13行)。然后,使用算法2对来自temp_array的临时3×3权重矩阵进行3×3 kernel修剪(第14行)。算法2的输出矩阵被存储回temp_array,temp_array被转换回1×1 kerne,并附加到原始的1×1 kernel权重(第15-16行)。

 

 

5.总结:

本文提出了一种新的剪枝框架(R-TOSS),它能够在压缩比和推理时间方面优于几种最先进的剪枝框架。与基线模型的mAP相比,还能够增加目标探测器的mAP。R-TOSS框架实现了显著的压缩率,同时在两种最先进的对象检测模型,YOLOv5sRetinaNet上提高了mAP性能。所提出的框架在不需要任何编译器优化或附加硬件要求的情况下实现了这些结果。R-TOSS剪枝框架在YOLOv5s上的模型压缩率为4.4×,在RetinaNet上为2.89×,同时在准确性和推理时间方面优于原始模型和一些最先进的剪枝框架。

 

 

参考:

论文来源:R-TOSS: A Framework for Real-Time Object Detection using Semi-Structured Pruning

 

 

文章来自专栏

模型轻量化

2 篇文章 1 订阅
0 评论
0/1000
评论(0) 发表评论
  • 2
    点赞
  • 2
    收藏
  • 0
    评论