DETR 个人理解

这篇具有很好参考价值的文章主要介绍了DETR 个人理解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

DETR 个人理解

目录

DETR 个人理解

概念说明

transformer网络结构

整体流程

损失计算

整体理解

结果说明

论文

代码

参考链接


个人拙见,仅供参考,欢迎指正交流

这篇论文还是挺重要的,因为是transforms用于目标检测的第一篇论文,之后很多的论文都是再此基础上写的,大体的流程是相近的。

DETR 个人理解,深度学习,论文精读,深度学习,人工智能,目标检测

概念说明

DETR的输入是单张图像,输出是此图像的检测结果。

positional encoding 是对像素在图像中位置进行的一个编码,方法有很多,也可以参考论文Attention Is All You Need

object queries 这个东西有些类似有anchor目标检测里的anchor,就是蒙的框,论文中对应的是初始的N个输出的y

FFN 就是前馈神经网络,个人理解就是全连接层或者MLP

transformer网络结构

transformer详细的网络结构见下图,其实是有N个Encoder和M个decoder,并且每一个decoder都可以进行输出,然后去算损失

至于为什么每一个中间的decoder都可以进行输出,去算损失??

个人理解这个位置就像是啥呢,就像是你想让你的儿子考清华,最后一个decoder对应高考。你儿子要想考上清华,最稳妥的一个形式就是,你儿子从小到大每一次考试都能考第一,这样他最后高考时,考上清华的可能性才是最高。同理,你想要你最后一个decoder输出的结果最好,最稳妥的方式就是之前每一个decoder输出的结果都很好。

DETR 个人理解,深度学习,论文精读,深度学习,人工智能,目标检测

整体流程

单张图像进来之后首先经过一个backbone,提取图像特征,然后和positional encoding提取到的特征相结合,这样得到的特征图既有他在图像中的位置信息,又有他附近的一片像素信息。然后将这个特征图去过transformer的encoder,得到一个新的特征图,这个位置得到的东西其实是Multi-Head Attention里需要的K和V。object queries进来之后首先经过一个Multi-Head Self-Attention,就是你蒙的框不一定准,你自己先反思反思,学习学习,不要跟图像特征参乎,自己学学怎么用图像特征。object queries自己卷积完之后作为Multi-Head Attention里需要的Q,进行输出。最后在Multi-Head Attention里图像生成的特征K、V和你想让图像生成的特征结果Q相结合了,就能生成预测结果了。

损失计算

有预测结果了,然后我们还有真实标签,这个时候就可以计算损失了。

object queries这个位置我们蒙了N个框,最后Transformer decoder就会输出N个预测结果。N是一个远大于图像中可能具有最多目标数的一个数,论文中取了100。我们预测了N个框,但是我图像中的目标可能没有这么多,那怎么办呢,我向图像中补背景,让框的类别是没有意义的背景,这样你预测框的数量就和真实框一样多了,也解决了有的图像目标多,有的图像目标少的问题,你目标再多也不可能比N多。然后我让预测的N个框和真实的N个框去做1对1的匹配,就像是双射,相互对应并且唯一。匹配的算法是多目标最优匹配的匈牙利算法,最后使用相互匹配上的框去计算损失。

整体理解

使用transformer去学习,就像是啥呢,就像是你要上大学。开始你也不知道自己的天赋咋样,自己能学成啥样,然后就默默给自己定一个目标,比如说是辽宁大学,辽宁大学就对应transformer里的object queries,就是一个初始的目标。

你有了初始目标之后,没开始上小学之前,你啥也不懂,也不知道辽宁大学咋样,你就问你爸说:我想给自己定一个目标大学,你觉得辽宁大学咋样。结果你爸说,你爸我是东北大学毕业的,你敢定辽宁大学我就打死你。然后你就学到了一些关于大学的信息,觉得自己也应该有这个天赋,把初始的大学目标定在了东北大学,这个对初始目标修改的一个过程就对应decoder里object queries进来之后首先经过的Multi-Head Self-Attention。

然后你就开始学习了,这个学习的过程就对应transformer里的encoder(其实还有backbone,忽略这个位置吧)

一个学期上完,你学到了很多知识,你也不知道自己学的对不对,不知道自己定的目标合不合理,就需要进行一次期末考试,这个考试呢就对应decoder里的Multi-Head Attention和之后的过程。

考完试呢你只有一个考试成绩,但是这个成绩并不能完全代表你学的咋样,比如说试卷特别难,大家都考60,结果你考了80,或者说试卷特别简单,大家都考90,结果你考了80,你能不能上东北大学,严格意义上说并不取决于你考了多少分,而取决于你在全省的排名,这个排名呢就对应transformer里的损失,这个排名呢就会定义你这一年学的咋样。

开始你也不太会学习,你的排名就没有很好,但是你经过排名呢,就对自己过去的一些学习方法和自己定的这个目标就有数,然后呢你就不断的优化自己的学习方法,让自己学的更好,这个位置就是优化encoder的过程。

你通过优化自己的学习方法使自己的排名提高了,你发现你开始定的大学不合理,你完全可以定一个更好的大学,定一个更好的目标,这个位置就对应decoder中优化object queries的过程。

你通过不断地优化自己的学习方法,和自己想要考取的目标大学,不断地进步,最终你把目标定在了清华大学,最后高考就对应transformer里的最后一个decoder,至于你能不能考上,就取决于你最后一个decoder出来的模型收不收敛了。

结果说明

经过训练之后,最终的object queries结果如下图

DETR 个人理解,深度学习,论文精读,深度学习,人工智能,目标检测

这个位置怎么理解呢,就是anchors蒙的是一个框,object queries蒙的是一张图像的所有框,框数不限,蒙了100种可能

论文

https://arxiv.org/abs/2005.12872

代码

https://github.com/facebookresearch/detr

参考链接

Attention Is All You Need

https://arxiv.org/abs/1706.03762

Attention Is All You Need 英文讲解

The Illustrated Transformer – Jay Alammar – Visualizing machine learning one concept at a time.

Attention Is All You Need 中文讲解

详解Transformer (Attention Is All You Need) - 知乎

Attention

史上最小白之Attention详解_target attention-CSDN博客

Self-Attention

动图轻松理解Self-Attention(自注意力机制) - 知乎

transformer

史上最小白之Transformer详解_transformer最小白-CSDN博客

B站论文讲解视频

二、transformer核心项目-DeformableDetr算法解读_哔哩哔哩_bilibili文章来源地址https://www.toymoban.com/news/detail-807239.html

到了这里,关于DETR 个人理解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • DEFORMABLE DETR: DEFORMABLE TRANSFORMERS FOR END-TO-END OBJECT DETECTION 论文精读笔记

    DEFORMABLE DETR: DEFORMABLE TRANSFORMERS FOR END-TO-END OBJECT DETECTION 参考:AI-杂货铺-Transformer跨界CV又一佳作!Deformable DETR:超强的小目标检测算法! 摘要 摘要部分,作者主要说明了如下几点: 为了解决DETR中使用Transformer架构在处理图像特征图时的局限性而导致的收敛速度慢,特征空间

    2024年02月10日
    浏览(39)
  • 【论文阅读】视频理解系列论文精读

    视频理解论文串讲(上)【论文精读】 我们研究了多种扩展CNN在时域上的连接性的方法,以利用局部的时空信息,并建议采用多分辨率、凹陷的架构作为加速训练的一种有希望的方式。 在图像领域积极成果的鼓舞下,我们研究了CNN在大规模视频分类中的表现,在这种情况下

    2023年04月09日
    浏览(38)
  • 机器学习和深度学习-- 李宏毅(笔记与个人理解)Day10

    这节课主要介绍机器学习和深度学习任务中常见的问题分类以及相应的解决之道 这张图总体的概述了一个任务中的大小坎坷,不认得英文? 去Google吧~ training Loss 不够的case Loss on Testing data over fitting 为什么over fitting 留到下下周哦~~ 期待 solve CNN卷积神经网络 Bias-Conplexiy Trade

    2024年04月17日
    浏览(43)
  • 机器学习和深度学习--李宏毅(笔记与个人理解)Day9

    中间打了一天的gta5,图书馆闭馆正好+npy 不舒服那天+天气不好,哈哈哈哈哈总之各种理由吧,导致昨天没弄起来,今天补更! 这里重点注意一下, 这个 output值是概率哈,也就是说式子整体表示的含义是 x 属于c1的概率是多大 这个老师真的是讲到我的心坎子里区了,这个lo

    2024年04月17日
    浏览(47)
  • BERT 论文精读与理解

    1.论文题目 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding 2.论文摘要 本文引入了一种名为 BERT 的新语言表示模型,它代表 Transformers 的双向编码器表示。与最近的语言表示模型(Peters et al., 2018a;Radford et al., 2018)不同,BERT 旨在通过联合调节所有层中的左右上

    2024年02月13日
    浏览(42)
  • (六)人工智能应用--深度学习原理与实战--理解张量与运算图

    Tensorflow名称中的Tensor即张量,不仅仅是Tensorflow,几乎所有的深度学习平台都以张量为基本的数据结构。简单来说,张量就是多维数组,本质上是一种数据容器,它可以有任意维度,比如矩阵就是二维张量(二维数组)。 深度学习中使用张量来表示数据,计算图是由张量和张量

    2024年02月15日
    浏览(51)
  • 人工智能研究的未来:20 年机器学习和深度学习的论文创意!

    “机器学习的美妙之处在于,它可以应用于你想要解决的任何问题,只要你能为计算机提供足够的例子。”         该文章列出了 20 年机器学习和深度学习本科课程的 2023 个潜在论文想法。每个论文的想法都包括一个 介绍 ,简要概述了主题和 研究目标 。所提供的想法与

    2024年02月09日
    浏览(54)
  • 51-15 视频理解串讲—TimeSformer论文精读

    今天读的论文题目是Is Space-Time Attention All You Need for Video Understanding? Facebook AI提出了一种称为TimeSformer视频理解的新架构,这个架构完全基于transformer,不使用卷积层。它通过分别对视频的时间和空间维度应用自注意力机制,有效地捕捉动作的时空特征。自transformer提出以来,在

    2024年01月24日
    浏览(42)
  • 51-17 视频理解串讲— MViT,Multiscale Vision Transformer 论文精读

    继TimeSformer模型之后,咱们再介绍两篇来自Facebook AI的论文,即Multiscale Vision Transformers以及改进版MViTv2: Improved Multiscale Vision Transformers for Classification and Detection。 本文由深圳季连科技有限公司AIgraphX自动驾驶大模型团队编辑。如有错误,欢迎在评论区指正。由于本司大模型组最

    2024年02月19日
    浏览(55)
  • 基础论文学习(2)——DETR

    目标检测 DETR:End-to-End Detection with Transformer detr是facebook提出的引入transformer到目标检测领域的算法,效果很好,做法也很简单,相较于RCNN和YOLO系列算法, 避免了Proposal/Anchor+NMS 的复杂流程。 对于目标检测任务,其要求输出给定图片中所有前景物体的类别和bbox坐标,该任务实

    2024年02月12日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包