Abstract

目标跟踪在过去几年中取得了重大进展。然而,最先进的跟踪器变得越来越复杂和昂贵,这限制了它们在资源受限的应用程序中的部署。 在这项工作中,我们提出了LightTrack,它使用神经结构搜索(NAS)来设计更轻量和高效的对象跟踪器。综合实验表明,该方法是有效的。它可以找到性能优于手工制作的SOTA跟踪器,如siamrpn++[30]和Ocean[56],同时使用更少的模型Flops和参数。此外,当部署在资源受限的移动芯片组上时,所发现的追踪器运行速度要快得多。例如,在Snapdragon 845 Adreno GPU上,LightTrack的运行速度比Ocean快12倍,但参数少13倍,Flops少38倍。这些改进可能会缩小目标跟踪任务中学术模型和工业部署之间的差距。LightTrack在这里发布。

1. Introduction

目标跟踪是计算机视觉中最基本也是最具挑战性的任务之一。在过去几年中,由于深度神经网络的兴起,目标跟踪取得了显著的进展。但与此同时,追踪模型正变得越来越复杂和昂贵。例如,最新SiamRPN + +[30]和Ocean56]追踪器分别利用7.1 g和20.3 g的模型浮点数flops以及11.2m和25.9m的参数来实现先进性能,是更复杂的早期的SiamFC[5]的方法(使用2.7 g flops和2.3g 的参数),图1为可视化。如此庞大的模型尺寸和昂贵的计算成本阻碍了跟踪模型在工业的应用,如摄像无人机、工业机器人和驾驶辅助系统,在这些应用中模型的尺寸和效率都受到非常大的限制。

图1:与最先进的跟踪器在EAO性能、模型Flops和VOT-19基准上的参数的比较圆直径与模型参数大小成正比。我们提出的LightTrack是优于SiamFC [5], SiamRPN [31], SiamRPN++ [30],
SiamFC++[52]和Ocean[56],使用更少的Flops和参数。

有两种直接的方法来解决复杂性和效率问题。一种是模型压缩,另一种是紧凑的模型设计。现有的现成的压缩技术,如剪枝和轻量化可以降低模型的复杂性,同时它们不可避免地带来不可忽略的性能下降。另一方面,手工制作新的紧凑高效模型的工程成本昂贵,严重依赖人类的专业知识和经验[55,15]。

本文介绍了一种新的解决方案——利用神经结构搜索(NAS)自动设计轻量级模型,使搜索跟踪器能够在资源有限的硬件平台上高效地执行。这并不是一件容易的事情,因为目标跟踪器通常需要ImageNet的预训练,而NAS算法则需要对目标跟踪任务的性能反馈作为一种监督信号

基于最近提出的one-shot NAS,我们提出了一种专门用于对象跟踪任务的新搜索算法,称为light-track。它将所有可能的架构编码为一个backbone和一个head。backbone在ImageNet上进行预先训练,然后用跟踪数据进行微调,而head直接对跟踪数据进行训练。backbone只训练一次,然后每个候选架构直接从backbone继承其权重参数。架构搜索是在训练好的backbone上进行的,使用跟踪精度和模型复杂性作为监督指导。另一方面,为了降低模型的复杂性,我们设计了一个由轻量级构建块组成的搜索空间,如深度可分离卷积[11]和反向残差结构[45,23]。这样的搜索空间允许一次性的NAS算法搜索更紧凑的神经结构,在跟踪性能和计算成本之间取得平衡。
综合实验验证了lightTrack(LT表示)是有效的。它能够搜索出高效和轻量级的对象跟踪器。例如,LT找到了一个530M的flops跟踪器,在VOT-19基准上达到了0.33的EAO,比SOTA的SiamRPN[30]降低了4.6%,同时将其模型复杂度(48.9G的flops)降低了98.9%。更重要的是,当部署在资源有限的芯片组上,如edgeGPU和DSP时,发现的跟踪器的性能非常有竞争力,运行速度比现有的方法快得多。在高通骁龙845Adreno630GPU[3]上,我们的lighttrack运行速度比Ocean[56]快12×(38.4 vs 3.2,而使用较少的13个×的参数(1.97 vs 25 减少 38×(530v.s。20,300M)。这种改进使得深度跟踪模型能够轻松地在资源有限的硬件平台上实时部署和运行。
这项工作做出了以下贡献。

  • 我们提出了自动设计对象跟踪的神经结构的第一个尝试。我们开发了一个新的一次性NAS公式,并使用它来寻找很有前途的跟踪架构。
  • 我们设计了一个轻量级的搜索空间和一个专用的对象跟踪搜索管道。实验验证了该方法是有效的。此外,搜索的跟踪器实现了最先进的性能,并可以部署在不同的资源有限的平台上。

2. Related Work

目标跟踪

NAS

NAS旨在实现神经网络体系结构的自动化设计。早期的方法是使用强化学习[58]或进化算法[51]来搜索网络。这些方法需要从零开始培训成千上万的候选架构,从而导致无法负担的计算开销。最近的作品诉诸于一次性重量分享策略来摊销搜索成本[33,41]。关键的想法是训练一个单一的超参数化超网络模型,然后跨子网共享权重。均匀采样[20]是一次性采样的一种代表性方法。在每次迭代中,它只采样一个随机路径,并使用一个批处理数据来训练该路径。在训练过程完成后,子网就可以按共享的权重进行排序。另一方面,可微方法[37,8]不是搜索离散的候选体系结构集,而是将搜索空间放松为连续的,这样搜索就可以通过有效的梯度下降进行优化。最近关于NAS的调查可以在[15]中找到。
NAS主要被提出用于图像分类,最近又被扩展到其他视觉任务,如图像分割[36]和目标检测[19]。我们的工作的灵感来自于最近的DetNAS[9],但有三个基本的区别。首先,所研究的任务是不同的。DetNAS是为对象检测而设计的,而我们的工作是为对象跟踪而设计的。其次,DetNAS只通过用预定义的手工结构固定头网络来搜索主干网络。
这可能会导致搜索到的主干是次优的,因为它偏向于拟合固定的头,而不是目标任务。相比之下,我们的方法同时搜索主干和头架构,目的是找到目标跟踪任务最有前途的组合。最后,搜索空间则不同。我们设计了一个新的对象跟踪搜索空间,专门用于搜索轻量级的体系结构。

3. Preliminaries on One-Shot NAS

在介绍该方法之前,我们简要回顾了one-shot 的NAS方法,它是本文中讨论的基本搜索算法。一次性NAS将所有候选架构视为超级网的不同子网,并在具有共同组件的体系结构之间共享权重。更具体地说,架构搜索空间A被编码在一个超网中,表示为N(A、W),其中W是超网的权值。权重W在所有候选架构中共享,即N中的子网α∈A。将最优体系结构α∗表述为一个嵌套优化问题:

,(1)的约束函数是通过最小化训练数据集上的损失函数Ltrain来优化超网N的权重W,而目标函数是通过基于学习的超网权重W∗的验证数据集的准确性访问来搜索架构。只需要训练单个超网N的权值,然后可以通过从一次性超网继承经过训练过的权值而不进行任何单独的训练来评估子网的权值。这是非常重要的问题.
只需要训练单个超网N的权值,然后可以通过从一次性超网继承经过训练过的权值而不进行任何单独的训练来评估子网的权值。这大大加快了体系结构的性能估计,因为不需要子网训练,导致该方法只花费几天GPU天。
为了减少内存占用,一次性方法通常从超网N采样子网进行优化。为了简单起见,本工作采用了单路径均匀采样策略,即每批只从超网采样一条随机路径来训练[33,20]。这种单路径一次性方法解耦了超网络训练和架构优化。由于不可能枚举所有的架构α∈A来进行性能评估,因此我们使用进化算法[42,20]来从一次性超网中找到最有前途的子网。

4. LightTrack

搜索轻量级架构中的对象跟踪是一项非常重要的任务。
目前存在着三个关键的挑战。

  • 首先,一般来说,对象跟踪器需要对图像分类任务的模型预训练才能实现良好的初始化,而NAS算法则需要来自目标任务的监督信号。搜索对象跟踪的架构需要考虑ImageNet上的预训练和跟踪数据上的微调。
  • 其次,对象跟踪器通常包含两个部分:用于特征提取的主干网络和用于对象定位的头网络。在寻找新的架构时,NAS算法需要将这两部分作为一个整体来考虑,这样所发现的结构就适合于目标跟踪任务。
  • 最后,但并非最不重要的是,搜索空间对于NAS算法是至关重要的,它定义了NAS方法原则上可以发现哪些神经架构。要找到轻量级架构,搜索空间需要包括紧凑的低延迟构建块。
    在本节中,我们解决了上述挑战,并提出了基于一次性NAS的LT。我们首先介绍了一种专门用于对象跟踪任务的一次性NAS的新公式。然后,我们设计了一个深度可分离卷积[11]和反向残差结构[45,23]组成的轻量级搜索空间,它允许构建高效的跟踪架构。最后,我们介绍了LT的pipline,它能够为不同的部署场景搜索不同的模型。

4.1. Tracking via One-Shot NAS

目前流行的对象跟踪器(如[31,14,6])都需要对其主干网络进行ImageNet的预训练,这样跟踪器就可以获得良好的图像表示。然而,对于体系结构搜索,不可能在ImageNet上单独对所有候选主干进行预训练,因为计算成本非常高(ImageNet对8V100GPU的预训练通常需要几天时间)。受一次性NAS的启发,我们引入了体重分享策略,以避免从头开始对每个候选人进行预训练。更具体地说,我们将主干架构的搜索空间编码为一个超网Nb。这个主干超网只需要在ImageNet上预进行一次训练,然后它的权重在不同的主干架构上共享,它们是一次性模型的子网。图像网的预训练是通过优化分类损失函数L的预训练来进行的

4.2. Search Space 搜索空间

为了寻找有效的神经网络结构,我们使用深度可分离卷积(DSConv)[11]和带有压缩激励机制的移动反向瓶颈模块(MBConv)[45]来构建了一个新的搜索空间。空间由主干Ab和头部Ah组成,在标签中阐述。

  • 主干空间Ab。
    主干空间中有6个基本构建块,包括内核大小为{3、5,7}的MBConv和扩展速率为MBConv{4,6}。主干候选块是通过叠加基本块来构建的。所有的候选人都有4个阶段,总共有16步。在每个阶段,第一个块有2步的特征下采样。除了前两个阶段外,每个阶段最多包含4个块进行搜索。主干空间中有14层,如选项卡中所示。1(即,选择编号为6的图层)。这个空间包含大约614个≈7.8×1010可能用于搜索的主干架构。
    图2:提出的LightTrack的搜索pipline。有三个阶段:预训练主干超网、训练跟踪超网和跟踪超网的进化算法搜索。

  • 头部空间Ah。
    候选头部架构包含两个分支:一个用于分类,另一个用于回归。它们都最多包含8个可搜索的层(请参见选项卡1).A第一层是一个DSConv,内核大小为{3,5},信道数为{128,192,256}。随后的7层遵循与第一层相同的通道设置,内核选择{3,5}。一个额外的跳跃连接用于实现头部结构的弹性深度[58]。与主干空间不同,头部不包含7的内核选择,因为特征分辨率相对较低。头空间包含大约(3×38)2≈3.9×108可能用于搜索的体系结构。
    此外,目前对于哪一层的特征更适合对象跟踪的问题,还没有明确的答案。因此,我们在搜索空间中添加了一个新的维度,以允许一次性方法自动确定输出特征层。具体来说,在超网训练中,我们从主干超网的最后八个块中随机提取一个end layer,并使用我们提取出的选择层的输出作为提取的特征。这种可能的策略能够采样不同的可能的块,并允许进化搜索算法来评估哪一层更好
    值得注意的是,所定义的搜索空间包含了从208M到1.4G的跳跃的架构,参数大小从0.2M到5.4M。这样的空间比现有的手工制作的网络要轻得多。例如,人类设计的具有ResNet-50主干的SiamRPN有48.9G片段,具有54M参数[22],比设计的搜索空间中的架构要复杂一个数量级。这种低复杂度的空间使所提出的一次性NAS算法更容易找到很有前途的轻量级跟踪架构。

4.3. Search Pipeline

我们的LightTrack包括三个顺序阶段:预训练主干超网,训练跟踪超网,以及在训练的超网上使用进化算法进行搜索。整个管线图如图所示.
第一阶段:预训练的骨干超级网
主干超网网络编码搜索空间数据库中所有可能的主干网络。Nb的结构将在选项卡中显示。如在等式中的定义(2),主干超网Nb的预训练是为了优化图像网络上的交叉熵损失。为了解耦单个子网的权值,我们对预训练进行了统一的路径采样。换句话说,在每个epoch处理中,只有一个随机路径被采样以进行前馈和反向传播,而其他路径则被冻结。(控制变量)
第二阶段:train跟踪超级网
跟踪超网N的结构如图所示。2(中间)。在本质上,它是Siamese跟踪器[30,56]的一个变形。具体地说,它以一对跟踪图像作为输入,包括一个示例图像和一个搜索图像。示例图像表示感兴趣的对象,而搜索图像表示后续视频帧中的搜索区域。这两个输入都由预先训练好的主干网络进行处理,以进行特征提取。生成的两个特征图是交叉相关,以生成相关卷。磁头网络包含一个分类分支和一个用于对象定位的回归分支。磁头超网的体系结构可以在选项卡中找到。训练也采用了单路径均匀采样方案,但涉及到跟踪头和指标。在每次迭代中,优化器更新从主干网和头超级网采样的随机路径。等式中的损失函数Lt训练(3)包括常用于前景背景分类的二值交叉熵损失和对象边界盒回归的IoU损失[54]。

LightTrack: Finding Lightweight Neural Networks for Object Tracking via One-Shot Architecture Search相关推荐

  1. Paper Reading:LightTrack: Finding Lightweight Neural Networks for Object Tracking via One-Shot Archi

    CVPR2021 github:https://github.com/researchmm/LightTrack Abstract 在过去几年中,目标跟踪取得了重大进展.然而,最先进的跟踪器变得越来越 ...

  2. PVANET: Deep but Lightweight Neural Networks for Real-time Object Detection

    PVANET: Deep but Lightweight Neural Networks for Real-time Object Detection 传送门:      论文:https://www ...

  3. 目标跟踪算法五:MDNet: Learning Multi-Domain Convolutional Neural Networks for Visual Tracking

    目标跟踪算法五:MDNet: Learning Multi-Domain Convolutional Neural Networks for Visual Tracking 原文:https://zh ...

  4. earning Multi-Domain Convolutional Neural Networks for Visual Tracking

    论文笔记<Learning Multi-Domain Convolutional Neural Networks for Visual Tracking> 0. 摘要 基于CNN的一个跟踪 ...

  5. Fully-Convolutional Siamese Networks for Object Tracking基于全卷积孪生网络的目标跟踪算法SiameseFC

    1.论文相关 Bertinetto, Luca, et al. "Fully-convolutional siamese networks for object tracking." ...

  6. Fully-Convolutional Siamese Networks for Object Tracking全文翻译

    Fully-Convolutional Siamese Networks for Object Tracking 摘要   任意对象跟踪的问题传统上通过仅在线学习对象外观的模型来解决,使用视频本身作为 ...

  7. Fully-Convolutional Siamese Networks for Object Tracking(SiamFC 算法学习)

    Fully-Convolutional Siamese Networks for Object Tracking(SiamFC 算法学习) 1.摘要 传统方法存在的问题:仅在线方法固有地限制了他们可以 ...

  8. LCDet Low-Complexity Fully-Convolutional Neural Networks for Object Detection in Embedded Systems

    Subarna Tripathi UC San Diego∗ stripathi@ucsd.edu Byeongkeun Kang UC San Diego bkkang@ucsd.edu V asu ...

  9. 论文阅读--PVANET: Deep but Lightweight Neural Networks for Real-time Object Detection

    为什么80%的码农都做不了架构师?>>>    论文地址:https://arxiv.org/abs/1608.08021 算法实现:https://github.com/Charl ...

最新文章

  1. Java项目:零食商城系统(java+SSM+jsp+MySQL+EasyUI)
  2. 2016年华为校招上机考试试题答案
  3. P5236-[模板]静态仙人掌【tarjan,LCA】
  4. jQuery学习教程(一):入门
  5. Codeforces Round #233 (Div. 2)D. Painting The Wall 概率DP
  6. 算法导论 思考题12-1
  7. git 分支管理策略(7)
  8. MFC控件(三)(进度条控件和滑块控件)
  9. android adb驱动win7,adbwin7下载地址_win7安装adb驱动的方法
  10. android刷机教程 华为,华为Mate20X 刷机教程 华为Mate20X 强刷升级教程
  11. NVIDIA Game Ready 显卡驱动517.48发布!为《守望先锋2》做好游戏准备
  12. 生物特征认证和识别市场现状及未来发展趋势
  13. Control Cotrol Name Confusing
  14. 店宝宝:拼多多上线新业务 对标微信小商店
  15. 怎么判断冠词用a还是an_如何判断单词前的冠词用a还是an
  16. 2000-2020年地级市进出口总额数据
  17. TOP金服是钱包项目吗?TOP金服安全吗?TOP金服怎么盈利?
  18. python处理excel 隐藏sheet
  19. 这份程序员常用技术栈和工具清单,刷爆朋友圈……
  20. 2022年西藏最新八大员之(安全员)模拟试题题库及答案

热门文章

  1. 常见的java面试题
  2. Java常见面试题 + 答案
  3. 强强联合!武汉大学与腾讯成立大数据联合实验室
  4. Mysql优化算法-MRR(Multi-Range Read Optimization)
  5. 蔡萍:深耕半导体行业二十年,复旦MBA“朋友圈”成智囊团
  6. Linux qt教程 qt入门(一)
  7. 云服务器和VPS服务器的区别
  8. Unity中一些小技巧
  9. python人机交互_人机交互程序 python实现人机对话
  10. go module安装本地离线包