GPUNet:来自NVIDIA为GPU定制的卷积网络

导读

在1毫秒内,GPUNet比EfficientNet-X和FBNetV3快2倍,同时准确率更高。

2d67e51e2bcbe2eaf71edd0f1b361d8a.png

摘要

定制卷积神经网络(CNN)以供生产使用一直是深度学习实践者面临的挑战。本文旨在通过建立一个包含经优化模型的模型库来加速模型定制过程,这些模型按照其推理延迟进行分级,并利用神经架构搜索(NAS)技术。为了实现这一目标,我们构建了一个分布式NAS系统,在一个新颖的搜索空间中进行搜索,该搜索空间包含了影响延迟和准确性的关键因素。因为我们针对GPU平台,我们将NAS优化后的模型命名为GPUNet,它在推理延迟和准确性的Pareto前沿上建立了新的最先进水平。在1毫秒内,GPUNet比EfficientNet-X和FBNetV3快2倍,同时准确率更高。我们还在检测任务上验证了GPUNet,GPUNet在COCO检测任务上无论是在延迟还是准确率方面均一致优于EfficientNet-X和FBNetV3。所有这些数据验证了我们的NAS系统在处理不同设计任务时的有效性和通用性。借助这个NAS系统,我们扩展了GPUNet以覆盖广泛的延迟目标,从而使深度学习实践者能够在不同场景中直接部署我们的模型。

113dd6d66a1fbe6fb76f1e1aa2c84da3.png

1、介绍

神经网络的进步长期以来与实际部署脱节。深度学习研究者致力于发明新的构建块,而DL工程师则在现实世界任务中部署这些构建块,费力地重组它们以找到符合设计要求的架构。大多数时候,我们可以将这些要求简化为在特定的延迟预算内找到在目标设备(如GPU)上表现最佳的架构。尽管在神经网络设计方面有许多令人兴奋的进步,例如残差连接、倒置残差块(IRB)和注意力机制,但部署这些网络设计仍然具有挑战性和耗时;这也是本文要解决的问题。

为了解决深度学习研究与实际部署之间的差距,我们提出了一套针对不同类型GPU优化的卷积神经网络,这些网络按照其优化后的推理延迟进行分级(例如,经过TensorRT或OpenVINO后处理)。具体而言,我们提供了一张模型表,其中每一项都是在给定GPU的推理延迟限制下最大化准确率的模型优化结果。这张表使得DL工程师可以直接查询满足设计要求的优化神经架构,从而加快昂贵模型的定制过程。我们借助神经架构搜索(NAS)来设计这张表中的模型。最近,NAS已经在许多任务中展现出有希望的结果,能够自动化设计网络架构。因此,NAS可以是一个有用的工具,因为我们需要为不同GPU设计许多针对不同延迟限制的模型。当模型准备部署时,我们测量经过TensorRT引擎后处理的延迟,即包括量化、层/张量融合、内核调优和其他系统层面的模型优化。最终,我们针对NVIDIA企业级GPU产品设计模型,因为这些产品目前被社区广泛采用。

为了实现我们的目标,我们构建了一个新颖的分布式NAS系统。遵循先前的工作,我们的NAS系统由三个模块组成:搜索空间、评估模块和搜索方法。搜索空间规定了遵循预定义模式的网络结构;搜索方法根据先验知识提出最有潜力的网络;评估模块通过训练或从超网估计返回提议网络的性能。我们的搜索空间通过堆叠卷积层、IRB和EfficientNet中使用的融合IRB(Fused-IRB)来构造网络。但是,我们的搜索空间迄今为止是最全面的,它包括滤波器数量(#filters)、核大小、阶段中的层数(#layers)或IRB数量(#IRB)以及输入分辨率。在IRB或Fused-IRB内部,我们也搜索扩张比、激活类型以及是否包含SE层。所有这些因素都被识别为影响延迟和准确性的关键因素。因此,这个搜索空间使我们能够比先前的工作更好地平衡准确性和延迟,例如NASNet中固定的滤波器模式和FBNetV3中固定的激活和SE模式;搜索还使我们能够找到比EfficientNet 中固定的扩展策略更好的策略。为了支持这样一个复杂的搜索空间,我们选择通过训练来评估网络候选。虽然这种方法比超网方法昂贵得多,但评估结果在架构排名方面更加准确。并且我们可以避免为我们的搜索空间构建超网时遇到的许多未解决的问题,例如支持多种类型的激活函数、激活/去激活SE以及可变的滤波器尺寸。我们构建了一个客户端-服务器风格的分布式系统来应对计算挑战,并且它已经稳健地扩展到了300个A100 GPU(40个DGX-A100节点)的规模。最后,我们采用LA-MCTS引导的贝叶斯优化(BO)作为搜索方法,因为它在最近的黑盒优化挑战赛中表现出更高的样本效率。我们将NAS优化后的CNN命名为GPUNet,并且GPUNet在图1中的延迟和准确率之间建立了新的最先进Pareto前沿。我们使用TensorRT测量GPUNet的延迟,因此GPUNet可以直接被DL实践者复用。特别是,GPUNet-1的速度几乎是FBNetV3-B和EfficientNet-X-B2-GPU的两倍,而在准确率方面则高出0.5%。我们还在COCO检测任务上验证了GPUNet,GPUNet在延迟和准确率方面仍然一致优于EfficientNet-X和FBNetV3。所有这些数据验证了我们的NAS系统在设计各种任务时的有效性和通用性。尽管本文仅展示了少数GPUNet进行比较,但按照推理延迟分级的完整模型库仍在持续构建中,并且我们将随论文一起发布它们。

2、相关工作

今天,将深度学习(DL)模型本地部署在边缘设备上或在数据中心的企业级GPU上作为服务托管是两种主要的模型部署方式。边缘设备,如您的智能手机或自动驾驶系统的嵌入式系统,通常配备小型CPU、有限的RAM和较慢的互联。鉴于资源受限,模型的浮点运算次数(FLOPS)或乘积累加次数(MACs)与这类设备上的延迟相关性很好,这推动了许多工作提出低FLOPS运算符以实现在边缘设备上的更快部署,例如深度可分离卷积。近年来,加速移动设备上的推理已成为热门的研究课题。

在GPU上部署模型需要与边缘设备不同的优化。由于GPU的架构远比边缘设备强大,我们需要考虑设备饱和度、并行性以及计算/内存受限的操作等问题。尽管GPU多年来一直主导着MLPerf推理基准测试,但只有少数工作针对GPU优化了卷积神经网络(CNN)的部署。一类工作是提出快速运算符。RegNet通过优化搜索空间来选择简单、GPU友好的运算符来加速推理。ResNetXt提出了分裂注意力运算符来提高准确率和推理延迟。另一类工作是优化结构。TResNet 优化了ResNet-50中的运算符,包括SE层和批量归一化(BatchNorm),以改善GPU上的推理。同时,EfficientNet-X提出了一种延迟感知的扩展方法来设计适用于GPU/TPU的快速EfficientNet,并使用屋顶线模型来解释GPU上的FLOPS与延迟之间的差距。与使用固定扩展策略不同,我们的工作将模型优化视为一个黑盒,使用TensorRT优化后的推理延迟来搜索适用于GPU的快速架构。因此,我们可以在延迟和准确率之间取得更好的平衡,而且我们的最终网络可以直接部署在GPU上。

我们使用NAS来构建所提出的网络,并在此回顾NAS的最新进展。早期的NAS工作,例如NASNet,将CNN建模为有向无环图(DAG)。而EfficientNet因其在ImageNet上的良好性能迅速获得了广泛关注。本文重用了EfficientNetV2中的构建块来寻找快速架构。最近,transformer和多层感知机(MLP)开始作为有前途的替代方案出现,我们留待未来工作探索这些搜索空间的NAS。ENAS提出了超网,这是一个超参数化的网络,用来近似子网络的性能。尽管超网显著减少了NAS所需的计算需求,但超网预测的排名可能不准确。此外,训练超网并非易事,并且构建支持可变激活、扩展比和滤波器尺寸等的超网仍然是一个开放问题。因此,我们使用分布式系统来进行NAS,以避免超网存在的未解决问题。

3、方法

0c35711588e461190f8095f4677a44ed.png

我们构建了一个新颖的分布式NAS框架来自动为GPU设计模型。我们的NAS系统由搜索空间、搜索算法和评估方法组成,遵循现有的NAS框架。首先,搜索算法从搜索空间中选择网络,并使用评估方法查询其性能。然后,搜索算法通过利用所有已评估的网络准确率对来细化其决策。

我们的NAS分为两个阶段:1) 根据推理延迟对网络进行分类;2) 在给定延迟组内的网络上执行NAS以优化准确率。在第一阶段(图2.A),我们使用Sobol抽样 [29] 来均匀地从高维搜索空间中抽取网络候选,使用延迟查找表来估算网络延迟,然后将网络分类到一个子搜索空间中,例如,延迟 < 0.5ms 的网络。我们通过累加每个层的延迟来近似推理延迟,这些延迟来自延迟查找表。延迟表使用输入数据形状和层配置作为键来索引层的延迟。在第二阶段(图2.B),贝叶斯优化消耗一个子空间来找到该子空间延迟范围内的最佳性能网络。我们构建了一个客户端-服务器分布式框架来执行NAS。搜索算法运行在服务器端,为客户端提出网络。客户端在训练后返回准确率和网络。以下详细说明各组件及其设计依据。

3.1 搜索空间

cd28f6f864bd0b2e0e2e23fc7575ad3a.png

搜索空间规定了网络候选的一般结构,并且我们的搜索空间受到了EfficientNet的启发。请注意,我们的搜索框架是通用的,可以支持多种搜索空间,例如设计视觉变换器或MLP用于视觉任务。尽管最近Transformer显示出了优异的表现,但我们这里专注于ConvNet,因为当前的TensorRT提供了更好的支持,进行了关键性的性能优化以实现在GPU上的快速推理。我们把基于变换器或MLP的视觉模型的NAS留作未来的工作。表1展示了本文使用的搜索空间的细节。我们的搜索空间包含8个阶段。在这里,我们搜索每个阶段的配置,而一个阶段内的各层共享相同的配置。前两个阶段是用来搜索使用卷积的头部配置。受到EfficientNet-V2的启发,第2和第3阶段使用Fused-IRB。但我们观察到,在将剩余的IRB替换为Fused-IRB后,延迟有所增加。从第4到第7阶段,我们使用IRB作为基本层。列“#Layers”显示了阶段中的层数范围,例如,第4阶段的[3, 10]意味着该阶段可以有3到10个IRB。而列“Filters”显示了阶段中各层的滤波器范围(具体细节见表注)。我们的搜索空间还调整了扩展比率、激活类型、核大小以及IRB/Fused-IRB内部的Squeeze Excitation (SE) 层。最后,输入图像的尺寸从224逐步增加到512,每次增加32。

3.1.1 搜索空间的设计依据

3034a649ea3e9b216554dd3a0d5f5d23.png

与先前的工作不同,我们的搜索由准确度和TensorRT优化的推理延迟所指导。在一个良好的实验设计中,我们应该确定与设计目标最相关的因素,即快速且准确的网络。表1展示了我们发现的几个显著影响延迟和准确度的因素。在这里,我们提供实证数据来支持我们的决策。

  • 层数和滤波器数量:已发表的结果中有大量证据表明,深度较大的网络或宽度较大的网络通常比浅层或窄层网络表现更好,但增加层数或增加滤波器数量会减慢推理速度。层数和滤波器数量对于准确度和延迟来说是重要的设计选择。

  • 激活函数:许多过去的研究已经证明,一个好的激活函数设计可以显著提高在ImageNet上的最终准确度,而图3.A显示使用ReLU的网络可以比使用PReLU的网络快4倍。一般来说,激活操作是内存受限的操作。并且TensorRT支持ReLU、Sigmoid和Tanh的层融合,这解释了速度差异的原因。因此,激活函数的选择是在准确度和延迟之间权衡的重要因素。

  • 扩展率:IRB或Fused-IRB内部通过1x1卷积扩大通道大小,而扩展率控制内部通道的大小,即扩展率乘以输入通道数。MobileNet论文声称更大的通道扩展有助于提高网络的能力和表达力。我们的实验结果也支持这一说法。例如,在ImageNet top-1上,当将扩展率从6减少到2时,网络准确度下降了4个百分点,而增加扩展率则会导致不可忽视的成本增加(参见图3.C)。这些数据表明,扩展率是一个重要的搜索因素。

  • 卷积核大小:较大的卷积核可以增加接收域以提高准确度,但也增加了延迟(参见图3.D),这验证了将卷积核大小的选择纳入搜索空间的合理性。

  • Squeeze-Excitation (SE):Squeeze-Excitation是由ILSVRC 2017获胜队伍引入的,相比前一年提高了25%。添加SE后,图3显示延迟显著增加。这证明了SE是搜索空间中的一个重要因素。

  • 图像分辨率:EfficientNet明确展示了通过提高分辨率来改善准确度,而图3.B显示延迟也显著增加。所以我们搜索输入图像的分辨率以实现更好的准确度和延迟之间的权衡。

3.1.2 网络与搜索空间表示

b22dbe1988211d127b1bb7ecea603c26.png

现在我们有了搜索空间的大致轮廓;接下来是要找到合适的表示方式来体现这个设计。我们使用一个整数向量来编码从表1描述的搜索空间中采样的网络。向量的长度为41,表2详细说明了每个数字代表的超参数。第1阶段与第0阶段共享相同的滤波器数量,我们只搜索第0阶段的第一个3x3卷积的滤波器大小。因为一个阶段内的各层共享配置,我们用6个整数来表示从第2到第7阶段的滤波器大小、卷积核大小、扩展率、是否使用SE、激活类型以及IRB的数量。因此,一个网络是表2中描述的向量的一个实例,每个数字的范围共同定义了表1中的搜索空间。

3.2 根据推理延迟分层网络

c01c22fc8e7a7c6ac961839ad7bc9e04.png

为了设计按推理延迟分层的网络,我们选择直接测量搜索空间中网络的延迟。由于搜索空间的大小呈指数级增长,我们通过从中采样数百万个网络来近似表示搜索空间。采样技术对于捕捉搜索空间的真实分布至关重要,在这里我们使用Sobol序列,其优势在图5中一目了然。采样是一个低成本的操作,我们可以在一分钟内获得数百万个样本。

面临的挑战是如何测量采样网络的延迟。鉴于TensorRT在MLPerf推理基准测试中占据主导地位,我们希望测量由TensorRT优化后的推理延迟。然而,TensorRT需要几分钟时间来构建用于测量的推理引擎,这使得测量所有采样的网络变得不可行。

我们通过累加每一层的延迟来近似估计一个网络的延迟。虽然搜索空间可以产生个网络,但各层的配置有限,例如,在我们的案例中大约有种。因此,我们可以通过构建一个以输入数据形状和层配置为键的延迟表来显著加快延迟测量的速度。给定一个网络,我们可以遍历各层查找延迟。如果某一层不在表中,我们只需对该层进行基准测试并记录其延迟到表中。最终,网络的延迟是所有层的延迟之和。图4展示了表格估计的延迟接近网络的实际延迟,平均而言,表格估计的延迟比实际端到端测量高75μs。这是因为整个网络相较于单个层为TensorRT提供了更多的层融合机会。即使对大约个层进行基准测试仍然是一项昂贵的任务,我们将延迟表的整理过程在多GPU上并行化以将所需时间从几周缩短至几天。

6150195b98fb4eea02fe18ab481eadba.png

3.3 分布式神经架构搜索

我们将网络设计视为一个黑盒。在奖励(例如验证准确度)的指导下,搜索调整搜索空间中规定的超参数以优化模型性能(参见图2.A)。在这里,我们将详细介绍搜索算法和评估方法。

3.3.1 搜索算法

我们选择LA-MCTS增强的贝叶斯优化(BO)作为搜索算法,这是2020年NeurIPS黑盒优化竞赛的顶级参赛作品之一。因为我们通过训练来评估一个网络,因此样本效率对于整体成本至关重要。竞赛结果显示,LA-MCTS增强的BO在其他BO变体和进化算法中展示了领先的样本效率;因此,我们在实验中采用它,图2描绘了工作流程。

一些先前的工作将问题定义为一个多目标优化(MOO)问题,以寻找延迟和准确度之间的最优Pareto前沿。然而,寻找Pareto最优解在实践中过于精细。例如,位于Pareto前沿上的两个解决方案在准确度和延迟方面可能只有微小的差异,但找到这些Pareto解非常昂贵。因此,我们在最大化准确度之前按照延迟组织搜索空间。这也允许我们建立一个根据它们的推理延迟分级的网络表格。

3.3.2 评估

我们选择通过训练来评估每个提出的网络,并在训练曲线不理想的情况下应用提前终止策略。对于来自相同搜索空间且具有相似延迟的网络,我们使用相同的训练方案,因为我们的实践经验表明,调整训练方案会带来巨大的成本,而准确度提升最多只有1%。训练将在450个epochs后返回最佳验证准确度给搜索算法。

本论文的目的并非普及NAS,而是利用数百个GPU维护一组经过NAS优化的模型供社区使用。我们认为训练方法是必要的,尽管它远比最近的超网方法昂贵得多。首先,大量的证据表明超网在排名网络候选时可能会不准确,而且训练一个好的超网并不简单。其次,没有超网能够恰当地支持可变的扩展率、图像分辨率以及是否使用SE。虽然训练方法会带来额外的成本,但它可以规避所有这些问题。

3.3.3 分布式NAS

现在我们准备将所有组件组合在一起。图2展示了我们实现了一个客户端和服务器分布式系统来运行NAS。根据第3.2节,我们首先通过采样生成一个特定延迟范围内的网络作为搜索空间。然后我们将修剪后的搜索空间整合到搜索算法中并在服务器上运行。服务器和客户端通过套接字交换数据。客户端会在空闲时请求一个网络进行评估,并将网络及其最佳验证准确度返回给服务器。搜索算法可以利用这些信息来提出下一个网络候选。为了验证框架的有效性,我们使用几个合成函数对该系统进行了测试,以确保性能指标随着样本数量的增加而提高。此框架同样适用于不同的搜索问题,我们也可以使用同样的框架来搜索Transformer的架构。

4、实验

本节展示了使用所提出的搜索空间和NAS系统设计GPUNet的详细情况。与现有工作相比,GPUNet在准确度和推理延迟方面显著改进了SOTA Pareto前沿(图1)。在相似的1.8毫秒延迟下,GPUNet在ImageNet上的准确度比相应的FBNet-V3高出1%。在相似的80.5准确度下,GPUNet的速度是FBNet的1.6倍。我们首先描述实验设置,然后讨论主要结果。最后,我们表明GPUNet也有效地改善了下游任务。

4.1. 实验设置

软件设置:我们在包含1000个类别的128万训练图像和5万验证图像的ImageNet上直接执行NAS。每个网络候选都使用自动混合精度(AMP)预训练300个epochs以进行性能排名,然后我们将顶级网络再微调150个epochs。我们使用来自Pytorch Image Model的修改后的训练脚本来训练模型。训练只使用9级强度的随机增强和0.5的标准偏差。每2.4个周期学习率衰减0.97。使用指数移动平均(EMA)衰减率为0.9999。裁剪百分比设置为1,优化器为RMSprop。我们将NAS设置为关注FP32 + FP16 TensorRT GPU计算时间<2毫秒的模型,这在实践中更加相关。对于延迟测量,我们使用TensorRT-8.0.1。我们导出onnx模型,并使用trtexec --fp16命令行工具在独立的PCI-E NVIDIA GV100 GPU上测量FP16 GPU计算延迟。

机器设置:我们在配备8x A100 80GB的DGX A100上进行训练。我们的系统足够灵活,可以在预占实例(spot)上进行训练。我们在专用节点上启动服务器来提出网络,并在预占实例上启动客户端。每个客户端在训练期间每周期保存一次检查点以防预占。服务器也会持续保存其状态以实现容错。

4.2. 主要结果

4.2.1 基准线准备

表3列出了用于比较的近期SOTA基准线;有两个基准线集合,分别包括和排除了蒸馏。准确度和推理延迟是我们评估中的两个关键指标。比较准确度很容易做到公平,但在推理延迟方面则不然,因为延迟可能会受到软件堆栈(例如运行时效率和系统优化)、GPU、批量大小等因素的影响。为了保证公平性,我们将所有基准线模型转换为ONNX模型,并使用TensorRT进行基准测试。推理基准测试专门在NVIDIA GV100上运行;并且TensorRT的工作区在整个运行过程中固定为10GB。我们在批量大小=1且形状明确的情况下对延迟进行基准测试,并报告1000次运行的平均延迟。我们从模型的原始实现或从PyTorch Image Models获取基准线模型。

4.2.2 ImageNet1K上的结果

5357dee6ea9dc81776508ac98718e8dc.png

表3比较了搜索得到的GPUNet与基准线的性能,而图1可视化显示了不同模型在推理延迟和准确度方面的Pareto前沿。请注意,我们准备了两种不同的网络GPUNet和GPUNet-D,分别对应有无蒸馏的情况。

图1.B清楚地表明GPUNet-D在这两个目标上均优于其他模型,而表3建议GPUNet和GPUNet-D在保持类似准确度的同时明显快于SOTA网络。在相似的80.5 top-1准确度下,GPUNet-1的速度几乎是EfficientNet-B2、EfficientNetX-B2-GPU和FBNetV3-B的两倍。对于其他准确度组别,GPUNet始终表现出从1.27倍到3.24倍的加速优势。虽然当延迟>3毫秒时,图1.B显示EfficientNet-V2 [31]的结果略好于GPUNet,EfficientNet-V2采用了更为复杂的训练方案,其中包括Mixup [43]和逐步训练来正则化网络以获得更好的准确度。这些正则化方法与NAS正交,它们可以作为未来工作的良好方向来进一步提高GPUNet的准确度。有趣的是,我们还注意到GPUNet的#FLOPS和#参数量大于基准线,尽管GPUNet的速度明显更快。这些结果表明低FLOPS的模型并不一定在GPU上运行速度快。EfficientNet-X用roofline模型解释了这一点。

4.2.3 GPUNet架构

b0103564aaa8bd7244ba10c01cd79c09.png

图6显示了NAS优化的GPUNet架构过于不规则以至于无法由人类设计。例如,在GPUNet-2中,相邻的stride=2 ER(Fused-IRB)块连续两次将H和W减半,而人类设计的网络通常在两个stride=2层之间有多层stride=1的层。在IRB中的激活函数和扩展也没有明显的模式。然而,这些NAS优化的网络在滤波器分布上显示了一个共同的特点,即在开始/中间阶段较窄,而在最后几个阶段非常宽,尽管表1中的搜索空间允许初始阶段使用大滤波器并在结束阶段使用小滤波器。例如,GPUNet-2的滤波器遵循32 → 32 → 116 → 144 → 160 → 224 → 832的模式;GPUNet-0和GPUNet-1也遵循类似的滤波器模式。

4.2.4 为什么GPUNet更快更好?

我们也比较了FBNet和EfficientNet与GPUNet的架构。这里列出了一些我们发现的关键差异,这些差异可以解释GPUNet的性能。我们以GPUNet-1为例。

  • 混合类型的激活函数:图6显示GPUNet在RELU和Swish之间切换,而EfficientNet和FBNet在所有层中使用Swish。图3.A表明Swish显著增加了延迟。GPUNet的一些层使用RELU来减少延迟,以便为提高准确度创造更多机会,例如使用更大的滤波器。

  • IRB中的较少扩张:图3.C显示,将所有IRB中的扩张从1增加到6几乎使网络延迟翻倍。扩张是我们搜索空间的一部分,因此GPUNet的一些层倾向于具有较小的扩张以节省延迟。

  • 更宽更深:滤波器(宽度)和每一阶段的层数(深度)都是我们搜索空间的一部分。由于混合激活和较少扩张带来的延迟节省,GPUNet倾向于比FBNet和EfficientNet更宽更深。在同一准确度组别中,FBNetV3-B的滤波器遵循16 → 24 → 40 → 72 → 120 → 183 → 224的模式,而EfficientNet-B2的滤波器模式为32 → 16 → 24 → 48 → 88 → 120 → 208 → 352,但GPUNet-1比FBNetV3-B和EfficientNet-B2更宽,其模式为24 → 64 → 96 → 160 → 288 → 448。此外,GPUNet-2有33层,比FBNetV3-F多2层,比EfficientNet-B3多5层。众所周知,深层和宽层网络具有更高的准确度;因此,GPUNet在每个组别内的准确度高于基准线。

  • 更大的分辨率:GPUNet-(1和2)的分辨率分别比EfficientNet-B2和B3高32和64,比FBNetV3-B和FBNetV3-F分别高72和120。使用较大的分辨率通常会提高准确度;因此,GPUNet显示出比基准线更好的准确度和更高的FLOPS。

4.3. 在检测任务上的评估

我们在COCO检测任务上测试GPUNet。我们通过替换cascade RCNN 中的主干网络来评估GPUNet、FBNetV3-F和EfficientNet-B3在COCO检测任务上的表现。表4显示GPUNet-2不仅更快,而且还提供了比基准模型更高的mAP。

5、结论

模型定制对于深度学习工程来说是一个挑战。在本文中,我们提出了构建一个按照推理延迟分级的模型库来加速模型定制的过程,这有助于实践者重用我们预先训练好的模型,同时考虑已知的TensorRT延迟和兼容性。通过一个新颖的分布式NAS系统和增强的搜索空间来设计一系列快速且准确的GPUNet,我们在延迟和准确度方面建立了一个新的SOTA Pareto前沿,验证了我们NAS系统的有效性。尽管本文主要关注EfficientNet搜索空间,但我们的NAS系统通用性强,可以支持多种任务和搜索空间。最终,我们打算维护一个跟踪最新技术的NAS优化模型库,以便ML实践者可以直接重用这些模型。

52f94d51341418e39f73b67da46d1ddd.png

—END—

论文链接:https://arxiv.org/abs/2205.00841

0741096de54aeabbd91c7c91160edf72.jpeg

请长按或扫描二维码关注本公众号

喜欢的话,请给我个在看吧

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值