CVPR 2022 | CNN自监督预训练新SOTA!上交等联合提出HCSC:具有层级结构的图像表征自学习新框架...

来源丨机器之心

编辑丨极市平台

层级结构无处不在,自然界中存在「界 - 门 - 纲 - 类 - 科 - 属 - 种」这样的层级关系, 大规模自然图像数据集中也天然存在。例如,ImageNet 数据集的类别标签本身就是基于 WordNet 层级形成的, 我们总是可以「刨根问底」地找到某个类别的「父类」。举例而言,拉布拉多犬是一种犬类,而犬类又是一种哺乳动物。这就形成了拉布拉多犬 -> 犬类 -> 哺乳动物的层级关系。

8ab95e55d9399c38a6e465b1e28ae7f3.png

近年来, 计算机视觉领域涌现出一大批有效的自监督预训练模型,如 NPID、SimCLR、MoCo 等,它们能够从大规模数据集中通过自监督的方式学习潜在的图像语义表征,从而提升预训练模型在各项下游任务(如物体分类、目标检测、语义分割)的迁移性能。

这些自监督预训练框架通常基于对比学习实现. 对比学习通过定义正负样本对,并在表征空间中最大化正样本对之间的相似度而最小化负样本对之间的相似度, 从而达到「同类相吸、异类互斥」的目的。在不可获得分类标签的情况下,NPID、MoCo、SimCLR 通过实例判别 (Instance Discrimination) 任务,将同一图像经过不同随机数据增强后作为正样本对,而将不同图像作为负样本对,从而学习对数据增强具有不变性的图像表征。

然而, 现有的自监督对比学习框架存在两个问题:

  • 缺乏对上述层级语义结构的建模;

  • 负样本对的定义可能存在噪声:随机选择的两张图像可能属于相同类别。

针对这两个问题,来自上海交通大学、Mila 魁北克人工智能研究所和字节跳动的研究者提出了一种基于层级语义结构的选择性对比学习框架(Hiearchical Contrastive Selective Coding,HCSC)。

18b4e5b8a600c4e3944fdfe071e11775.png

扫描二维码关注公众号,回复: 13722510 查看本文章
  • 论文地址: https://arxiv.org/abs/2202.00455

  • 项目地址: https://github.com/gyfastas/HCSC

这一框架通过将图像表征进行层级聚类,构造具有层级结构的原型向量 (hierarhcical prototypes),并通过这些原型向量选择更加符合语义结构的负样本进行对比学习, 由此将层级化的语义信息融入到图像表征中。该自监督学习框架在多个下游任务中达到卷积神经网络自监督预训练方法的 SOTA 性能。

方法

2c61123dd3244f9e31a1f1f9e398c978.png

该工作的方法论框架包含两个重要的模块: 一个是层级语义结构的构建与维护, 另一个是基于层级语义结构的选择性对比学习。

层级语义表征

研究者注意到,层级语义结构天然可以通过树状结构来描述:如果将树中的某个节点认为是一个语义类别, 则父节点可以认为是它的上层类别,例如「拉布拉多犬」的父节点可以认为是「犬类」,而其兄弟节点可以包括「贵宾犬」、「萨摩犬」等。这样的树状结构显然具备一个性质:同一父节点的两个子节点必然也共享更上层的祖先节点,例如「贵宾犬」与「萨摩犬」同为犬类, 它们也同为哺乳动物。

那么,如何在图像的表征空间中构建这样的树状结构呢?在缺少类别标签的无监督场景中,可以通过对图像特征聚类的方式获得图像的潜在语义类别。聚类中心则可以被认为是代表着某种语义类别的「原型向量」,基于自底向上的层级聚类思想, 在这些聚类中心的基础上进一步进行聚类则可以得到更高层级的潜在语义类别。在这一过程中, 语义类别的树状结构自然地得以维护:在某层聚类中为相同类别的图像,在上层中仍然保持为相同类别。

在实现过程中, 该研究采用了简单有效的自底向上层级 K-means 算法, 具体算法流程如下:

f6101709a712825f556f23ed52a78a93.png

在该训练框架中,每进行一轮学习后,由于网络参数的更新,图像的表征也随之更新。

因此,在每个训练epoch之前, 均通过当前的网络参数提取整个数据集的图像表征,对提取到的图像表征应用如上所述的层级 K-means 算法得到一系列具有树状结构的层级原型, 这些层级原型将在接下来的训练过程中用于指导对比学习的样本选择,从而将层级化的语义信息融入到图像表征中。

选择性对比学习

在得到了一系列具备层级结构、潜在地表征某一类别的原型向量后, 可以基于这些原型向量选择更加符合语义结构的对比学习样本. 

  • 选择性实例对比学习

首先,我们简要回顾一下自监督对比学习的基本原理。对比学习的目的可以概括为实现「同类相吸」、「异类互斥」。在不考虑原型向量的情况下, 基于实例的对比学习通过定义正负样本对, 并在表征空间中最大化正样本对之间的相似度而最小化负样本对之间的相似度来实现上述目的。

此前的方法 (如 NPID、MoCo 等) 将同一图像经过不同随机数据增强后的版本作为正样本对,而将不同图像作为负样本对。这样的方式存在一个关键的问题:所选择的负样本对可能属于相同类别,从而使得相同类别的样本在表征空间中互相远离,这将在某种程度上破坏模型所学习到的表征有效性。

出现这一问题的根本原因在于没有额外的类别信息指导对负样本的选择。如果我们知道类别信息,则可以将同类负样本剔除 (这些同类负样本也可以称为假负样本),从而避免带来梯度噪声。在自监督的情况下,虽然没有准确的类别信息,但我们通过此前的层级聚类过程得到了一系列聚类标签。在这些聚类标签的帮助下, 可以近似地达到剔除假负样本的目的:如果一对样本属于相同的聚类中心, 则从负样本对中剔除即可。

更进一步地,考虑到聚类标签的不确定性,该研究通过接受 - 拒绝采样的方式对负样本进行选择。对于一个图像表征z,层级聚类的结果可以导出该图像在第l层所属的聚类中心1d88024ed25caaf8c00bb0eeab032804.png(其中s(·)是相似度函数,在该研究中通过 cosine 相似度实现);这一聚类中心代表了该图像在这一层中所属的类别。接下来,对于候选负样本6c43fca8e0bfc7f3986efbef638a2319.png,它被选择的作为负样本的概率为:

531eea7ba3efcc53df7b3a6c42005e34.png

直观而言, 一个候选负样本被选择的概率可以近似被描述为「与目标样本属于不同聚类中心的概率」经过选择过程后, 更高质量的负样本集 将被用于计算 InfoNCE 损失. 在多个层级聚类中心指导下, 最终的选择性实例对比学习 (Instance-wise Contrastive Selective Coding, ICSC) 的损失函数为:

87c5e5a6619068bbffbb3f6bb0c854c9.png

  • 选择性原型对比学习

除了用于指导实例间的对比学习,层级原型还可用于辅助原型对比学习。原型对比学习是图像表征与聚类中心之间的交互,可以简单总结为在表征空间中最大化图像表征与其所属的聚类中心的相似度。

同样地,如果通过随机采样的方式形成负原型集合 N_c,那么其中也可能存在与聚类中心 c 语义相近的原型 (例如 c 的兄弟节点):如果某张图像是萨摩犬,选择相似的种类例如拉布拉多犬作为负例进行对比学习并不是一个好选项。而层级结构的存在为选择合理的对比原型提供了一个解决方案:与此前选择对比样本类似,我们只需要计算某一候选原型与目标原型的父节点的相似度,即可选择与目标原型大概率不是近似类别的原型,从而避免可能带来噪声的对比原型。具体而言, 某个聚类中心c_j被选择作为对比原型的概率为:

d13aced3ae42f4661384ca6cb9edfb36.png

类似地, 这一概率可以被描述为「某一原型与目标原型属于不同父类的概率」。基于经过选择后的负原型集合4c42fc5d0a57ba645811debd99827575.png,选择性原型对比学习损失被定义为:

7235cd86a8514a19b0cb8806d1eea55f.png

最后, 我们将两种改进后的对比学习损失进行组合得到最终的优化目标:

5334567fa22d1b37c197cc1e85feb8df.png

实验结果

主要结果

研究者们在 ImageNet-1k 线性分类、KNN、半监督学习以及跨数据集的迁移学习 (包括在 VOC、COCO 数据集的目标检测任务以及在 VOC、Places205 数据集的分类任务) 的实验设置下与基于 CNN 架构的 SOTA 方法进行了对比,HCSC 在多个任务中均取得了出色的效果。

不同训练配置下模型性能对比:

9327abdb20080d3305921a2324eac799.png

更多下游任务的性能对比:

954e1df9f9cb6482d743f2cac7219190.png

5013238e1aa491c590071cd01c112568.png

可视化

除了量化实验,该论文还给出了直观的可视化结果。研究者们展示了 HCSC 在 ImageNet 上的聚类结果,在下图中可以明显地看出存在层级结构:叼着鱼的灰熊 => 在水上的熊或者狗 => 在水上的动物。

3ab6ebbd090c5b8d8b00d072c4b3ccab.png

另外一个例子, 研究者们展示了一个经典的语义树状结构:

b861c21fc83c049ee84ed41d1fe5d521.png

除了层级结构可视化,研究者们也展示了 HCSC 训练过程中删除的「假负样本」:例如对其中一个鸟类样本,删除的对比负样本也大部分为鸟类。

1045a3958aa9cd087f075fb3076ae7f8.png

消融实验

研究者们还做了充分的消融实验来验证了所提出的层级原型和样本选择模块的有效性, 以及对每层原型数量选择的对比实验。可见:

1. 层级原型、实例样本选择、原型样本选择模块的有效性都得到了验证,可以分别在 baseline (67.6)的基础上有效涨点 (67.6 => 68.9 => 69.2),其中效果最明显的是实例样本选择模块。

2. 在原型数量相同的情况下,带有层级结构的原型 (3000-2000-1000) 比单层原型 (6000) 取得更优的性能。这也印证了层级原型的有效性。另一方面,模型对进一步增加层级数以及各层原型的数量不敏感。

f60dfc869938a04ae89cf0a5a1c3f6f3.png

a996c38254da14a8a0498edccb3e7659.png

一作介绍

d1578a3b5bf4d8390c8fa04fa4b61d1c.png

  • 郭远帆: 上海交通大学电子系二年级硕士生, 导师为徐奕副研究员. 他本科就读于上海交通大学, 本科期间主要研究方向为计算机视觉、医学影像处理, 在MICCAI、ISBI、Neurocomputing等会议与期刊中以第一作者/共同第一作者身份发表论文三篇. 硕士期间研究方向为计算机视觉、自监督学习, 在字节跳动实习期间完成该研究工作。

79d3bb1c3a064855255f33d0ba5f31ea.png

  • 徐明皓,Mila 魁北克人工智能研究所一年级博士生,导师是唐建教授,主要研究方向是图表征学习、图像表征学习和药物发现。他本科和硕士就读于上海交通大学,在上海交大计算机视觉实验室进行科研工作,导师是倪冰冰教授,期间的主要研究方向为迁移学习和视觉计算。他在 NeurIPS、ICML、CVPR、ICCV、ECCV 等会议上以第一作者 / 共同第一作者身份发表论文七篇。

本文仅做学术分享,如有侵权,请联系删文。

重磅!计算机视觉工坊-学习交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有ORB-SLAM系列源码学习、3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、深度估计、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。

cb43bacb75fcee4a6deb172e1fbfcd75.png

▲长按加微信群或投稿

113d0ca562009489df302f966d57c36d.png

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列三维点云系列结构光系列手眼标定相机标定、激光/视觉SLAM、自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

5e34f9f44aafbe7dffe4e2802dd01827.png

 圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~

猜你喜欢

转载自blog.csdn.net/qq_29462849/article/details/123492631
今日推荐