论文基于NLP的注意力机制提出了目标关系模块,通过与其它目标的比对增强当前目标的特征,而且还可以代替NMS进行端到端的重复结果去除,思想十分新颖,效果也不错



来源:晓飞的算法工程笔记 公众号

论文: Relation Networks for Object Detection

Introduction


  当前大多数目标检测算法仍专注于单独识别目标,没有尝试在训练时挖掘目标之间的关系,受限于当前简单的网络结构,无法对无规律的目标关系进行建模。参考自然语言处理中的注意力机制,论文提出了用于目标检测的自适应注意力机制 -- 目标关系模块(object relation module),学习目标间的关系来增强特征以及去除重复结果。

  检测目标有2D空间分布和不同的长宽比,比文本的场景要复杂些,所以论文拓展了NLP的注意力权重,分为两个权重:

  • 基于目标特征产生的权重,跟NLP权重类似。
  • 基于目标相对几何位置产生的权重,相对几何位置保证平移不变性。

  目标关系模块接收可变输入并行计算,是可微的in-place操作,可作为基础构建block嵌入到任意目标检测算法中,嵌入方式如图1所示,用于目标识别部分以及重复目标去除:

  • 目标识别部分(instance recognition):利用目标关系模块,联合所有的检测目标来进行特征增强,再进行后续的识别。
  • 重复目标去除(du-plicate remova):在识别完成后,常规的做法使用NMS进行重复目标的去除,而论文使用轻量级网关系网络进行该做法的替换。

Object Relation Module


  常规的注意力机制为ScaledDot-Product Attention,计算为:

  给定查询目标\(q\),计算与其它目标\(K\)的相似度,然后softmax归一化为权重,最后乘以各向量的值\(V\)得到加权后的特征,这3个值一般都是对目标特征进行embedding得到的。

  对于目标检测中的相似性计算,每个目标包含几何特征\(f_G\)和外观特征\(f_A\),给定\(N\)个目标\(\{(f^n_A, f^n_G)\}^N_{n=1}\),可计算每个目标相对于其它目标的关系特征(relation feature)\(f_R(n)\):

  关系特征实际为所有目标的外观特征的加权和,\(W_V\)为线性变化,相当于将外观特征embedding为公式1的值\(V\)。权值\(w^{mn}\)表明其它目标相对于当前目标的重要性,计算方法为:

  公式3实际上等同于公式1中的softmax,唯一不同的是除了外观权值\(w^{mn}_A\),还额外使用几何权值\(w^{mn}_G\)进行加权。

  外观权值\(w^{mn}_A\)的计算跟公式1的softmax括号内的计算一样,具体为:

  \(W_K\)和\(W_Q\)同样为线性变化,分别将对比目标和当前目标的外观特征embedding成公式1的\(K\)和\(Q\),embedding后的特征维度为\(d_k\)。

  几何权值\(w^{mn}_G\)的计算为:

  几何特征一般就是简单的四维bbox,所以公式5在计算几何权值包含两个步骤:

  • 将当前目标和对比目标的几何特征通过\(\varepsilon_G\)embedding成高维特征,为了保证平移和尺寸不变性,几何特征转为相对值\((log(\frac{|x_m-x_n|}{w_m}), log(\frac{|y_m-y_n|}{h_m}), log(\frac{w_n}{w_m}), log(\frac{h_n}{h_m}) )\),embedding方法跟Attention Is All You Need里的位置编码一样,使用正弦函数和余弦函数。
  • 使用\(W_G\)将高维几何特征转换为标量权值,小于0时设为0。

  论文在几何特征的使用上也尝试了其它方法:1) none,直接将\(w^{mn}_G\)设为1.0计算权值,即不使用。 2) unary,将高维几何特征直接与外观特征融合,然后跟none一样计算权值。实验部分的表1有相关的结果对比,论文选择的公式5加权方法比较有效。

  在实现时,类似于multi-head attention,一个目标关系模块(object relation module)包含\(N_r\)个关系特征,每个特征的维度为输入特征\(f^m_A\)的\(\frac{1}{N_r}\),图2可能会有一点问题,几何特征写了两个,但是外观特征只写了一个,大家根据公式理解就好,最后通过相加对输入目标的外观特征进行增强:

  目标关系模块的计算逻辑如算法1所示,其空间复杂度和时间复杂度为:

  一般而言,目标关系模块的整体计算量不会很大,而且输出特征的维度和输入特征的维度一致,可作为基础构建block嵌入到任何网络中。

Relation Networks For Object Detection


  论文主要讨论将目标关系模块嵌入到region-based目标检测网络中,region-based目标检测网络一般包含四个步骤:1) 通过主干网络生成整图特征 2) 生成候选框的区域特征 3) 进行各实例识别和调整 4) 去除重复的检测结果,目标关系模块的嵌入主要在步骤3和步骤4。

Relation for Instance Recognition

  目标分类和目标回归一般使用两个1024维全连接层对目标的RoI池化特征进行处理:

  目标关系模块可直接增强所有目标的1024维,不改变特征的维度,不仅可以在任意位置插入,还可以多次堆叠:

  \(r_1\)和\(r_2\)为目标关系模块重复的次数,添加目标关系模块能够目标特征,提高识别的准确率,公式10的可视化如图a所示。

Relation for Duplicate Removal

  去除重复目标这个任务本身就需要穷尽目标间的关系,比如启发式的NMS,高分目标可抹去其附近的低分目标。尽管NMS十分简单,但其去重的方式并不总是最优的,为此,论文采用目标关系模块去除重复目标。

  如图b所示,输入目标的分数、1024维外观特征以及几何特征,重复目标去除包含以下几个步骤:

  • 对目标分数进行名次的转换,采用几何特征的embedding方式将分数转换成128维特征,将外观特征降维为128维特征,将两个特征相加。
  • 跟前面描述的目标关系模块一样与其它目标计算,输出关系特征。
  • 通过线性变化\(W_s\)和sigmoid函数输出概率\(s_1\in [0, 1]\),对原分数进行加权。
  • 分数高于阈值的即为最终的结果。

  在训练时直接对最终的分数使用交叉熵损失迭代,虽然大部分的目标都是重复的,但由于其最终分数都很小,所以不会对网络造成很大的偏差。而在推理时,先按分类的分数过滤一轮,这样能减轻计算量,论文实测大约增加2ms,相对的,NMS和SoftNMS增加5ms左右。

Experiments


  各位置设置的对比实验。

  重复目标去重效果对比。

  在各网络中的效果对比,分别对比2fc+SoftNMS、2fc+RM+SoftNMS和2fc+RM+e2e的效果。

Conclusion


  论文基于NLP的注意力机制提出了目标关系模块,通过与其它目标的比对增强当前目标的特征,而且还可以代替NMS进行端到端的重复结果去除,思想十分新颖,效果也不错。





如果本文对你有帮助,麻烦点个赞或在看呗~

更多内容请关注 微信公众号【晓飞的算法工程笔记】

RelationNet:学习目标间关系来增强特征以及去除NMS | CVPR 2018的更多相关文章

  1. 论文学习-深度学习目标检测2014至201901综述-Deep Learning for Generic Object Detection A Survey

    目录 写在前面 目标检测任务与挑战 目标检测方法汇总 基础子问题 基于DCNN的特征表示 主干网络(network backbone) Methods For Improving Object Rep ...

  2. 基于候选区域的深度学习目标检测算法R-CNN,Fast R-CNN,Faster R-CNN

    参考文献 [1]Rich feature hierarchies for accurate object detection and semantic segmentation [2]Fast R-C ...

  3. zz深度学习目标检测2014至201901综述

    论文学习-深度学习目标检测2014至201901综述-Deep Learning for Generic Object Detection A Survey  发表于 2019-02-14 |  更新 ...

  4. NLP之基于BERT的预测掩码标记和句间关系判断

    BERT @ 目录 BERT 程序步骤 程序步骤 设置基本变量值,数据预处理 构建输入样本 在样本集中随机选取a和b两个句子 把ab两个句子合并为1个模型输入句,在句首加入分类符CLS,在ab中间和句 ...

  5. 20155206赵飞技能获取经验,C语言学习感想与对JAVA的学习目标

    自己较强的技能获取经验. 1:实话实说我自己是没有哪个技能可以超过90%的人的,只有自认为做的还可以的一些事情,例如打篮球,office软件的应用,一百米跑.至于其他方面就是很平庸了. 2:经验主要有 ...

  6. 深入理解 Laravel Eloquent(三)——模型间关系(关联)

    Eloquent是什么 Eloquent 是一个 ORM,全称为 Object Relational Mapping,翻译为 "对象关系映射"(如果只把它当成 Database A ...

  7. iOS设计模式 - (2)UML类间关系精解

    在正式讲设计模式之前, 介绍一下UML类图之间的关系还是非常有必要的, 由于一些教程, 书籍, 包含我之后的文章, 都会大量使用类图, 去描写叙述各个类之间的关系.这是一种非常直观, 简约的方式. 当 ...

  8. c语言学习目标

    运行c语言环境codeblocks. codeblocks的安装: 安装地址:http://www.codeblocks.org/downloads/26 codeblocks-16.01mingw- ...

  9. Python学习day24-面向对象的三大特征之继承

    figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...

  10. UML 有关类图知识及类间关系

    原文链接:https://blog.csdn.net/mj_ww/article/details/53020346 1. 类的含义 类图(Class diagram)显示了系统的静态结构,而系统的静态 ...

随机推荐

  1. centos 安装nacos 并以后台服务形式启动

    一.下载解压nacos tar -xvf nacos-server-1.2.0.tar.gz 二.持久化配置(mysql) 修改nacos/conf/application.properties文件, ...

  2. Java操作EasyExcel实现导入导出入门

    介绍 EasyExcel是阿里巴巴开源的一个excel处理框架,以使用简单.节省内存著称.EasyExcel能大大减少占用内存的主要原因是在解析Excel时没有将文件数据一次性全部加载到内存中,而是从 ...

  3. 【Android逆向】破解看雪test3.apk方案一

    1. test3.apk 安装到手机 2. 发现其实际逻辑和之前的test2.apk基本一致,逆向so查看到加入了一些检查逻辑 代码: jstring __fastcall fuck(JNIEnv * ...

  4. docker部署fastdfs并在Django中集成

    拉取Fastdfs镜像 docker pull delron/fastdfs 构建Tracker容器 是在Linux环境下,使用docker镜像构建tracker容器,用于启动跟踪服务器,起到调度的作 ...

  5. 【LeetCode哈希表#3】快乐数(set)

    快乐数 力扣题目链接(opens new window) 编写一个算法来判断一个数 n 是不是快乐数. 「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程 ...

  6. c# 4.8 实现Windows 定时任务计划(Task Scheduler)

    分享一个我自己写的 Windows 定时任务计划(Task Scheduler) 动态创建代码,没做太多封装,留个实现笔记 首先封装一个简单配置项的类 1 public class TaskSched ...

  7. Hello-FPGA CoaXPress 2.0 FPGA DEVICE IP Core Demo

    Hello-FPGA CoaXPress 2.0 Device FPGA IP Core Demo 1     说明 本手册针对Helllo-FPGA的CoaXPress 2.0 DEVICE FPG ...

  8. 用NavigationManager实现订单的列表和新增页面之间的导航

    1.在订单列表页面放置"新增"按钮 2.注入NavigationManager,按钮被点击后导航到新增订单的路径 3.测试一下,能工作了. 4.订单新增后,返回订单列表页面 5.测 ...

  9. 在 C++ 项目中,通过源码使用 PaddlePaddle 实现 OCR 功能

    My-PaddleOCR 介绍 如何在 C++ 项目中,通过源码使用 PaddlePaddle 实现 OCR 功能. 本项目的所有源码:gitee: paddleocr 目前,官方提供使用 Paddl ...

  10. 来也科技收购Mindsay背后:新旧势力交锋智能自动化备受关注

    来也科技收购Mindsay背后:新旧势力交锋智能自动化备受关注 来也科技收购Mindsay背后:历程一波三折,意义非同寻常 来也科技收购Mindsay,国产RPA正式进军国际市场 收购Mindsay来 ...