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

统一NLP和目标检测的DETR(一)——self attention、encoder、decoder

主流目标检测算法劣势

YOLO系列,它基于anchor来做,少不了要用MNS,导致速度相对较慢。
但今天介绍一款DETR,基于VIT的目标检测算法。
那么我们需要先深入过一遍VIT。

Vision transform

1、传统RNN网络的问题

单向:只考虑之前的输入
双向:过去和未来的信息都可以参考,但是比如x1默认影响最大的是X0和X2。但是对X1影响最大的也可能是过去未来某个细节,比如X100,X1000等等。

2、vit在做什么事情——Encoder

1、把①号不好的特征转变为②号好的特征。这种楞次分明的特征可以让模型学习的更好。
在这里插入图片描述2、传统词向量Word2vec的问题:同样的词在不同语境中保持不变。
3、transform会结合上下文考虑词语的信息,会一直更新词向量。
4、注意力机制attention,self-attention。it在不同语境中代表不同事物。
在这里插入图片描述
it是什么意思,需要结合上下文,而每个上下文词汇都会提供一个贡献值,0-1之间,表示他与it的联系。那么贡献值是怎么计算的呢?
在这里插入图片描述
词语向量的内机为0代表完全不关,内机为1表示“兄弟”。
那么可以把这个词向量X1分解为:Q、K、V。
Q:抛出一个问题
K:别人会问你,你答应别人的时候要给别人看的东西,
V:表示自身

当X1和自己计算 :Q1K1
当X1和X2计算时候:Q1
K2

那么我们如何产生QKV呢?并且是的他们是可以训练的。也就是QKV不是凭空产生的,而是训练得到的。它与X1,X2有联系。

V在做什么呢?
通过学习,更好的理解自己。V表示实际的特征信息。
在这里插入图片描述
词的顺序会不会导致特征发生变化?
比如“我打你”和“你打我”当中的“我”是否是同一个特征。那么我们知道“我”的特征是Q/K/V,那么这个QKV是不变的。三个字关系不变,因此特征。但你打我和我打你并不是一回事!!

因此产生了位置信息表达,位置编码,在向量的维度上加一个维度信息。
在这里插入图片描述
最后如何做到自注意力
在这里插入图片描述
多次堆叠self-attention,使得输出特征提取更为完善。
4,6,8,10层数,Chatgpt特别多层。

3、vit在做什么事情——Decoder

1、本质:多分类任务。
2、如何decoder:由decoder的特征出Q询问,encoder提取的特征提供应答向量K和本身特征V。
3、Q1和Qn之间测关系是无法见到的,因为decoder不可以以未来信息为依据,不然就是不符合实际情况了——mask机制
在这里插入图片描述
MLP输出层
在这里插入图片描述

VIT整体结构

:FFN其实就是一个MLP
在这里插入图片描述

词(input)->词向量(input embedding)->Positional Encoding(位置编码)。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Android14音频进阶之定制ramdisk文件系统init服务(八十三)
  • Java Web —— 扩展(Maven高级)
  • 【2024】Datawhale X 李宏毅苹果书 AI夏令营 Task3
  • 《亿级流量系统架构设计与实战》第十二章 评论服务
  • SqlServer: 安装或升级到SqlServer2022
  • 反序列化漏洞(一)
  • 【架构-28】轮询,最小连接、随机等负载均衡算法
  • 角谷猜想——考拉兹猜想
  • springblade-JWT认证缺陷漏洞CVE-2021-44910
  • IDEA取消自动选择光标所在行
  • 【unity知识】OnAnimatorMove+root motion,Root Motion+Blend Tree,解决Animator动画和位移不同步问题
  • jupyter 安装新内核后报找不到已安装的包
  • Java | Leetcode Java题解之第392题判断子序列
  • 【Python123题库】#通讯录(文件读取) #利用数据文件统计成绩
  • 《深度学习》OpenCV轮廓检测 轮廓近似、模板匹配 解析及实现
  • ES6指北【2】—— 箭头函数
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • ES6 ...操作符
  • in typeof instanceof ===这些运算符有什么作用
  • iOS编译提示和导航提示
  • MySQL主从复制读写分离及奇怪的问题
  • Rancher如何对接Ceph-RBD块存储
  • SpringBoot 实战 (三) | 配置文件详解
  • Transformer-XL: Unleashing the Potential of Attention Models
  • windows下mongoDB的环境配置
  • 二维平面内的碰撞检测【一】
  • 简单易用的leetcode开发测试工具(npm)
  • 将 Measurements 和 Units 应用到物理学
  • 开源地图数据可视化库——mapnik
  • 漂亮刷新控件-iOS
  • 让你的分享飞起来——极光推出社会化分享组件
  • 探索 JS 中的模块化
  • 我这样减少了26.5M Java内存!
  • C# - 为值类型重定义相等性
  • (1)常见O(n^2)排序算法解析
  • (cljs/run-at (JSVM. :browser) 搭建刚好可用的开发环境!)
  • (C语言)输入自定义个数的整数,打印出最大值和最小值
  • (附源码)计算机毕业设计大学生兼职系统
  • (学习日记)2024.04.04:UCOSIII第三十二节:计数信号量实验
  • (转)树状数组
  • (转载)在C#用WM_COPYDATA消息来实现两个进程之间传递数据
  • (轉貼) UML中文FAQ (OO) (UML)
  • .NET CF命令行调试器MDbg入门(二) 设备模拟器
  • .net core 使用js,.net core 使用javascript,在.net core项目中怎么使用javascript
  • .NetCore项目nginx发布
  • .net反编译的九款神器
  • .NET教程 - 字符串 编码 正则表达式(String Encoding Regular Express)
  • .set 数据导入matlab,设置变量导入选项 - MATLAB setvaropts - MathWorks 中国
  • .w文件怎么转成html文件,使用pandoc进行Word与Markdown文件转化
  • /etc/fstab和/etc/mtab的区别
  • @我的前任是个极品 微博分析
  • [ MSF使用实例 ] 利用永恒之蓝(MS17-010)漏洞导致windows靶机蓝屏并获取靶机权限
  • [ 隧道技术 ] cpolar 工具详解之将内网端口映射到公网
  • [ACL2022] Text Smoothing: 一种在文本分类任务上的数据增强方法
  • [AI 大模型] 百度 文心一言