| |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| -> 人工智能 -> 论文:CSWin Transformer -> 正文阅读 |
|
|
[人工智能]论文:CSWin Transformer |
CSWin Transformer: A General Vision Transformer Backbone with Cross-Shaped Windows论文:https://arxiv.org/abs/2107.00652 架构CSWin Transformer的架构如下图所示。
CSWin Transformer Block 与 Multi-head self-attention(MSA) Transformer Block 的不同之处:
CSWin Transformer Block 的表达式:
Cross-Shaped Window Self-Attention尽管全局 MSA 具有较强的远程上下文建模能力,但全局 MSA 的计算复杂度是特征图大小的二次。因此,对于以高分辨率特征图为输入的视觉任务,如目标检测和分割,将会面临巨大的计算成本。为了缓解这一问题,SWin Transformer 等建议在局部注意窗口中进行 self-attention(简称为 局部 MSA),并应用移位窗口(或者halo)来扩大感受野。但是,每个Transformer块中的 token 仍然只有有限的注意区域,需要叠加更多的块来实现全局感受野。为了扩大注意区域,更有效地实现全局自我注意,我们提出了十字形窗口SA(类似于高斯滤波),它通过平行的水平和垂直条纹来实现 SA,形成十字形窗口。 水平和垂直条纹。根据 MSA,输入特征
X
X
X 线性投影到 K 个 head 上,然后每个 head 在水平或垂直条纹内进行局部 MSA。对于水平条纹SA,将输入特征
X
X
X 均匀划分为不重叠等宽的水平条纹
[
X
1
,
.
.
.
,
X
M
]
[X^1, ..., X^M]
[X1,...,XM] ,宽度为 sw (可以调整以平衡学习能力和计算复杂度),每个都包含 sw × W 个 token。形式上,假设
k
t
h
k^{th}
kth head 的投影 Q、K、V 的维度都是
d
k
d_k
dk?,那么
k
t
h
k^{th}
kth head 的水平条纹 SA 输出定义为: 其中, W k Q ∈ R C × d k , W k K ∈ R C × d k , W k V ∈ R C × d k W^Q_k∈\mathbb R^{C×d_k}, W^K_k∈\mathbb R^{C×d_k}, W^V_k∈\mathbb R^{C×d_k} WkQ?∈RC×dk?,WkK?∈RC×dk?,WkV?∈RC×dk? 分别表示 k t h k^{th} kth head的 Q、K、V 的投影矩阵, d k d_k dk? 设为 C/ k。垂直条纹的自注意也可以用类似的方法导出,其对 k t h k^{th} kth head的输出表示为 V-Attentionk(X)。 假设自然图像没有方向偏差,我们将K个 head 平均分成两个平行组。第一组的 head 表现出水平条纹SA ,第二组的 head 表现出垂直条纹SA。最后,这两个并行组的输出将被连接在一起。 其中 W O ∈ R C × C W^O∈\mathbb R^{C×C} WO∈RC×C 为常用的投影矩阵,将SA的结果投射到目标输出维(默认设为C)。如上所述,SA 设计的一个关键洞察力是将多个 head 分成不同的组,并相应地应用不同的SA操作。换句话说,通过多 head 分组,一个Transformer块中每个token的注意区域被扩大。相比之下,现有的SA在不同的多头上应用相同的SA操作。在实验部分,我们将证明这种设计将带来更好的性能。 计算复杂性分析。CSWin self-attention的计算复杂度为: 对于高分辨率输入,考虑到H、W在早期阶段会大于C,在后期阶段会小于C,我们选择早期的小sw,后期的大sw。换句话说,调整sw提供了灵活性,以便在后期有效地扩大每个代币的注意区域。另外,为使224 × 224输入时的中间feature map大小能被sw除,我们默认四个阶段sw分别设为1、2、7、7。 位置编码
但是,如果我们考虑E中的所有连接,将需要巨大的计算成本。我们假设,对于一个特定的输入元素,最重要的位置信息来自它的局部邻域。因此,我们提出了局部增强位置编码(LePE),并通过对值V应用深度卷积算子[10]来实现: 通过这种方式,LePE可以友好地应用于以任意输入分辨率作为输入的下游任务。 结果
|
|
|
|
|
| 上一篇文章 下一篇文章 查看所有文章 |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年12日历 | -2025/12/1 21:08:51- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |