DETR论文,基于transformer的目标检测网络 DETR:End-to-End Object Detection with Transformers

transformer的基本结构:

  • encoder-decoder的基本流程为:

1)对于输入,首先进行embedding操作,即将输入映射为向量的形式,包含两部分操作,第一部分是input embedding:例如,在NLP领域,称为token embedding,即将输入序列中的token(如单词或字符)映射为连续的向量表示;在CV领域,可以是将每个像素或者每个patch块映射为向量形式,例如,patch embedding层

2)另一个embedding操作为positional encoding:即位置编码,即一组与输入经过embedding操作后的向量相同维度的向量(例如都为[N, HW, C]),用于提供位置信息。位置编码与input embedding相加得到transformer 编码器的输入。

3)transformer encoder:是由多个编码模块组成的编码器层,每个编码模块由多头自注意力机制+残差add+层归一化LayerNorm+前馈网络FFN+残差add+层归一化LayerNorm组成

多头自注意力机制:核心部分,例如,在CV领域,经过embedding层后的输入为[N, HW, C],N为Batch num,HW为像素个数,每个像素映射为一个维度为C的向量;然后通过QKV的自注意力机制和划分为多头的方式,得到输出为[N, HW, C]:

要除以​的原因:查询(Query)与键(Key)之间的点积,然后将这个点积除以一个缩放因子,最后应用softmax函数来获得注意力权重。如果不进行缩放,当键的维度dk很大时,点积的结果可能会非常大,这会导致softmax函数的梯度非常小,从而引起梯度消失问题。通过除以根号dk,提高训练的稳定性。

add+LayerNorm:经过多头自注意力机制后再与输入相加,并经过层归一化LayerNorm,即在最后一个维度C上做归一化,详见https://blog.csdn.net/m0_48086806/article/details/132153059

前馈网络FFN:是由两个全连接层+ReLu激活函数组成

4)transformer decoder:是由多个解码模块组成的解码器层,每个解码模块由Masked多头自注意力机制+残差add&层归一化LayerNorm+多头cross attention机制+add&LayerNorm+前馈网络FFN+add&LayerNorm。

5)此外需要注意的是,第一个解码模块的输入为output(可以初始化为0或者随机初始化)经过embedding操作后的结果,之后各个解码模块的输入就变为前一个解码模块的输出了;第二个cross attention机制的QKV输入分别为:KV键值对都是等于编码器最终的输出;Query为Masked多头自注意力的输出

Masked多头自注意力机制:一个通俗解释为:一个词序列中,每个词只能被它前面的词所影响,所以这个词后面的所有位置都需要被忽略,所以在计算Attention的时候,该词向量和它后面的词向量的相关性为0。因此为Mask

6)最后通过Linear层+Softmax得到最终的输出

相关推荐
碧海银沙音频科技研究院4 小时前
1-1杰理蓝牙SOC的UI配置开发方法
人工智能·深度学习·算法
龙文浩_6 小时前
AI梯度下降与PyTorch张量操作技术指南
人工智能·pytorch·python·深度学习·神经网络·机器学习·自然语言处理
清空mega7 小时前
动手学深度学习——样式迁移
人工智能·深度学习
MRDONG18 小时前
Prompt Engineering进阶指南
人工智能·深度学习·神经网络·机器学习·自然语言处理
QQ676580088 小时前
基于深度学习YOLO的苹果采摘点图像识别 苹果枝条分割识别 苹果分割检测 苹果茎叶分割识别 果园自动化采摘设备目标识别算法第10386期
深度学习·yolo·自动化·苹果采摘点图像·苹果枝条分割·苹果茎叶分割·果园自动化采摘设备
code_pgf8 小时前
Mamba-2 / Jamba / DeepSeek-V2 高效架构
架构·transformer
碧海银沙音频科技研究院8 小时前
虚拟机ubuntu与windows共享文件夹(Samba共享)解决WSL加载SI工程满卡问题
人工智能·深度学习·算法
小江的记录本9 小时前
【Transformer架构】Transformer架构核心知识体系(包括自注意力机制、多头注意力、Encoder-Decoder结构)
java·人工智能·后端·python·深度学习·架构·transformer
AI先驱体验官9 小时前
债小白分析:债务优化服务的新变量、AI能否带来行业升级
大数据·人工智能·深度学习·重构·aigc
SomeB1oody9 小时前
【Python深度学习】2.1. 卷积神经网络(CNN)模型理论(基础):卷积运算、池化、ReLU函数
开发语言·人工智能·python·深度学习·机器学习·cnn