一、简介
题目: Parametric Classification for Generalized Category Discovery: A Baseline Study
来源: arXiv
任务: 给定一个数据集,其中部分样本有标签(这里称其为已知类),其余样本无标签(可能属于已知类也可能属于未知类),要求将无标签样本中属于已知类的样本正确分类,对属于未知类的样本进行聚类。
方法:
(1)使用vision transformer(ViT)作为backbone进行特征提取。backbone由自监督权重(self-supervised ImageNet weights)赋初值;
(2)之后结合有监督对比损失、自监督对比损失、自蒸馏损失(self-distillation)、标准交叉熵损失对ViT的最后一个宏块(block)和分类头进行联合微调。
Note: 之前讲的Generalized Category Discovery(GCD)和Open World Semi-Supervised Learning也是解决该问题的,该工作所用的方法(1)与前者基本一致,(2)中自蒸馏损失与后者最大熵部分基本一致。另外,该方法假设新类数量已知,其实这是不现实的,AutoNovel: Automatically Discovering and Learning Novel Visual Categories和GCD都提出了解决方案。

如图,该工作(SimGCD)采用监督对比损失+自监督对比损失+参数分类(自蒸馏损失、标准交叉熵损失)的优化策略。
二、详情
1. 参数分类失效原因分析
作者从以下三个方面对分类器直接用于广义类发现问题失效的原因进行了分析:
(1)应该在哪一层特征的基础上构建分类器;
(2)是否应该联合优化特征提取器和分类器;
(3)对于旧类的预测偏向问题。
通过在不同的标签质量(仅有已知类的标签 → \rightarrow →self-label伪标签 → \rightarrow →self-distillation伪标签 → \rightarrow →已知类未知类均有标签)设置下,对比UNO+(联合优化的策略,该方法使用self-label的伪标签生成策略)和GCD(独立/解耦的优化策略),作者得出的结论如下:
(1)相比projector(相当于backbone后的又一个特征提取器),在backbone后直接构建分类器更合适。并且,伪标签的质量越高,则广义类发现性能越好;
(2)在有高质量伪标签的情况下,相比独立优化,联合优化特征提取器和分类器更合适;
(3)UNO+和GCD都存在倾向于将未知类分到已知类的问题。
于是,作者采取了综合最优的方案:在backbone后直接构建分类器、构造损失联合优化特征提取器和分类器、增加正则化项限制对已知类的倾向。
2. 特征提取
该部分与GCD相应部分基本一致,GCD认为直接对图像数据进行分类或聚类效果必然不理想,需要先提取出空间性质较好的特征。GCD作者表示ViT作为backbone对近邻分类器十分友好,因此将ViT选作backbone。

从上图可以看出,与ResNet50(DINO)提取的特征相比,使用self-supervised ImageNet weights初始化的ViT(DINO)的类内距离更小、类间距离更大。
然后,为了增强ViT的表示学习(特征提取)能力,作者使用目标数据集中的数据对特征提取器进行了微调。主要采取的是对比学习的损失优化策略,将全部样本(包括有标签和无标签的全部数据)视为无标签样本使用如下自监督对比损失:
其中, z i \pmb{z}_i zi和 z i ′ \pmb{z}^\prime_i zi′分别是同一图片随机增强后的两个视图的特征表达, z i = g ( f ( x i ) ) \pmb{z}_i=g(f(\pmb x_i)) zi=g(f(xi)), f ( ∗ ) f(*) f(∗)为backbone(ViT), g ( ∗ ) g(*) g(∗)为projection head(projector, 如MLP)。有标签样本使用如下有监督对比损失:
其中, N ( i ) \mathcal{N}(i) N(i)表示与 z i \pmb{z}_i zi有相同类标签的样本索引。
直白来说,这两个对比损失就是希望来自同样本(如随机增强的两个样本)或同类(有相同真实标签的两个样本)的特征尽量接近。于是,形成如下用于优化特征提取器的损失函数:
其中,前一项用于优化全部图像(不使用标签),后一项用于优化有标签图像。
通过该损失函数仅优化特征提取器(不与分类器联合优化)的结果如ViT(Ours)所示,显然,它具有更好的特征空间表达。不过,之前1. 参数分类失效原因分析中说过,在有高质量伪标签的情况下,联合优化更合适,即对ViT的最后一个宏块和分类器一起优化会有更好的结果。所以这里先不优化,而是先生成高质量的伪标签,使用 L r e p \mathcal L_{rep} Lrep

文章介绍了一种用于广义类发现的方法,SimGCD,它基于visiontransformer(ViT)特征提取和联合优化策略。通过分析参数分类失效的原因,SimGCD提出在backbone后构建分类器,并结合有监督对比损失、自监督对比损失、自蒸馏损失和标准交叉熵损失进行优化。该方法解决了直接分类未知类的问题,同时避免了对已知类的过度预测。在特征提取阶段,使用对比学习提升表示能力,而在无标签数据上,通过self-distillation生成伪标签优化分类器。
最低0.47元/天 解锁文章
2064

被折叠的 条评论
为什么被折叠?



