论文笔记——HRFormer

摘要:

本文提出了一种高分辨率Transformer(HRFomer),它在密集的预测任务中学习高分辨率表示,而原来的Vison Transformer则产生低分辨率表示,具有高内存和计算成本。作者利用了高分辨率卷积网络(HRNet )中引入的多分辨率并行设计,以及在小的非重叠图像窗口上执行自注意的局部窗口自注意,以提高内存和计算效率。此外,还在FFN中引入了一个深度卷积,以在不连接的图像窗口之间交换信息。

 一、前言

本文的重点是针对tranformer在密集预测任务的运用,包括姿态估计和语义分割。

Vision Transformer将一幅图像分割成大小为16×16的图像块序列,并提取每个图像块的特征表示。因此,Vision Transformer的输出表示失去了细粒度的空间细节,这对精确的密集预测至关重要。

Vision Transformer输出一个单尺度的特征表示,因此缺乏处理多尺度变化的能力。为了减轻特征粒度的损失和对多尺度变化的建模,本文提出了包含更丰富空间信息的高分辨率Transformer(HRFromer),并构建了用于密集预测的多分辨率特征。

HRFomer采用HRNet 中提出的多分辨率并行设计进行构建。

  • 首先,HRFormer在stem和第一阶段都采用卷积,因为一些同时进行的研究也表明卷积在早期阶段表现更好。
  • 其次,HRFormer通过整个过程中和低分辨率流并行维护高分辨率流,帮助提高高分辨率特征。通过不同分辨率的特征图,HRFomer能够建模多尺度变化。
  • 第三,HRFormer通过与多尺度融合模块交换多分辨率特征信息,混合了短范围和远范围注意力。

图1显示了HRFormer块的详细信息。 

  1. 在每个分辨率下,都采用局部窗口自注意机制来降低内存和计算复杂度。研究将特征图划分为一组不重叠的小图像窗口,并在每个图像窗口中分别进行自注意。这减少了内存和计算复杂度从二次到线性的空间大小。
  2. 并且进一步引入遵循局部窗口自注意的3×3深度卷积到前馈网络(FFN)中,在局部窗口自注意过程中不同的图像窗口之间交换信息。这有助于扩大感受野,并且对密集的预测任务至关重要。

二、相关工作

 在最近的发展中,已经验证了一些有效的改进,如多尺度的特征层次结构和混合卷积。

例如,并发工作MViT 、PVT 和Swin按照典型的ResNet-50的空间配置,将多尺度特征层次结构引入变压器中。与它们不同的是,我们的HRProrter通过利用受HRNet启发的多分辨率并行设计,整合了多尺度特征层次结构

CvT、CeiT 和LocalViT提出通过在自注意或FFN中插入深度卷积来增强Transformer的局部性。在本文的HRFormer中插入卷积的目的是不同的,除了增强局部性之外,它还确保了在非重叠窗口之间的信息交换

之前的研究提出了类似的局部自注意方案来进行图像分类。它们按照串行卷积构造重叠的局部窗口,导致了沉重的计算成本。

本文提出的应用局部窗口自注意方案将输入特征图划分为不重叠的窗口。然后,在每个窗口内独立地应用自注意,以显著提高效率。有几个同时开发的工作使用Vision Transformer来解决密集的预测任务,已经证明,增加Vision Transformer输出特征的空间分辨率对语义分割是重要的,对人体姿态估计也是一样的。

我们的HRFomer通过利用多分辨率并行transformer方案,提供了一种不同的路径来解决Vision Transformer的低分辨率问题。

三、High-Resolution Transformer(HRFomer

3.1 多分辨率并行transformer

研究遵循HRNet的设计,从高分辨率卷积stem作为第一阶段开始,逐步逐个添加高到低分辨率的流作为新阶段。多分辨率的流被并行连接。主体由一系列的stage阶段组成。

在每个阶段,每个分辨率流的特征表示分别由多个transformer块独立更新,并与卷积多尺度融合模块重复交换不同分辨率的信息

图2说明了整个HRFrormer架构。卷积多尺度融合模块的设计完全遵循HRNet。 

3.2 局部窗口自注意

研究将特征映射X∈R(N×D)划分为一组不重叠的小窗口:X→{X1,X2,···,XP },其中每个窗口的大小为K×K。在每个窗口内独立地执行多头自注意(MHSA)。在第p个窗口上的多头自注意的公式为:

H表示头数,D表示通道数,N表示输入分辨率,X^p表示MHSA的输出表示。研究还应用了T5模型中引入的相对位置嵌入方案,将相对位置信息纳入局部窗口自注意中。

使用MHSA在每个窗口内聚合信息,然后将它们合并计算输出X^MHSA:

图1的左侧部分说明了局部窗口自注意如何更新二维输入特征,其中多头自注意在每个窗口内独立操作。

3.3 具有深度卷积的FFN

局部窗口的自注意分别在不重叠的窗口上进行自注意操作。这些窗口之间没有信息交换。为了处理这个问题,在形成FFN中的两个点MLP之间添加了一个3×3深度卷积: MLP(DW-Conv.(MLP()))。图1的右侧显示了一个使用3×3深度卷积的FFN如何更新2维输入特征的例子。

3.4 特征检测头的设计

如图2所示,HRFormer的输出由四个不同分辨率的特征图组成。举例说明不同任务的表示头设计细节如下: (i) ImageNet分类,研究将四分辨率的特征图发送到瓶颈,输出通道分别更改为128、256、512和1024。然后,应用串线卷积将其融合,并输出一个具有2048个通道的最低分辨率的特征图。最后,应用一个全局平均池操作,然后使用最后的分类器。(ii)姿态估计,我们只将回归头应用于最高分辨率的特征图上。(iii)语义分割,我们将语义分割头应用于连接的表示上,首先将所有低分辨率的表示上采样到最高分辨率,然后将它们连接在一起。

3.4  模型具体配置

3.5 分析

3×3深度卷积的好处是双重的:一个是增强局部性,另一个是启用跨窗口的交互本文说明了具有深度卷积的FFN如何能够将交互扩展到不重叠的局部窗口之外(还没太明白),并在图3中对它们之间的关系进行建模。因此,基于局部窗口自注意和3×3深度卷积的FFN相结合,可以构建显著提高内存和计算效率的HRFrormer块。

四、实验(只放了姿态估计的)

五、总结

本文提出了高分辨率变压器(HRFomer),一个简单而有效的transformer架构,用于密集的预测任务,包括姿态估计和语义分割。关键的观点是将HRFromer块集成,它将局部窗口自注意和包括深度卷积的FFN相结合提高了内存和计算效率,并且结合了HRNet的多分辨率并行设计。此外,HRFormer还受益于在早期阶段中使用卷积,并将短范围和长范围的attention注意力与多尺度融合方案相结合。实验验证了该算法在姿态估计和语义分割任务上的有效性

 

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,关于 jQuery 的事件,我可以和你分享一些学习笔记。 1. 绑定事件 在 jQuery 中,我们可以通过以下方式来绑定事件: ``` $(selector).event(function(){ // 事件处理程序 }) ``` 其中,`selector` 表示要绑定事件的元素,`event` 表示要绑定的事件类型,比如 `click`、`mouseover` 等等。事件处理程序则是在事件触发时要执行的代码块。 2. 多个事件绑定 我们可以通过 `on()` 方法来同时绑定多个事件: ``` $(selector).on({ event1: function(){ // 事件处理程序1 }, event2: function(){ // 事件处理程序2 } }) ``` 这样,当 `event1` 或 `event2` 中任意一个事件触发时,对应的处理程序都会被执行。 3. 解除事件 如果需要解除某个元素的事件处理程序,可以使用 `off()` 方法: ``` $(selector).off(event); ``` 其中,`event` 表示要解除的事件类型。如果不指定事件类型,则会解除该元素上所有的事件处理程序。 4. 事件委托 在 jQuery 中,我们可以使用事件委托来提高性能。事件委托是指将事件绑定到父元素上,而不是绑定到子元素上,然后通过事件冒泡来判断是哪个子元素触发了该事件。这样,当子元素数量较多时,只需要绑定一次事件,就可以监听到所有子元素的事件。 ``` $(selector).on(event, childSelector, function(){ // 事件处理程序 }) ``` 其中,`selector` 表示父元素,`event` 表示要绑定的事件类型,`childSelector` 表示要委托的子元素的选择器,事件处理程序则是在子元素触发事件时要执行的代码块。 以上是 jQuery 中事件的一些基本操作,希望对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值