SlotCon:基于语义分组的自监督视觉表征学习算法
-
SlotCon:基于语义分组的自监督视觉表征学习算法
论文标题:Self-Supervised Visual Representation Learning with Semantic Grouping
论文地址:https://arxiv.org/pdf/2205.15288.pdf
代码地址:None
摘要
- 引出主题:现有工作已经证明了在以场景为中心的数据中利用底层复杂结构的潜力;
- 尽管如此,他们通常依靠手工制作的对象性先验或专门的前置任务来构建学习框架,这可能会损害普遍性。
- 相反,论文提出了从数据驱动的语义slot进行对比学习,即SlotCon,用于联合语义分组和表示学习。语义分组是通过将像素分配给一组可学习的原型来执行的,这些原型可以通过集中特征来适应每个样本,并形成新的slot。基于学习到的数据相关slot,采用对比目标进行表示学习,增强了特征的可分辨性,反过来也有利于语义相关像素的分组。与之前的工作相比,通过同时优化语义分组和对比学习这两个耦合目标,绕过了手工先验的缺点,能够从以场景为中心的图像中学习对象/组级别的表示。
- 实验结果: 实验表明,该方法能有效地将复杂场景分解为语义组进行特征学习,并对后续任务(包括目标检测、实例分割和语义分割)有显著的帮助。
算法
基于像素级深层聚类的语义分组
给定一个未标记图像的数据集,目标是学习一组原型,将每个像素分类为一个有意义的组,使得同一组内的像素语义一致(具有相似的特征表示),而不同组之间的像素语义不一致。这个问题可以看作是无监督的语义分割,并通过像素级深度聚类解决。
直观地说,一个语义分组应该对不同的数据增强操作保持不变。因此,对于同一图像的不同增强,强制位于同一位置的像素具有相似的组别分配分数。除了一致的分组之外,每个组之间还应该彼此不同,以确保学习到的表示具有区分性。
具体而言,如图1所示,模型包含两个神经网络:学生网络由θ参数化,包括编码器fθf_θfθ、prejector gθg_θgθ和一组K个可学习原型Sθ=[sθ1,sθ2,…,sθK]∈RK×DS_θ=[s^1_θ,s^2_θ,…,s^K_θ]∈R^{K×D}Sθ=[sθ1,sθ2,…,sθK]∈RK×D;教师网络与学生具有相同的架构,但使用不同的权重ξ集,该权重更新为θ的指数移动平均值。
给定一个输入图像x,应用两个随机增强以生成两个增强视图v1和v2。每个增强视图vl∈v1,v2v^l∈{v^1, v^2}vl∈v1,v2 通过编码器f编码成一个隐藏特征映射hl∈RH×W×Dh^l∈ R^{H×W×D}hl∈RH×W×D,然后用多层感知器(MLP)g进行变换,得到zl=g(hl)∈RH×W×Dz^l=g(h^l)∈ R^{H×W×D}zl=g(hl)∈RH×W×D。然后,用相应的原型SθS_θSθ计算投影zθlz^l_θzθl的分配分数PθlP^l_θPθl,并强制它与教师网络生成的另一视图vl′v^{l′}vl′的分配分数Qξl′Q^{l′}_ξQξl′相匹配。
基于对齐赋值,应用交叉熵损失
以加强来自不同视图的空间对齐像素之间的赋值分数的一致性。对所有空间位置的交叉熵损失进行平均,以产生分组损失:
基于对比slots的组级表征学习
受slot注意力的启发,然后重用由等式1中的分配分数,在投影z上执行注意力池化,以生成组级特征向量(表述为slots),如图1所示。直观地说,当softmax归一化应用于slot维度时,每个单独的输入特征向量的注意系数总和为1。因此,投影z 的软分配A可以被视为注意系数,表示属于K个原型的概率。每个原型根据分配分数来汇总所有特征,从而来更新原型特征。
根据对象级SSL中的文献,然后基于 InfoNCE 损失函数,应用对比学习目标来区分在视图中具有相同语义的slot:
这一目标有助于最大限度地提高同一slot的不同视图之间的相似度,同时最大限度地降低与不同语义的slot的相似度。slot级对比损失也遵循类似于对称设计。
总体优化目标
联合优化语义分组目标(等式2)和组级对比学习目标(等式7),并用平衡因子λg控制权重
在每个训练步骤中,使用总体损失函数的梯度优化学生网络
其中η表示学习速率;
教师网络更新为学生网络的指数移动平均值:
λt表示动量值。训练后,只保留教师编码器fξ用于下游任务。
实验
预训练数据集:
预训练结果:
无监督语义分割结果:
消融实验
Probing the prototypes: