首页 > 其他分享 >[note] HorNet以及n阶空间交互

[note] HorNet以及n阶空间交互

时间:2023-01-17 16:22:12浏览次数:58  
标签:frac 卷积 note 特征 空间 交互 HorNet

pre

title: HorNet: Efficient High-Order Spatial Interactions with Recursive Gated Convolutions
accepted: NeurIPS 2022
paper:https://arxiv.org/abs/2207.1428
code: https://github.com/raoyongming/HorNet
ref: https://blog.csdn.net/weixin_43427721/article/details/127159469

亮点:backbone、空间交互

早些时候阅读MogaNet,对于里面提到交互复杂性的很是疑惑,后来看到CSDN一篇关于HorNet的介绍,才想起来跟里面高阶空间交互或许挺接近的,于是理了一遍

针对问题

作者总结了Vision Transformer成功的三大法宝是通过self-attention实现输入自适应(input-adaptive)、远距离(long-range)和高阶空间交互(hige-order spatial interaction)的空间建模新方法。

之前的工作已经成功地将Vision Transformer的元架构、输入自适应权值生成策略和大范围建模能力迁移到CNN模型中,但尚未对高阶空间交互机制进行研究。

于是这里提出递归门控卷积(\(g^{n}Conv\)),它是一种吸收了这三个关键因素的卷积架构

核心思想

图1 主要思想的插图 (a)标准卷积没有显式考虑空间交互 (b)动态卷积和SE引入动态权重,通过空间交互来提高建模能力 (c)自注意力用两个连续的矩阵乘法进行二阶空间交互 (d)g^nConv通过高效门控卷积核递归设计实现了任意阶的空间交互

空间交互

根据论文图示跟参考资料,空间交互应该指的是对特征的额外处理次数?

以自注意力举例,输入X变换为K、V矩阵,相当于抽出了特征图,此为零阶空间交互。之后K、V矩阵相乘可看做特征图K进行了一次空间交互,得到了新的特征图,记为S。之后再用V对S操作,得到最终注意力得分A,则是第二次空间交互,因此总共是二阶空间交互。

HorNet作者认为动态卷积SENet都是一阶空间交互,属于图(b),因为特征只跟近邻区域进行了一次运算。

动态卷积condConv可能是根据样本计算各个核线性组合权值的时候,SENet应该也是根据特征计算权值时,但这两个操作好像是整个样本/特征,不单单是邻近区域,感觉这"特征","邻近区域"定义还是不大清晰,但意思似乎能体会

n阶空间交互

公式看着蛮复杂,不过这里只是理解一下核心思想,并没打算太过深入

图2 HorNet中g^nConv的基础构建块。采用Transformer的block设计,用g^nConv替换自注意力子层(左图)。也提供了g^3Conv的实现细节(中图)以及实现任意阶的Pytorch风格代码(右图)

看图2中间(同时搭配右图理解),输入通道维数是C,先投影到2C,然后按通道数比例切分成\(\frac{1}{4}C, \frac{1}{4}C, \frac{1}{2}C, 1C\)四个部分。

分成第一部分(\(\frac{1}{4}C\))跟其他(\(\frac{1}{4}C, \frac{1}{2}C, 1C\)),后者通过深度可分离卷积处理,然后取前两个\(\frac{1}{4}C\)特征相乘、投影,新的特征通道数加倍,变为\(\frac{1}{2}C\),这个是第一次空间交互。

然后重复这个过程,每次都跟剩下的特征相乘、投影,然后通道数加倍,最终通道数变回C,完成n-1次空间交互,总的为n阶交互。

注意到每阶通道数是成倍增加的,如此确保高阶交互运算不会引入太多的计算开销:

\[C_{k}=\frac{C}{2^{n-k-1}},\qquad0\leq k\leq n-1. \tag{3.5} \]

这种设计促使网络进行coarse-to-fine的交互,其中低阶交互使用的通道数较少。并且,这里将输入特征的通道映射到了2C,即使阶数n增加,可以证明(见附录A)总计算量(FLOPs)是有上界的:

\[FLOPs(g^{n}Conv)<H W C(2K^{2}+11/3\times C+2) \tag{3.6} \]

实验

这部分还挺丰富的,总的来说在分类上HorNet超越了Swin transformer和ConvNeXt,对象检测和实例分割上也比Swin/ConvNeXt的表现更突出。

总结

提出了递归门控卷积(\(g^{n}Conv\)),它通过门控卷积和递归设计执行高效的、可扩展的、平移等效的高阶空间交互。

在各种Vision Transformer和基于convolution的模型中,\(g^{n}Conv\)可以替代空间混合层。

在此基础上,作者构建了一个新的通用视觉骨架网络HorNet,并通过大量的实验证明了\(g^{n}Conv\)和HorNet在常用的视觉识别基准上的有效性。

作者希望他们的尝试可以启发未来工作,以进一步探索视觉模型中的高阶空间交互。

评价

仅仅快速过了一遍,感觉这个空间交互的思想比较有趣,但若能直接给个定义会方便不少,虽说希望能启发未来工作,但老板说近年来的backbone很少像ResNet那样通用,很多都是只在小领域生效,但肯定是得试试的。

标签:frac,卷积,note,特征,空间,交互,HorNet
From: https://www.cnblogs.com/Stareven233/p/16953649.html

相关文章

  • Vulnhub之Deathnote 靶机详细测试过程
    Deathnotes作者:jason_huawen靶机基本信息名称:Deathnote:1地址:https://www.vulnhub.com/entry/deathnote-1,739/识别目标主机IP地址─(kali㉿kali)-[~/Vulnhub/Dea......
  • 请求参数满足 @NotEmpty 约束注解,BindingResult 却报错
    问题描述在User实体类的userID属性加@NotEmpty注解:publicclassUser{@NotEmpty(message="ID不能为空",groups={RuleGroupA.class})privateString......
  • [NotePad++]NotePad++实用技巧
    2应用技巧2.1匹配并捕获/截取截取第1列的数据截取前"(.*)","(.*)","(.*)"\)\);截取后:X参考文献......
  • Gartner CEE2022 Keynote Speech
    GartnerCEE2022KeynoteSpeechhttps://www.gartner.com/cn/china-executive-exchange/china-executive-exchange-2022/cee2022-keynote-speech/cee2022-keynote-speech-......
  • 交互多模型(IMM)Kalman滤波
         前段时间不慎感染新冠,本来元旦好了,结果跑了个五公里。感觉心脏不行了,出现胸闷,气短,心痛的情况。保险起见又歇了几天,今天感觉还可以。所以把《卡尔曼滤波原理......
  • 和菜鸟一起学产品之交互式设计
    ps:参考产品经理深入浅出ppt......
  • pandas_notes
    set_indexvsreset_indexset_index:原本无标签索引,现设置标签索引reset_index:原本有标签索引,现重设标签索引importpandasaspddf1=pd.read_csv('internet_company_s......
  • Summernote 图片上传
    Summernote默认是插入Base64格式的图片,图片并没有上传到服务器。可以通过API自行实现,官方文档:https://summernote.org/deep-dive/#insertnode插入图片://@param{......
  • 用python虚拟环境安装jupyter notebook
    一、安装python虚拟环境以及在虚拟环境中安装jupyter1、创建python虚拟环境,命名为py_venv-onepython-m-venvpy_venv-one2、进入并激活虚拟环境进入Scripts文件夹ac......
  • Binary Note
    PWN&RE方向介绍PWNPwn类题目重点考察选手对于二进制漏洞的挖掘和利用能力,其考点也通常在堆栈溢出、格式化漏洞、UAF、DoubleFree等常见二进制漏洞上。选手需要根据题......