码迷,mamicode.com
首页 > Web开发 > 详细

RANet : 分辨率自适应网络,效果和性能的best trade-off | CVPR 2020

时间:2020-05-01 12:34:17      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:ted   帮助   get   分类   elf   org   load   中比   共享   

基于对自适应网络的研究,论文提出了自适应网络RANet(Resolution Adaptive Network)来进行效果与性能上的取舍,该网络包含多个不同输入分辨率和深度的子网,难易样本的推理会自动使用不同的计算量,并且子网间的特征会进行融合,从实验结果来看,在性能和速度上取得了很不错的trade-off
?
来源:晓飞的算法工程笔记 公众号

论文: Resolution Adaptive Networks for Efficient Inference

技术图片

Introduction


技术图片

? 深度CNN带来了性能提升的同时也带来了过高的计算量,许多研究放在了如何进行网络加速上面,其中比较直接的是根据样本难易程度进行自动调整的自适应网络。基于对自适应网络的研究,论文提出了自适应网络RANet(Resolution Adaptive Network),思想如图1所示,网络包含多个不同输入分辨率和深度子网,样本先从最小的子网开始识别,若结果满足条件则退出,否则继续使用更大的子网进行识别,子网的特征不是独有的,下一级别的子网会融合上一级别的子网特征,从实验来看,论文在效果和性能上取得了很不错的trade-off。

Method


Adaptive Inference Setting

技术图片

? 构建包含K个分类器的自适应模型,对于输入图片$x$,第$k$个分类器的输出如公式1,$\theta_k$为分类器对应的子网参数,部分参数是分类器间共享的,$p_c^k\in [0, 1]$为$c$类别置信度。

技术图片

? 自适应网络根据图片的复杂程度动态选择合适的计算分支,即若当前分类器的输出达到预期,则退出,论文采用softmax输出的置信度来进行判断,如公式2和公式3所示

Overall Architecture

技术图片

? RANet的整体结构如图2所示,包含初始层(Initial Layer)和$H$个对应不同分辨率的子网,每个子网包含多个分类器。具体流程先使用初始层获得不同分辨率的特征图,然后使用最低分辨率的子网进行预测,如果子网没有获得可靠的结果,则使用下一个分辨率稍大的子网进行预测,重复直到获得可靠的结果或者到达最大分辨率子网。
? 在重复迭代预测的过程中,高分辨率层会融合低分辨率层的特征。尽管RANet已经在初始层对图片进行了从细?粒度到粗粒度的处理,子网仍然会继续对其进行下采样,直到特征图大小为$s=1$ scale(表示初始层产生的最小分辨率),分类器只加在最后几个特征图大小$s=1$ scale的block上。

Network Details

  • Initial Layer

? 初始层用于生成$H$个基础特征,特征有$S$个尺寸,图2的初始层包含3个不同尺寸的特征,第一个特征通过Regular-Conv层产生,后面的特征通过Strided-Conv层产生

  • Sub-networks with Different Scales

技术图片

? Sub-network 1处理分辨率最低的特征图$x_0^{1,1}$,使用图3(a)的$l$层regular Dense Blocks,每层的输出$x_i^{1,1}$都将传递到Sub-network 2中
? 输入大小为$s$ scale的Sub-network $h$($h>1$)处理基础特征$x^{s,h}$,并且使用图3(b,c)的Fusion Blocks来融合自Sub-network ($h-1$)的特征,包含两种类型,一种为图3b的保持特征图大小的类型,另一种为图3c的降低特征图大小类型。对于低维特征的上采样视当前特征的大小使用Up-Conv(Regular-Conv+Bilinear interpolation)或Regular-Conv,对于前后特征也会进行连接,具体结构细节见图3。
? 对于输入为$s$ scale的Sub-network $h$的建立如下:假设$h$子网包含$b_h$ blocks,block 1至 block $b_{h-1}(b_{h-1} < b_{h})$为Fusion Blocks,特征会下采样$s$次,保证输出的特征图为$s=1$ scale进行分类,剩余的block为regular Dense Blocks。

  • Transition layer

? RANet也使用了DeseNet稠密的transition layer,具体为$1\times 1$卷积+BN+ReLU,为了简单没有在图2体现

  • Classifiers and loss function

? 分类器加在每个子网的后几个block中,在训练阶段,样本会按顺序传给所有的子网,最终的损失是每个分类器计算交叉熵损失加权累积,具体逻辑和权重跟MSDNet一样

Resolution and Depth Adaptation

技术图片

技术图片

? RANet的整体结构和MSDNet十分类似,论文与其进行了对比,MSDNet的分类器放到分辨率最低的路径中,如果中间的分类器没有得到符合预期的结果,则会进行下一步全部尺寸的推理预测。而RANet则是从低尺寸到高尺寸逐步使用不同的子网进行推理预测,这样的方式能更好地自适应结合深度和分辨率。

Experiments


Anytime Prediction

技术图片

? 限制单图的计算量FLOPs,直接记录自适应网络中所有分类器的性能以及其计算量进行对比

Budgeted Batch Classification

技术图片

? 限制一批图片的资源总量,需要根据资源总量设定阈值来控制推理的提前退出,记录自适应网络的性能以及对应的资源限制

Visualization and Discussion

技术图片

? 图7展示了RANet识别的一些样例,easy为前阶段的分类器能识别成的样本,hard为前阶段识别失败,但后阶段能识别成功的样本,主要的挑战为多目标、小目标和类间特征不明显的物体

Conclusion


? 基于对自适应网络的研究,论文提出了自适应网络RANet(Resolution Adaptive Network)来进行效果与性能上的取舍,该网络包含多个不同输入分辨率和深度的子网,难易样本的推理会自动使用不同的计算量,并且子网间的特征会进行融合,从实验结果来看,在性能和速度上取得了很不错的trade-off

?

参考内容

?
?
?

如果本文对你有帮助,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】

技术图片

RANet : 分辨率自适应网络,效果和性能的best trade-off | CVPR 2020

标签:ted   帮助   get   分类   elf   org   load   中比   共享   

原文地址:https://www.cnblogs.com/VincentLee/p/12813010.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!