关注公众号,发现CV技术之美

0

写在前面

在本文中,作者提出了一种用于构造高效卷积神经网络的多功能滤波器 ,并应用于各种视觉识别任务中。考虑到硬件上运行高效的深度学习模型的需求,研究者们已经开发了许多方法来学习紧凑的神经网络。这些工作大多数是以不同的方式来压缩滤波器,例如,研究小的、稀疏的或量化的滤波器。

相反,作者从“加法”的角度来处理滤波器。在二进制掩码的帮助下,可以从主滤波器导出一系列次滤波器 。这些次滤波器继承于主滤波器,不占用额外的存储空间,但一旦在计算中展开,它们就可以通过整合不同感受野提取的信息来显著增强主滤波器的能力。

除了空间多功能滤波器外,作者还从通道的角度对多功能滤波器进行了研究。在正交约束下,可以为不同的主滤波器进一步定制二进制掩码。在基准数据集上的实验结果表明,本文提出的多功能滤波器能够达到与原始滤波器相当的精度,但需要更少的显存和计算量。

01

论文和代码地址

Learning Versatile Convolution Filters for Efficient Visual Recognition

论文地址:https://arxiv.org/abs/2109.09310v1

代码地址:未开源

02

Motivation

计算机视觉应用(例如,图像分类、目标检测和图像分割)在卷积神经网络(CNN)的帮助下,在过去十年中取得了显著的发展。从最早的AlexNet到近期的ResNeXt,分类准确率不断提高,但是计算量也不断的提高。因此,这些网络在计算资源和存储资源丰富的场景中能被广泛使用,但是在智能手机、摄像头等移动设备上部署并不容易。

基于这样的现象,过去几年也提出了许多不同的方法来解决了低性能设备资源供给与复杂神经网络需求之间的矛盾,比如剪枝、量化、蒸馏学习等。在本文中,作者提出了这样两个问题:一个正常的卷积核的价值是否已经被最大限度地挖掘出来了?一个正常的卷积核能发挥比平常更多的作用吗?

在本文中,作者提出了用于高效卷积神经网络的多功能滤波器 。作者根据一些预定义的规则从主滤波器中采样一系列较小的辅助滤波器。这些次滤波器继承了主滤波器的权重,但它们将具有不同的感受野,并从空间维度提取特征。神经网络由主滤波器组成,而网络的作用将通过次滤波器在计算中充分体现出来。

具体的,作者在空间和通道维度都用了多功能卷积。其中将主滤波器展开为次滤波器时,用到了二进制掩码。除了手工设计的二进制掩码来生成多功能滤波器之外,作者还通过可学习的二进制掩码进一步学习更加灵活的多功能卷积,并利用正交约束来提高这些滤波器的多样性。

其中,主滤波器和二进制掩码都是通过端到端的方式进行学习优化的。得到的神经网络是轻量级的,因为只需要几个主滤波器和1-bit形式的掩码。

首先,可学习的二进制掩码可以以两种方式部署:由不同的主滤波器共享的二进制掩码,或者不同的主滤波器具有不同的二进制掩码集合 。其次,为了提高生成的次滤波器的多样性,作者引入正交约束来降低学习到的二进制掩码之间的相关性

为了加快多样性滤波器的卷积速度,作者将主滤波器和输入特征映射之间的卷积作为缓存中的中间结果,可以由不同的二进制掩码重复使用。此外,作者在图像分类、目标检测和图像超分辨率等不同视觉识别任务上进行了扩展实验,验证了多功能滤波器的有效性。

03

方法

3.1 Spatial Versatile Filters

给定输入数据和卷积核,其中d为卷积核感受野的大小,卷积的过程可以表示为:

其中表示卷积操作,输出特征的空间维度为。相比于全连接操作,卷积操作能够节省计算量,因为利用了局部操作。对于上面的例子,全连接的复杂度为,卷积的复杂度为。

感受野是卷积引入的一个重要概念。较大的感受野将允许神经元在更大的区域内检测到变化,但会导致较不精确的感知。另一方面,较小的感受野将使神经元能够检测到细微的细节。

因此,综合较大感受野和较小感受野的神经元来提取全面、准确的特征是合理的 。显式引入不同大小的滤波器是处理不同尺度的输入信息的直接方法,但是这些滤波器存储空间的显著增加是一个新的挑战。

最重要的是,尽管同一层中不同大小的滤波器有不同的感受野,但它们的感受野会有一定的重叠,这表明了它们对应的滤波器之间存在联系。其中为主滤波器,为次滤波器,。为了最大化主滤波器的作用,次滤波器通过一个二进制掩码从主滤波器中采样得到:

示意图如下所示:

通过concat来自这些次滤波器的卷积输出,可以得到如下所示的特征映射

其中、、是偏置参数。通过上述的公式,我们可以同时得到来自s个不同感受野的次滤波器的卷积结果。

3.2 Channel Versatile Filters

上一节提出的空间多功能滤波器,通过调整给定卷积滤波器的高度和宽度来生成一系列次卷积滤波器。然而,这些次滤波器仍然存在明显的冗余性,即每个卷积滤波的通道数远大于其高度和宽度。考虑到1×1滤波器在CNN架构中的广泛应用,如MobileNet和ShuffleNet,作者从通道的角度着手开发通道多功能滤波器

卷积滤波器最重要的特性是它们的权重对输入数据共享。此外,卷积滤波器通常与输入数据具有相同的深度,并基于步长参数沿输入数据的宽度和高度方向滑动。如果输入深度为512,那么一个1×1×512的滤波器需要进行大量的浮点乘法,对不同的通道进行加权,以跨通道地整合信息。

然而,这种针对所有通道的粗粒度信息汇总很难突出单个通道的特征,因此作者基于通道维度,为原始卷积滤波器定义了通道次滤波器,即:

其中为通道步长,示意图如下图所示:

3.3 Learning To Be Versatile

上面介绍了手工设计的mask,但是这些手工设计的mask与人类知识高度相关,并且对于不同视觉识别任务中的CNN来说,可能并不总是最佳的。因此,作者没有使用预定义规则来生成二进制掩码,而是倾向于在优化的同时学习最优的二进制掩码。

虽然主滤波器将被利用多次(最多s次),但只需要维护一个副本,这意味着比标准卷积滤波器需要更少的32-bit值。由于二进制掩码不是固定的,并且会随着主滤波器的不同而不同,因此也需要存储它们,但是二进制掩码的1-bit二进制值不会带来太多的存储成本。

当存在多个主过滤器时,作者提出两个用于将二进制掩码部署到不同主滤波器的策略,即共享策略(shared strategy)分离策略(separate strategy) 。在共享策略中,不同的主滤波器共享二进制掩码;但在分离策略中,每个主滤波器的二进制掩码都是单独的。

对于共享策略(如上图所示),不同的主滤波器使用相同的掩码可以生成不同的次滤波器,如下所示:

然后基于共享策略生成的次滤波器,进行卷积操作:

对于分离策略(如上图所示),不同的主滤波器使用不同的掩码可以生成不同的次滤波器,如下所示:

然后基于分离策略生成的次滤波器,进行卷积操作:

它的计算复杂度与共享策略相同。虽然掩码数量增加了,但由于生成的次级滤波器的多样性增加,这种分离策略可以导致更好的表示能力。

为了进一步促进所生成的次滤波器及其所产生的特征图的多样性 ,主滤波器的二进制掩码相互之间应该尽可能不同。因此,作者提出降低二进制掩码之间的相关性。通过向量化并将所有的二进制掩码并堆叠到一个矩阵中,得到:

其中M应该是一个近似正交的矩阵,用于生成没有明显相关性的特征映射。因此,作者在训练阶段对每个卷积层中的二进制掩码应用以下正则化:

其中是单位矩阵,是M的每列中的元素数。通过最小化上述函数,二值掩码将近似彼此正交,这将改善次滤波器之间的差异,并增加所得到的特征图的信息量。

04

实验

4.1 Experiments on CIFAR-10

作者首先在CIFAR-10上进行了实验。

从上表可以看出,加入空间和通道多样性滤波器后,模型的计算量和参数量都有一定程度的下降。

上表显示了不同和参数下的参数量、计算量和准确率的结果。

上图显示了不同超参数和λ下的准确率变化。

4.2 Efficient Visual Classification

接下来,作者在ImageNet上进行了实验。

上表显示了本文方法基于AlexNet和ResNet-50进行的实验结果,表明本文的方法在不同的网络结构上都有效。

上图和上表显示本文方法和其他方法在ImageNet上精度和计算量的对比,可以看到本文的方法在精度和计算量上达到了更好的水平。

上表显示了不同方法在CPU上进行推理所用的时间。

上表显示了,将所提出的方法与训练后量化方法相结合的实验结果。

作者还在一些小网络上进行了实验,实验结果如上表所示。

上表显示了基于小网络,不同方法在CPU上进行推理所用的时间。

上表显示了本文方法和NAS方法相对比的结果。

4.3 Efficient Visual Detection

上表显示了本文方法在目标检测上的实验结果。

4.4 Efficient Visual Super-Resolution

上表显示了超分辨任务上,在VDSR模型上应用多功能滤波器的实验结果对比。

05

总结

探索低显存使用率和计算复杂度的卷积神经网络是非常必要的,这样才能使得这些模型能在移动设备上使用。事实上,一般神经网络的主要浪费在于,对于给定的数据,具有海量参数的卷积滤波器只能产生一个特征。

为了充分利用卷积滤波器的建模能力,本文从空间和通道两个角度提出了多功能的卷积滤波器,可以使用更少的参数来生成相同数量的有用特征,同时降低计算复杂度。在基准图像数据集和模型上的实验表明,该方法不仅减少了对存储和计算资源的需求,而且提高了CNN的性能。此外,本文提出的方法可以很容易地利用现有的卷积来实现。

▊ 作者简介

研究领域:FightingCV公众号运营者,研究方向为多模态内容理解,专注于解决视觉模态和语言模态相结合的任务,促进Vision-Language模型的实地应用。

知乎/公众号:FightingCV

END

欢迎加入「计算机视觉交流群

TPAMI 2021 华为诺亚悉尼大学陶大程团队提出多功能卷积,助力轻量级网络相关推荐

  1. 悉尼大学陶大程:遗传对抗生成网络有效解决GAN两大痛点

    来源:新智元 本文共7372字,建议阅读10分钟. 本文为你整理了9月20日的AI WORLD 2018 世界人工智能峰会上陶大程教授的演讲内容. [ 导读 ]悉尼大学教授.澳大利亚科学院院士.优必选 ...

  2. NeurIPS 2021 | 华为诺亚Oral论文:基于频域的二值神经网络训练方法

    ©作者 | 机器之心编辑部 来源 | 机器之心 常规符号函数的梯度几乎处处为零,不能用于反向传播.为此,来自华为诺亚方舟实验室等机构的研究者提出一种在频域中估计原始符号函数梯度的新方法. 二值神经网络 ...

  3. DyFPN:浙大华为诺亚西湖大学等提出用于目标检测的动态特征金字塔,减少40%的FLOPs!...

    关注公众号,发现CV技术之美 ▊ 写在前面 特征金字塔网络(FPN)是目标检测框架的重要组成部分.大多数现有FPN变体的性能提高主要归因于计算负担的增加.增强FPN的一种方法是通过扩展感受野来丰富空间 ...

  4. 【深度学习】陶大程等人编写!最新41页深度学习理论综述

    作者单位:悉尼大学(陶大程等人) 论文 https://arxiv.org/pdf/2012.10931.pdf 最近,悉尼大学陶大程等人发布了一个41页的最新深度学习理论的综述,对深度学习理论的最新 ...

  5. 突发!AI视觉大牛陶大程被爆将离职京东探索研究院院长!

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 点击进入->[计算机视觉]微信技术交流群 AI 技术能成为京东第二增长曲线的原动力吗? 转载自:AI科 ...

  6. 新晋 ACM Fellow 陶大程,8 篇 NeurIPS 论文详解

    2019-12-26 06:17:03 作者 | AI科技评论 编辑 | 刘萍 近日2019年 ACM Fellows 增选结果出炉之后,备受人们关注,其中除谢源.周礼栋.陈熙霖等业界和学术界著名学者 ...

  7. NeurIPS 2021 Transformer部署难?北大华为诺亚提出Vision Transformer的后训练量化方法...

    关注公众号,发现CV技术之美 本文分享 NeurIPS 2021 论文『Post-Training Quantization for Vision Transformer』,由北大&华为诺亚联 ...

  8. TPAMI 2022|华为诺亚最新视觉Transformer综述

    来源丨机器之心 编辑丨极市平台 导读 华为诺亚方舟实验室联合北大和悉大整理了业界第一篇视觉Transformer综述. 2021 年对计算机视觉来说是非常重要的一年,各个任务的 SOTA 不断被刷新. ...

  9. GNN论文周报 | 来自西湖大学、南京大学、国防科大、华为诺亚方舟实验室、莱斯大学等机构前沿论文研究...

    点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 图神经网络(GNN)是一类专门针对图结构数据的神经网络模型,在社交网络分析.知识图谱等领域中取得了不错的效果.近来,相关研究人员在GNN ...

最新文章

  1. Java并发编程之CountDownLatch、CyclicBarrier和Semaphore
  2. 概率论中均值、方差、标准差介绍及C++/OpenCV/Eigen的三种实现
  3. 我从哆啦A梦的口袋里,掏出一辆充气电动车
  4. 音视频技术开发周刊 | 156
  5. SAP UI5 的本地 Fiori sandbox Launchpad
  6. 计算机学校的奖项,2017年度国家科学技术奖各奖项公示
  7. python控制鼠标_如何使用Python在Mac中控制鼠标?
  8. 买了基金之后要天天盯着吗?
  9. 昇腾 AI 成就了一群玩船模的大学生——创新,有“模”有 Young
  10. Google发布全球首个72量子比特处理器Bristlecone预览
  11. HTML、CSS:基础知识
  12. matlab如何读取一个图片,怎么用Matlab读入并显示图片文件
  13. php太平洋时间转成北京时间,北京时间 → 太平洋时间 换算表 和太平洋时间 → 北京时间 换算表...
  14. 在windows 10中输入法语等语言的特殊字符
  15. python实现千牛客服自动回复语_淘宝客服自动回复语录(客服自动回复大全)
  16. Deep Unordered Composition Rivals Syntactic Methods for Text Classification
  17. 2008系统更改计算机名,用Windows server 2008 R2更改计算机名的方法
  18. python爬虫入门基础知识_【PYTHON】【爬虫】关于python爬虫的一些基础知识
  19. 手机5g什么时候普及_5G 网络什么时候普及,现在购买 4G 手机划算吗?
  20. element-ui换肤,全局换肤

热门文章

  1. Python3中的map与reduce的用法
  2. 入门讲解:使用numpy实现简单的神经网络(BP算法)
  3. 2022牛客寒假算法基础集训营1 ——H 牛牛看云
  4. python导入同一文件夹下的类_Python模块导入机制与规范
  5. python打包成二进制文件_pyinstall python文件打包成二进制exe文件
  6. 网络访问此计算机,从网络访问此计算机 - 安全策略设置
  7. android不能在主线程,android.os.NetworkOnMainThreadException 在4.0之后谷歌强制要求连接网络不能在主线程进行访问(示例代码)...
  8. cad在曲线上一点画垂线lisp_【每日问答24】pdf转CAD的第一种方法(内含往期)
  9. OpenSSH 命令注入漏洞(CVE-2020-15778)
  10. 南华大学计算机学院吴取劲,一种基于图深度优先搜索的基本路径集自动生成优化算法-南华大学学报.PDF...