NeurIPS 2022:基于语义聚合的对比式自监督学习方法
摘要:该论文将同一图像不同视角图像块内的语义一致的图像区域视为正样本对,语义不同的图像区域视为负样本对。
本文分享自华为云社区《[NeurIPS 2022]基于语义聚合的对比式自监督学习方法》,作者:Hint 。
1.研究背景
近些年来,利用大规模的强标注数据,深度神经网络在物体识别、物体检测和物体分割任务中取得巨大进展。然而,强标注数据耗时又耗力。为此,自监督学习方法提出从大量的无标注数据中学习出高效的特征编码器,然后利用该特征编码器在小规模数据上进行强监督训练,以此达到和在大规模强标注数据上训练的模型相当的性能。基于对比式自监督学习方法的出发点为:从不同视角来观察图像,将来自同一图像的不同视角的图像块视为正样本对,来自不同图像的图像块视为负样本对,通过拉近正样本对的特征的距离,拉远负样本对的特征的距离来监督特征编码器的学习。
然而,以上方法的基本假设(正样本对,即同一图像的不同视角的图像块,具有相同的语义)在以物体为中心的数据集(ImageNet)中成立,在以场景为中心的数据集(同一图像中包含多个物体,如COCO)中难以成立。为此,该论文将同一图像不同视角图像块内的语义一致的图像区域视为正样本对,语义不同的图像区域视为负样本对。
2.方法
本文方法和MoCo的框架类似,不同的是,本文将每类物体定义为一个可学习的类别向量S,根据类别向量S和图像特征图的每个位置计算相识度,聚合图像中同一类别的特征,然后将聚合后的类别特征构成正负样本对来进行对比训练学习。具体的网络结构如图1所示,其步骤包括:
- 同一图像经过数据增强得到不同的视角图像块,并分别输入图像编码器得到特征图;
- 将类别特征向量S和图像特征图计算每个位置的相似度,并根据相似度聚合得到图像中每个类别的特征;
- 得到两个视角下的聚合的类别特征后,拉近同类别特征间的距离,拉远不同类别特征之间的距离;
- 与此同时,拉近两个视角下,重叠图像区域的特征间的距离。
经过迭代训练后,图像特征编码器能够建模不同类别之间的语义特征,使得图像编码器更鲁棒。
图1:SlotCon的流程图
3.实验结果:
主要实验结果如下表所示,可以看出,无论在目标检测还是分割任务上,该方法高出当前Image-level和Pixel-level的方法许多,证明了基于Object/Group-level的方法的优越性。另外,和Object/Group-level的方法相比,能够高出SOTA方法1.0%左右,表明了本文中可学习语义聚合方法的优势。
图2展示了无监督分割的定量和定性结果,该方法在此任务上取得不错性能。其mIoU值高出当前无监督分割方法3.92%。
图2:无监督语义分割
图3展示了类别向量S和图像特征之间的相似度。可以看出,学习出的类别向量和图像中相应类别物体具有较高的相似度,说明图像特征编码器编码了较高的语义特征。
图3:类别特征向量S和图像特征间的相似度,红色区域为相似度较高区域
论文链接:[2205.15288] Self-Supervised Visual Representation Learning with Semantic Grouping (arxiv.org)
NeurIPS 2022:基于语义聚合的对比式自监督学习方法的更多相关文章
- 知识图谱顶会论文(ACL-2022) ACL-SimKGC:基于PLM的简单对比KGC
12.(2022.5.4)ACL-SimKGC:基于PLM的简单对比KGC 12.(2022.5.4)ACL-SimKGC:基于PLM的简单对比KGC 摘要 1.引言 2.相关工作 2.1 知识图补全 ...
- 基于语义感知SBST的API场景测试智能生成
摘要:面对庞大服务接口群,完备的接口测试覆盖和业务上下文场景测试看护才有可能保障产品服务的质量和可信.如果你想低成本实现产品和服务的测试高覆盖和高质量看护,这篇文章将为你提供你想要的. 本文分享自华为 ...
- 基于NodeJS的全栈式开发
前言 为了解决传统Web开发模式带来的各种问题,我们进行了许多尝试,但由于前/后端的物理鸿沟,尝试的方案都大同小异.痛定思痛,今天我们重新思考了“前后端”的定义,引入前端同学都熟悉的 NodeJS,试 ...
- (转)也谈基于NodeJS的全栈式开发(基于NodeJS的前后端分离)
原文链接:http://ued.taobao.org/blog/2014/04/full-stack-development-with-nodejs/ 随着不同终端(pad/mobile/pc)的兴起 ...
- 也谈基于NodeJS的全栈式开发(基于NodeJS的前后端分离)
前言 为了解决传统Web开发模式带来的各种问题,我们进行了许多尝试,但由于前/后端的物理鸿沟,尝试的方案都大同小异.痛定思痛,今天我们重新思考了“前后端”的定义,引入前端同学都熟悉的NodeJS,试图 ...
- 任务驱动,Winform VS WEB对比式学习.NET开发系列第一篇------身份证解析(不断更新的WEB版本及Winform版本源码)
一 本系列培训随笔适用人群 1. 软件开发初学者 2. 有志于转向Web开发的Winform程序员 3. 想了解桌面应用开发的Web程序员 二 高效学习编程的办法 1 任务驱动方式学习软件开发 大部分 ...
- 基于NodeJS的全栈式开发(基于NodeJS的前后端分离)
也谈基于NodeJS的全栈式开发(基于NodeJS的前后端分离) 前言 为了解决传统Web开发模式带来的各种问题,我们进行了许多尝试,但由于前/后端的物理鸿沟,尝试的方案都大同小异.痛定思痛,今天我们 ...
- 任务驱动,对比式学习.NET开发系列之开篇------开源2个小框架(一个Winform框架,一个Web框架)
一 源码位置 1. Winform框架 2. web框架 二 高效学习编程的办法 1 任务驱动方式学习软件开发 大部分人学习软件开发技术是通过看书,看视频,听老师上课的方式.这些方式有一个共同点即按知 ...
- 从基于 SQL 的 CURD 操作转移到基于语义 Web 的 CURD 操作
中文名称 CURD 含义 数据库技术中的缩写词 操作对象 一般的项目开发的各种参数 作用 用于处理数据的基本原子操作 它代表创建(Create).更新(Update).读取(Retrieve) ...
- 基于GPS数据建立隐式马尔可夫模型预测目的地
<Trip destination prediction based on multi-day GPS data>是一篇在2019年,由吉林交通大学团队发表在elsevier期刊上的一篇论 ...
随机推荐
- Centos7下的基本操作
本系统是在centos7下最小化安装的 文件操作相关 创建文件夹mkdir name //创建一个文件夹 创建文本touch test.txt //创建文本 删除文件夹rm -rf 文件名 //删除文 ...
- LeetCode - 数组遍历
1. 485. 最大连续 1 的个数 1.1 分析题意 首先:我们求的是连续的1的个数,所以我们不能也没必要对数组进行排序: 其次:只要求求出最大连续1的个数,并不要求具体的区间数目,所以我们只需要用 ...
- python-数据描述与分析(1)
数据描述与分析 在进行数据分析之前,我们需要做的事情是对数据有初步的了解,这个了解就涉及对行业的了解和对数据本身的敏感程度,通俗来说就是对数据的分布有大概的理解,此时我们需要工具进行数据的描述,观测数 ...
- (Java初学篇)IDEA项目新建流程和软件配置优化以及怎么彻底删除项目
相信很多小伙伴们在初学 Java 时都会出现这样的情况,就是在网上一顿搜索加捣鼓终于把 JDK 和IDEA 这两款软件安装配置好,但是发现面对这个陌生的软件此时却无从下手,那么接下来我就给大家简单地介 ...
- 8.uvloop
uvloop是asyncio的事件循环的替代方案,性能高于默认asyncio的事件循环的效率,相当于提升两倍,效率可以比肩Go pip3 install uvloop import asyncio ...
- Python基础部分:10、数据类型的内置方法和字符编码
目录 一.数据类型内置方法 1.字典dict内置方法 1.1.类型转换 2.字典必须要掌握的方法 2.1.取值方式 2.2.修改内部数据值 2.3.删除数据 2.4.统计字典中键值对个数 2.5.字典 ...
- webpack优化项目
在使用vue 构建项目的时候 ,会用到vue.js, vue-router.js, 等库,通常打包的话会将这些公用的代码打包的一个文件中,导致该文件过大影响加载的速度.那么可以考虑使用cdn 加速的方 ...
- java学习之springboot
0x00前言 呀呀呀时隔好久我又来做笔记了,上个月去大型保密活动了,这里在网上看了一些教程如果说不是去做java开发我就不做ssm的手动整合了采用springboot去一并开发. Spring Boo ...
- JDK源码分析实战系列-PriorityQueue
完全二叉树 一棵深度为k的有n个结点的二叉树,对树中的结点按从上至下.从左到右的顺序进行编号,如果编号为i(1≤i≤n)的结点与满二叉树中编号为i的结点在二叉树中的位置相同,则这棵二叉树称为完全二叉树 ...
- <一>关于运算符重载
C++的运算符重载:使对象的运算表现得和编译器内置类型一样 如下代码,如果T是整形,那很好理解,但是如果 T 是一个 Student 类, a + b ?怎么操作,两个学生类怎么相加? 这个就是我们要 ...