当前位置: 首页 > news >正文

Anchor DETR

Anchor DETR(AAAI 2022)

改进:

  1. 提出了基于anchor的对象查询
  2. 提出Attention变体-RCDA

在以前DETR中,目标的查询是一组可学习的embedding。然而,每个可学习的embedding都没有明确的意义 (因为是随机初始化的),所以也不能解释它最终将集中在哪里。此外,由于每个对象查询将不会关注特定的区域,所以训练时优化也是比较困难的

在这里插入图片描述

DETR中对可视化的注释:( slots就是100个查询中的一个 )img

在这里插入图片描述

这里三种预测pattern可能相同也可能不同

简单的模型

与DETR没有特别大的变化

6encoder,6decoder,右下角是Anchor Points

position embedding会加入到decoder的q和k中

object query:[100,256]增加了anchor point,编码成positon embedding,替换原来的oq

img

生成anchor point有两种方式

img

(a)anchor固定,宽高均匀分布的网格,均匀采样

(b)先将一个tensor以0-1均匀分布随机初始化点位,并作为学习参数(embedding),实验效果好

在这里插入图片描述

anchor point转化为 object query

在这里插入图片描述

首先,获得learned的[100(NA),2]的anchor points

然后通过sin/cos转换成[100,256]高频位置编码(代码里函数为pos2posemb2d);

两层MLP学习(代码里为adapt_pos2d),转换为Q_P:[Np(pattern),256]。

代码和文章有些地方不太一致,具体如下:

在这里插入图片描述

Multiple Predictions for Each Anchor Points

假设参考点100个,每个点预测一个目标,真实的图像在同一个点附近可能会有多个目标

anchor detr设计了一个点预测多个模式(3种),每个点设置Np个模式(Np=3)

原始detr,object query是[100,256]每个是[1,256]

anchor detr增加了一个pattern embedding,如下;
Q f i = Embedding ⁡ ( N p , C ) Q_{f}^{i}=\operatorname{Embedding}\left(N_{p}, C\right) Qfi=Embedding(Np,C)
也就是每个点Np(3)个pattern,[3,256],论文里Np=300,pattern=3,也就是900个点

最终只需要将pattern embeddinganchor point的Q_p相加,就得到最终的object query, Pattern Position query可以表示为:

img

实际上代码里没用到这个上述式子

上个代码图中的代码里reference point是直接从300repeat到900的

如果我理解有误请提醒我

代码种pattern是第一个decoder的输入,原始detr的tgt全是0

在这里插入图片描述

Row-Column Decoupled Attention

减少的是内存开销!!!!

行列分解attention机制,加速收敛,q长度为900,减少内存减少内存开销。

在这里插入图片描述

原始的transformer输入token(H*W)会被拉平成一维的传入

Ax(W),先在行维度进行计算

Ay(H),在进行Ay操作

Ay和Z在高度维度进行加权求和

QK都进行行列分解,V不分解[Nq,H*W]

原始attention:Nq * H * W * M(head)

RCDA:

Ax:Nq * W * M

Ay:Nq * H * M

就只需要比较两个矩阵大小即刻,图的右侧是比例公式,两个维度比较,约掉后剩下W * M/C,W假设是32(DC5),M=8,C=256,那是一样的,看C和W * M

DC5表示在主干网络(默认resnet50)的最后一个stage加了个空洞卷积并减少了个pooling层实现分辨率增大一倍

实验

1.比对了不同线性attention的memory和ap

img

2.模式a通常是大物体,模式b是小物体,模式c比较均衡

img

参考

https://www.bilibili.com/video/BV148411M7ev/?spm_id_from=333.788&vd_source=4e2df178682eb78a7ad1cc398e6e154d

相关文章:

Anchor DETR

Anchor DETR(AAAI 2022) 改进: 提出了基于anchor的对象查询提出Attention变体-RCDA 在以前DETR中,目标的查询是一组可学习的embedding。然而,每个可学习的embedding都没有明确的意义 (因为是随机初始化的)&#xff…...

适合在家做的副业 整理5个,有电脑就行

今天,我们不说别的,整理5个适合个人在家单干的副业。需要电脑,如果你没电脑就不用看了,最后两个,我们也在做,你可以看到最后了解。这些副业,大家多去实践操作,前期,每月三…...

Android WebSocket

WS Android WebSocket 资源 名字资源AAR下载GitHub查看Gitee查看 Maven 1.build.grade allprojects {repositories {...maven { url https://jitpack.io }} }2./app/build.grade dependencies {implementation com.github.RelinRan:WS:2022.2023.9.23.1 }初始化 配置权…...

Android 按键流程

一、驱动层流程 主要流程涉及以下文件 kernel/msm-4.19/drivers/input/keyboard/gpio_keys.c kernel/msm-4.19/drivers/input/input.c kernel/msm-4.19/drivers/input/evdev.c kernel/msm-4.19/drivers/input/input-compat.c 有按键动作时,根据 dtsi 中配置 c…...

C语言——运算符

C用运算符表示算术运算。 C没有指数运算符,不过,C的标准数学库提供了一个pow()函数用于指数运算。 基本运算符 赋值运算符: 变量名变量值 从右到左 左值和变量名的区别: 变量名是一个标识符的名称,左值是一个可变…...

MySQL数据库入门到精通8--进阶篇( MySQL管理)

7. MySQL管理 7.1 系统数据库 Mysql数据库安装完成后,自带了一下四个数据库,具体作用如下: 7.2 常用工具 7.2.1 mysql 该mysql不是指mysql服务,而是指mysql的客户端工具。 语法 : mysql [options] [database] 选…...

硬件基本功--MOS管

一、上下拉电阻Rgs的作用 Rgs:经验值,一般取10K左右。 1. 上电时给MOS管的栅极一个确定的电平,防止上电时GPIO为高阻态时,MOS管的栅极电平不确定,从而受到干扰。 2. 断电时,如果MOS管是导通的状态&#xff…...

xdebug3开启profile和trace

【xdebug开启profiler】 https://xdebug.org/docs/profiler http://www.xdebug.org.cn/docs/profiler 1、php.ini添加下面配置然后重启php容器: xdebug.modeprofile ;这个目录保存profile和trace文件 xdebug.output_dir /var/tmp/xdebugPHP日志提示报错&#xff1a…...

EfficientFormer:高效低延迟的Vision Transformers

我们都知道Transformers相对于CNN的架构效率并不高,这导致在一些边缘设备进行推理时延迟会很高,所以这次介绍的论文EfficientFormer号称在准确率不降低的同时可以达到MobileNet的推理速度。 Transformers能否在获得高性能的同时,跑得和Mobile…...

【咕咕送书第二期】| 计算机网络对于考研的重要性?

🎬 鸽芷咕:个人主页 🔥 个人专栏:《粉丝福利》 《C语言进阶篇》 ⛺️生活的理想,就是为了理想的生活! 文章目录 📋 前言什么是计算机网络?01 为什么计算机专业要学计算机网络02 计算机网络对考研的重要性 …...

【力扣】58. 最后一个单词的长度

题目描述 给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。 示例 1: 输入:s “Hello World” 输出&#xff1a…...

Java编程的精髓:深入理解JVM和性能优化

文章目录 Java虚拟机(JVM)的核心概念1. 类加载器(Class Loader)2. 内存区域3. 垃圾回收(Garbage Collection)4. 类型转换和多态 JVM性能调优1. JVM参数调整2. 内存管理3. 多线程优化4. 使用性能分析工具5. …...

易云维®智慧工厂数字化管理平台助推工业制造企业数字化转型新动能

近年来,我国正在积极推进工业制造企业数字化转型,工业制造企业数字化转型迎来了密集的利好政策,近期,国家工信部又出台系列政策,实施工业制造企业数字化促进工程,推动工业制造企业更快更好地拥抱数字经济。…...

0.基本概念——数据结构学习

数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科。 数据:描述客观事物的符号,是计算机可以操作的对象,是能被计算机识别,并输出给计算机处理的符号集合。数据元素…...

Redis可视化工具-Another Redis Desktop Manager 安装

Another Redis DeskTop Manager 是 Redis 可视化管理工具,体积小,完全免费。最重要的是稳定,而且操作简单、方便。 目录 一、下载安装 下载 安装 二、简单使用 连接 新增key 三、springboot整合redis 前期准备 一、下载安装 下载 下载…...

ETLCloud工具让美团数据管理更简单

美团为第三方开发者和商家提供了一系列开放的API接口和工具,使其可以与美团的业务进行对接和集成,从而获得更多的业务机会和增长空间。 通过美团开放平台,第三方开发者和商家可以实现以下功能: 开放接口:美团开放平台…...

ctfshow 命令执行 (29-39)

学习参考的 https://www.cnblogs.com/NPFS/p/13279815.html 说的很全面 web29 命令执行,需要严格的过滤 源码 error_reporting(0); if(isset($_GET[c])){$c $_GET[c];if(!preg_match("/flag/i", $c)){eval($c);}}else{highlight_file(__FILE__); } …...

如何玩转CSDN AI工具集

前言 人工智能生成内容(AIGC)是当下最具有前景的技术领域之一。AI能够以惊人的速度和准确度生成各种类型的内容,完成文章翻译、代码生成、AI对话、插图创作等工作,带来了许多令人兴奋的机遇。 本文将介绍CSDN AI工具集的基本使用…...

软件测试/测试开发丨利用人工智能ChatGPT自动生成PPT

点此获取更多相关资料 简介 PPT 已经渗透到我们的日常工作中,无论是工作汇报、商务报告、学术演讲、培训材料都常常要求编写一个正式的 PPT,协助完成一次汇报或一次演讲。PPT相比于传统文本的就是有布局、图片、动画效果等,可以给到观众更好…...

Vue 正计时器组件

工作中遇到了一个时间正计时的功能。 另外涉及到有Vue父组件调用子组件中的data和method,作为记录。 下面贴代码~ HTML部分 <template><div class"timer"><div ref"startTimer">00:00:00</div></div> </template>JS…...

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

Java 语言特性(面试系列2)

一、SQL 基础 1. 复杂查询 &#xff08;1&#xff09;连接查询&#xff08;JOIN&#xff09; 内连接&#xff08;INNER JOIN&#xff09;&#xff1a;返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...

相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解

【关注我&#xff0c;后续持续新增专题博文&#xff0c;谢谢&#xff01;&#xff01;&#xff01;】 上一篇我们讲了&#xff1a; 这一篇我们开始讲&#xff1a; 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下&#xff1a; 一、场景操作步骤 操作步…...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)

0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述&#xff0c;后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作&#xff0c;其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...

基于Uniapp开发HarmonyOS 5.0旅游应用技术实践

一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架&#xff0c;支持"一次开发&#xff0c;多端部署"&#xff0c;可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务&#xff0c;为旅游应用带来&#xf…...

Neo4j 集群管理:原理、技术与最佳实践深度解析

Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

C++ 求圆面积的程序(Program to find area of a circle)

给定半径r&#xff0c;求圆的面积。圆的面积应精确到小数点后5位。 例子&#xff1a; 输入&#xff1a;r 5 输出&#xff1a;78.53982 解释&#xff1a;由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982&#xff0c;因为我们只保留小数点后 5 位数字。 输…...

Docker拉取MySQL后数据库连接失败的解决方案

在使用Docker部署MySQL时&#xff0c;拉取并启动容器后&#xff0c;有时可能会遇到数据库连接失败的问题。这种问题可能由多种原因导致&#xff0c;包括配置错误、网络设置问题、权限问题等。本文将分析可能的原因&#xff0c;并提供解决方案。 一、确认MySQL容器的运行状态 …...

二维FDTD算法仿真

二维FDTD算法仿真&#xff0c;并带完全匹配层&#xff0c;输入波形为高斯波、平面波 FDTD_二维/FDTD.zip , 6075 FDTD_二维/FDTD_31.m , 1029 FDTD_二维/FDTD_32.m , 2806 FDTD_二维/FDTD_33.m , 3782 FDTD_二维/FDTD_34.m , 4182 FDTD_二维/FDTD_35.m , 4793...

高分辨率图像合成归一化流扩展

大家读完觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 1 摘要 我们提出了STARFlow&#xff0c;一种基于归一化流的可扩展生成模型&#xff0c;它在高分辨率图像合成方面取得了强大的性能。STARFlow的主要构建块是Transformer自回归流&#xff08;TARFlow&am…...