上交&字节新作HIRL| 基于分层图像特征表示的自监督模型
-
上交&字节新作HIRL| 基于分层图像特征表示的自监督模型
论文标题:HIRL: A General Framework for Hierarchical Image Representation Learning
论文地址:https://arxiv.org/pdf/2205.13159.pdf
代码地址:https://github.com/hirl-team/HIRL
摘要
- 引入主题: 学习自监督图像表示已被广泛研究,以促进各种视觉理解任务。现有的方法通常只学习一个层次的图像语义,如成对语义相似度或图像聚类模式。
- 现存问题: 然而,这些方法很难捕获图像数据集中自然存在的多层次语义信息,例如“波斯猫”的语义层次→猫→哺乳动物”编码。因此,不知道图像自监督学习(SSL)方法是否可以从图像中学习这种层次语义中获益。
- 解决方法: 提出了一个层次图像表示学习(HIRL)的通用框架。该框架旨在学习每个图像的多个语义表示,这些表示的结构将图像语义从细粒度编码到粗粒度编码。基于概率分解,HIRL通过现成的图像SSL方法学习最细粒度语义,并通过一种新的语义路径识别方案学习多个粗粒度语义。
- 实验结果: 采用六种有代表性的图像SSL方法作为基线,并研究它们在HIRL下的性能。通过严格的公平比较,观察到所有六种方法在不同下游任务中的性能提高,这首次验证了学习层次图像语义的一般有效性。
算法
问题定义
对于N个没有标签的训练数据集合
,之前SSL算法都是使用每张图像的一个层次特征来进行比较训练,而HIRL视图学习每张图像的从细到粗多个层次的特征表示
。
这样,用低维特征向量的链zn=zn0,zn1,…,znLz_n = {z_n^0, z_n^1, …, z_n^L}zn=zn0,zn1,…,znL来表示每个图像。
分层原型
分层图像表示的学习是由分层原型指导的,即每一层使用多个语义簇进行特征表示,分层原型就是指语义簇,可以表示为,其中MlM_lMl表示每一层语义级别中的语义簇个数。
每一层的原型是通过K-means算法获得。具体算法如下所示:
- 通过ResNet和ViT等backbone网络来生成每个图像的特征表示
- 对这些特征表示进行K-means聚类操作,来得到第一层的分层原型
- 然后对分层原型重复迭代k-means算法来获取不同层次的原型
- 连续层次之间的关系用边集E\mathcal{E}E表示
- 这样就可以构成一个树的结构,如下图所示
Probabilistic Formalization
给定一张图像,目的是获取其在每个特征层次中所属语义簇的概率分布,即
。直接计算是有难度的,HIRL首先对
进行建模以建立最细粒度的语义表示,然后对联合分布
进行建模以获得更粗粒度的语义:
第一项
可以通过现有的图像SSL方法进行适当建模,而第二项
的建模是非常复杂的,这需要捕获粗粒度语义对细粒度语义的依赖性以及粗粒度语义不同层次之间的相互依赖性。
Semantic path discrimination
作为对比自监督算法,目标可以形式化为 最大化 层次表示
与正路径之间的相似性,同时最小化与负路径之间的相似性。
为了度量层次表示和语义路径
之间的相似性,作者计算了每个层次中特征表示和原型
之间的相似性,并将所有成对的相似性相乘:
实验
不同自监督算法比较
消融实验