Exploiting Fine-Grained Prototype Distribution for Boosting Unsupervised Class Incremental Learning
Kimi全文翻译 :arrow_down:
0. 摘要
开放世界场景的动态特性吸引了越来越多的关注于类别增量学习(Class Incremental Learning, CIL)。然而,现有的CIL方法通常假设在整个训练过程中都有完整的真实标签可用,这在实际应用中很少见。因此,本文探索了一个更具挑战性的问题——无监督类别增量学习(Unsupervised Class Incremental Learning, UCIL)。解决这个问题的关键在于有效捕获全面的特征表示,并发现未知的新类别。为了实现这一点,我们首先通过利用细粒度原型对类分布知识进行建模。随后,引入了一种粒度对齐技术来增强无监督类别发现。此外,我们提出了一种策略,以最小化新旧类别之间的重叠,从而保留历史知识并减轻灾难性遗忘现象。在五个数据集上的广泛实验表明,我们的方法显著优于当前的最先进方法,证明了所提方法的有效性。
1. 引言
现实世界环境的动态性使得类别增量学习(Class Incremental Learning, CIL)越来越受到关注,CIL的目标是使模型能够随时间适应并整合新类别。然而,现有的CIL方法[28; 45; 10; 40]通常假定在训练过程中可以获得所有真实标签,这在许多真实场景中是不现实的。随着新类别数据的出现,及时获取完整的真实标签可能变得不切实际。在更现实的场景中,可能只有少数标签甚至没有标签可用。因此,本文专注于一个更现实且具有挑战性的问题——无监督类别增量学习(Unsupervised Class Incremental Learning, UCIL),旨在解决没有任何标签信息的CIL问题。
CIL和UCIL问题的最大挑战是如何捕获全面的特征表示,这些表示能有效地对现有和即将到来的未知类别的分布进行建模。这种能力对于保留历史知识以防止灾难性遗忘以及同时发现和学习新类别至关重要。现有的CIL方法通常依赖于包括正则化[14; 13]、动态结构[18; 32]或知识复现[11; 30]的策略。这些方法使用有监督数据来学习数据表示和类别决策边界,随着标签空间的扩展。然而,这些方法在同时整合新概念和保留现有知识方面存在权衡[43],尤其是在无监督方式下。在这种情况下,现有类别和新类别之间的特征重叠为这个问题增加了额外的复杂性[41]。因此,本文的主要目标是有效地对无监督建模知识表示进行研究。
此外,由于UCIL中没有真实标签可用,这带来了另一个挑战,即更好地发现并有效分类未知的新类别。为此,关键是发现特征空间中的潜在聚类结构,并利用这些结构来学习分类器。现有方法经常使用k-Means聚类[1]、对比学习[36; 19]或基于最优传输的技术[25; 44; 20]进行无监督学习。然而,这些方法通过类别级别的伪标签引导分类器的学习,并可能引入偏差和偏差。因此,本文的另一个目标是提出一种新策略,用于捕获特征空间中的聚类结构,以促进潜在未标记类别的发现和识别。
本文中,我们引入了一个新颖的框架,利用细粒度原型分布来增强UCIL。为了以无监督的方式捕获更全面的类别表征,我们采用了大量预训练的ViT[3]。ViT被用作特征编码器,并在训练期间保持冻结状态。此外,我们利用细粒度原型分布来捕获特征空间中的更详细信息。为了更准确地发现未标记的类别,我们提出了一种新颖的粒度对齐方法,通过更细粒度的分配分布引导分类器的训练。此外,通过捕获原型内部的类别分布,我们开发了一种减少新旧类别之间重叠的策略,从而保留历史知识并减轻遗忘现象。大量的实验结果表明,与现有的最先进方法相比,我们的方法有显著的改进,在CIFAR100和CUB数据集上分别提高了9.1%和9.0%。我们的贡献总结如下:
- 我们考虑了一种更现实的无监督类别增量学习场景,并提出了一种有效的方法。
- 我们提出了一种新策略,使用细粒度原型对详细类别分布进行建模,并通过粒度对齐提高更准确类别发现的能力。
- 我们在五个基准数据集上取得了显著的性能提升,与现有最先进方法相比有大幅度的提高。广泛的案例研究从不同角度证明了所提方法的有效性。
2. 相关工作
2.1 类别增量学习
在类别增量学习领域,面临的主要挑战是在保留先前学习的知识的同时学习新类别,这些任务的类别集合是不重叠的。为应对这一挑战,已出现了三种主要策略:基于复演的方法[28; 30; 21; 11]、基于正则化的方法[14; 35; 45; 13]和动态架构方法[18; 32; 43; 10]。近期CIL研究的一个显著趋势是将预训练的变换器网络集成作为特征提取器[40; 23; 47],这有助于获取更好的表征并减少遗忘。然而,这些现有方法需要在每个增量步骤中都有标签信息,这在现实场景中是不可行的。因此,一个新的挑战在于如何在连续的未标记数据流中有效发现类别。最近的一项解决方案是Msc-iNCD[20],它利用了分类器权重的余弦归一化和冻结特征机制。基于此基础,我们的方法引入了一种新方法,为无标签的CIL问题提供了新的视角。
2.2 新类别发现
新类别发现(Novel Class Discovery, NCD)任务专注于在未标记数据集中识别未知类别,同时利用已知的标记数据集。传统的NCD方法[8; 7; 9]通常在不现实的假设下运作,即未标记集合仅从未知新类别中采样。为了改进,广义类别发现(Generalized Class Discovery, GCD)[36; 27; 19]解决了一个更复杂的场景,其中测试集由已知和未知的类别组成,所有这些类别都需要同时被识别。一些最近的进展集中在以顺序方式逐步发现和学习类别[42; 31; 12; 22]。然而,这些方法受到几个因素的限制,这些因素限制了增量学习会话的数量[12],需要每个任务的标识符(task-id)[22],并且每次会话都需要访问标记数据。这些限制限制了它们在动态现实环境中的适用性,这些环境中未知类别在持续演变。我们提出的方法旨在提供一种更适应性和现实的方法来处理未标记的连续类别序列中的NCD。
3. 提出的方法
3.1 问题定义
在无监督类别增量学习(UCIL)的设置中,模型连续观察到 T 个顺序的任务,每个任务都呈现出数据集 $D_t$,其中只包含未标记的样本 $x_{ti} \in X_t$。在训练期间无法评估对应的标签集合 $Y_t$。按照 CIL 领域的常见设置 [28; 20],不同任务的类别是互不相交的,即 $Y[i] \cap Y[j] = \emptyset$,并且模型只能获取当前任务的类别。我们假设新类别的数量 $cNum = |Y_t|$ 是预先知道的。在每个任务 t 中,我们的目标是发现 $D_t$ 中的未知类别,并将实例准确识别到相应的发现的类别中,同时保持对之前任务 $D_1$ 到 $D_{t-1}$ 中的类别的性能。换句话说,我们提出的方法旨在增量地学习一个分类器,它可以将任何测试实例 x 分到从未标记数据流 $D = {D_1, D_2, \ldots, D_T}$ 中发现的类别 $X \rightarrow \bigcup_{t=1}^{T} Y_t$,无需任务标识符的帮助。
3.2 框架概述

在介绍详细方法之前,我们首先介绍我们方法的网络架构,如图 1 所示。我们的方法采用预训练的视觉变换器 ViT-B/16 [3] 作为特征提取器 f 以获取更多语义特征 z。在所有训练阶段,f 的参数都被冻结,以避免遗忘并减少参数计算量。在特征提取器之后,使用可训练的原型 w 用于对特征空间中的细粒度分布进行建模。另一个分支包含一个由投影器 g(·) 和类别中心 c 组成的分类器,用于类别识别和预测。使用这些原型可以存储历史类别的知识,然后采样以减少与新类别的重叠。
3.3 细粒度原型的分布建模
UCIL 的主要目标是捕获全面的特征表示。先前的方法 [20; 31] 通常使用每个类别的一个原型,并基于单一高斯类分布的假设存储示例以保留知识。与此相反,本文通过利用细粒度原型来捕获特征空间中的详细分布。通过有效地建模现有和即将到来的类别的分布,这种方法不仅减轻了知识遗忘,还增强了新类别的发现和学习。
为了提供更直观的理解,我们在图 2 中提供了这些原型在特征空间中的可视化。在该图中,三角形代表细粒度原型,上面和下面的数字分别有 20 和 40 个真实类别。我们可以看到学习到的原型可以捕获全面的特征表示,并模仿特征分布的密度,捕获特征分布的子簇结构。
更具体地说,细粒度原型可以基于高斯混合方式进行探索和优化。正式地,对于任务 t 中的输入数据 $x_i \in D_t$,我们可以通过 $z_i = f(x_i)$ 获得特征。此外,我们的方法在特征空间中采用一组高斯原型 W,其中 $w \sim N(\mu_w, \sigma_w^2 I)$。这里,$\mu_w$ 和 $\sigma_w$ 是可训练的参数。为了在细粒度级别上模拟特征空间中未定义的分布,我们将每个特征 $z_i$ 与这些细粒度高斯原型关联,以指示 $z_i$ 属于哪个细粒度子类。假设 $r = pNumt$ 是任务 t 中的原型数量,这是预先定义的并且远大于潜在的类别数量。假设 $w_i$ 和 $z_i$ 都是 l2 标准化的,则后验概率 $p(w_i | z_i)$ 由下式给出:
$$
p(w_i | z_i) = \frac{\exp\left(\frac{2(z_i^\top \mu_{w_i} - 1)}{\sigma_{w_i}^2}\right)}{\sum_{w’ \in W} \exp\left(\frac{2(z_i^\top \mu_{w’} - 1)}{\sigma_{w’}^2}\right) \pi_{w’}}
$$
其中 $\pi_{w_i}$ 是高斯原型的权重,$\sigma_{w_i}$ 是简化起见采用对角形式。然而,直接通过最小化 n 个观测特征上的负对数似然来优化是困难的,因此我们采用变分近似 $q(w|z)$ 来逼近真实分布 $p(w|z)$。这个问题的证据下界(ELBO)如下:
$$
\text{ELBO} = \frac{1}{n} \sum_{i=1}^{n} \log \left( \sum_{w} p(w | z_i) \right) = \frac{1}{n} \sum_{i=1}^{n} \log \left( \sum_{w} q(w | z_i) \frac{p(w | z_i)}{q(w | z_i)} \right) \geq \frac{1}{n} \sum_{i=1}^{n} \left( \sum_{w} q(w | z_i) \log \frac{p(w | z_i)}{q(w | z_i)} \right)
$$
这可以通过交替推断后验 $q(w|z)$ 来最大化。受到 [24] 的启发,这个问题可以通过期望最大化(EM)算法来解决。
E 步骤。给定某个 $p(w|z)$,为了推断 $q(w|z)$,设 $Q_{w_i,i} = q(w_i | z_i)$ 和 $P_{w_i,i} = p(w_i | z_i)$ 为两个 $r \times n$ 矩阵。为了增加多样性并避免退化,我们强制要求每个细粒度高斯分量被分配相同数量的样本,其中 $\pi_{w_i}$ 对所有 i 都是相等的。然后我们可以将 E 步骤转化为一个最优传输问题,如下所示:
$$
\min_Q \text{Tr}(Q^\top \log P) - \epsilon H(Q)
$$
$$
Q \in \mathbb{R}^{r \times n}_+
$$
$$
\sum_{j=1}^{n} Q_{ij} = \frac{1}{r}, \sum_{i=1}^{r} Q_{ij} = \frac{1}{n}
$$
其中 $H(Q) = -\sum_{i,j} Q_{ij} \log Q_{ij}$ 是熵函数,$\mathbf{1}_n$ 是维度为 n 的全一矢量。$\epsilon$ 是控制分配平滑度的比例参数。
上述方程的最优解可以写成 $Q^* = \text{Diag}(u) P^\lambda \text{Diag}(v)$,其中 $u \in \mathbb{R}^r$ 和 $v \in \mathbb{R}^n$ 是重新归一化的矢量。在实践中,该问题可以通过少量(我们设为 3)矩阵乘法,使用 Sinkhorn-Knopp[5] 算法高效解决。
M 步骤。在 E 步骤获得最优 $q^(w|z)$ 后,我们可以通过梯度方法优化可训练的 $\mu$ 和 $\sigma$,如下所示:
$$
L_{\text{proto}} = -\frac{1}{n} \sum_{i=1}^{n} q^(w_i | z_i) \log p(w_i | z_i)
$$
讨论:方程 5 与原型对比学习方法(如 SwAV[2])有相似的公式。然而,这些方法主要关注于学习表征,而我们的方法在理论上强调这些细粒度原型,它们是作为高斯而不是单一向量形成的。实验部分将对此进行案例研究。细粒度原型建模提供了两个关键好处:首先,它帮助保留特定任务的知识,以减少现有和新类别之间的重叠,从而防止遗忘。其次,这种方法使捕获更精细的特征分布成为可能,这将增强无监督类别发现,并将在以下部分讨论。
3.4 通过粒度对齐进行无监督类别发现
在本节中,我们将介绍一种新的粒度对齐策略,以通过探索的细粒度高斯原型来发现未知类别。首先,给定提取的特征 $z = f(x)$,分类器定义为:
$$
Y = p(y|z) = \frac{\exp \langle c_y \circ g(z) / \tau \rangle}{\sum_{c’ \in C_t} \exp \langle c’ \circ g(z) / \tau \rangle},
$$
其中 $C_t = {c_t^1, …, c_t^k}$ 是每个已发现类别的可训练类别中心,k 是当前任务中的类别数量。τ 是温度参数。$g(z)$ 是投影器,将 z 转换为一个降维空间,专注于粗粒度的聚类发现任务。按照先前的方法,$\langle \circ \rangle$ 是通过每个 c 和 $g(z)$ 的 l2 标准化后的余弦距离。
前一节已经获得了细粒度特征分配概率在多个高斯 $W = p(w|z)$ 上。然后在无监督方式下学习分类器,之前优化的细粒度分配概率 Q 可以被视为学习分类器的指导。在实现中,我们通过最大化类级别分配概率 Y 和细粒度原型分配概率 W 之间的互信息来对齐粒度:
$$
L_{\text{align}} = -I(W; Y) = \mathbb{E}{(w,y) \sim p(w, y)} \left[ \log \frac{p(w, y)}{p(w) p(y)} \right] - \lambda{\text{GA}} \mathbb{E}y p(y) \log(p(y)),
$$
其中 $\lambda{\text{GA}}$ 是正则化权重,$p(w, y)$ 是联合概率,$p(w)$ 和 $p(y)$ 是边缘项。命题 3.1 $p(w, y)$ 等于矩阵乘法 $W^\top \cdot Y$ ∈ $\mathbb{R}^{r \times k}$。
证明。$W = p(w|z)$ ∈ $\mathbb{R}^{n \times r}$ 和 $Y = p(y|z)$ ∈ $\mathbb{R}^{n \times k}$ 在 z 上条件独立,因为它们由独立的网络参数计算,那么
$$
p(w_j, y_i) \approx \int p(w_j, y_i | z) dz = \int p(w_j | z) \cdot p(y_i | z) dz = \left[ W^\top \cdot Y \right]_{ij}.
$$
基于证明,我们还可以近似每个高斯原型到类别中心的条件分配关系 $p(y|w)$ 如下:
$$
p(y|w) = \frac{p(w, y)}{\sum_y p(w, y)},
$$
这可以用于增量学习期间的细粒度类别分布的知识保留,后续部分将提供更多细节。
讨论:大多数现有方法 [20; 29] 主要通过在相同粗粒度类别级别上使用伪标签来指导类别发现或聚类预测器的无监督学习。通过在 Y 和 W 之间进行粒度对齐,聚类模型被鼓励学习更丰富的特征表示,并将这些捕获的更详细特征与细粒度分配分布 W 结合起来。这种方法导致更有信息量的聚类决策,从而提高粗粒度类别级别 Y 上的无监督类别发现性能。这种方法的好处将在实验部分展示。
3.5 通过重叠减少的知识保留
在前一节中,我们专注于特定任务 t 内的无监督类别发现。没有历史知识,这种方法可能会冒着旧类别中心 $C_{\text{old}} = {C_1 \ldots C_{t-1}}$ 和当前类别中心 $C_t$ 之间特征重叠的风险,可能导致遗忘。为了缓解这个问题,本节介绍了一种重叠减少技术,用于微调分类器,使其能够在没有任务标识符信息的情况下识别当前和历史类别,同时不遗忘。
在每个任务结束时,当前任务的知识可以通过细粒度高斯原型集合 W 来建模和存储。具体来说,首先,通过方程 9 获得每个高斯原型对应的类别标签。然后,通过方程 1 派生出每个特征的分配概率 $p(w|z)$。因此,我们可以通过分配给每个 w 的样本特征计算统计信息,包括计数 $n_w$、均值 $\mu_w$ 和方差 $\sigma_w^2 I$。我们还可以计算纯度 $PUR_w$,即分配给每个高斯的最大类别样本大小与总样本大小的比率。重新计算的每个高斯的参数可以更好地适应当前的特征分布。
因此,对于新任务,我们可以通过从记忆中采样特征来推导旧类别的知识:
$$
D_{\text{old}} = {z, y} \sim \sum_{w \in W_y} \pi_w \mathcal{N} \left( \mu_w, \sigma_w^2 I \right),
$$
其中 $\pi_w = \frac{n_w \times PUR_w}{\sum_{w’ \in W_y} n_{w’} \times PUR_{w’}}$ 是每个 w 的权重项。我们为每个类别 y 采样等量的特征,以确保类别平衡。
为了避免遗忘,我们的目标是在当前分类器中保持对旧类别的辨别能力,联合使用类别中心 $c \in C_{\text{old}} \cup C_t$ 通过类似交叉熵的目标函数:
$$
L_{\text{old}} = \frac{1}{|D_{\text{old}}|} \sum_{(z, \hat{y}) \in D_{\text{old}}} \sum_{c \in C_{\text{old}}} \exp \left \langle c \circ g(z) / \tau \right \rangle \Bigg/ \sum_{c’ \in C_{\text{old}} \cup C_t} \exp \left \langle c’ \circ g(z) / \tau \right \rangle.
$$
此外,为了解决当前类别和旧类别之间的特征重叠问题,我们提出了一种分离损失,使可训练的类别中心和当前任务的特征与旧任务的中心远离:
$$
L_{\text{sep}} = \frac{1}{|D_t|} \sum_{z \in D_t} \frac{\exp \left \langle c \circ g(z) / \tau \right \rangle}{\sum_{c’ \in C_{\text{old}} \cup C_t} \exp \left \langle c’ \circ g(z) / \tau \right \rangle},
$$
其中 $c \in C_t$ 是当前任务的类别中心,而 $C_{\text{old}}$ 是旧任务的类别中心集合。然后最终的重叠减少目标形成为:
$$
L_{\text{reduct}} = \lambda_{\text{old}} L_{\text{old}} + L_{\text{sep}}.
$$
3.6 训练过程
算法 1 每个任务的训练过程。
输入:${D_t}_{t=1}^T$,高斯原型数量 $pNum$,类别数量 $cNum$,记忆 $M$。
- 对于 $D_t$ 中的每个小批量,执行以下操作:
- 通过方程 3 获得 $Q$。
- 使用获得的 $Q$ 计算 $L_{\text{proto}}$ 和 $L_{\text{align}}$。
- 通过方程 10 从记忆 $M$ 中采样 $D_{\text{old}}$。
- 通过方程 14 计算 $L_{\text{reduct}}$。
- $L \leftarrow L_{\text{proto}} + L_{\text{align}} + L_{\text{reduct}}$。
- 使用 Adam 优化器更新 $W_t, C_t, g_t$。
- 结束小批量处理。
- 通过更新的 $W, C, g$ 检索 $M_t$。
- $M \leftarrow M \cup M_t$。
整体训练目标函数为:$L = L_{\text{proto}} + L_{\text{align}} + L_{\text{reduct}}$。具体来说,如图 1 和算法 1 所示,训练学习过程可以解耦为以下部分:
- 细粒度原型建模。使用细粒度高斯原型建模捕获详细的特征分布,其中高斯原型的数量 $pNum$ 显著超过类别数量 $cNum$。
- 无监督类别发现。通过最大化细粒度原型分配 $p(w|z)$ 和类级别分配 $p(y|z)$ 之间的粒度对齐来指导分类器的训练。
- 保留历史知识。在学会的高斯原型 $w$ 上存储特征 z 的丰富统计信息。从未标记数据流 $D$ 中采样旧数据 $D_{\text{old}}$ 并将其与当前数据 $D_t$ 连接,微调分类器,从而避免特征重叠并防止遗忘。
整体的训练目标函数是 $L = L_{\text{proto}} + L_{\text{align}} + L_{\text{reduct}}$。具体来说,如图 1 和算法 1 所示,训练学习过程可以解耦为以下几个部分:
- 细粒度原型建模。利用细粒度高斯原型建模捕获详细的特征分布,其中高斯原型的数量 $pNum$ 显著超过类别数量 $cNum$。
- 无监督类别发现。通过最大化细粒度原型分配 $p(w|z)$ 与类级别分配 $p(y|z)$ 之间的粒度对齐来指导分类器的训练。
- 保留历史知识。在学会的高斯原型 $w$ 上存储特征 $z$ 的丰富统计信息。从存储的细粒度原型中采样旧数据 $D_{\text{old}}$ 并与当前数据 $D_t$ 连接,微调分类器,以避免特征重叠并防止遗忘。
4. 实验
4.1 实验设置
数据集和分割。为了证明我们方法的有效性,我们在五个基准数据集上进行了实验:CIFAR-10 (C10) [15]、CIFAR-100 (C100) [15]、Tiny ImageNet (T200) [17]、CUB200-2011 [37] 和 Herbarium-683 (H683) [34]。值得注意的是,每个基准训练数据集被分割成两步或五步设置,具有不重叠的标签空间。例如,在五步设置中,CIFAR-100 被划分为 5 个任务,每个任务包含 20 个类别。评估在测试数据集上执行。
评估协议。我们遵循 Msc-iNCD [20] 中概述的评估协议。我们主要报告的指标是在最终持续学习会话后的聚类准确率,称为整体发现准确率 $A$。这个指标是在包含所有以前遇到的类别的实例的测试集上评估的,分配是使用匈牙利算法 [16] 确定的。此外,我们还通过遗忘得分 $F$ 来衡量遗忘程度,它量化了在第一次会话 $T1$ 和最后一次会话 $T_{\text{end}}$ 之间聚类准确率的下降,特别是对于在初始会话 $T1$ 中发现的类别 $Y1$。重要的是要注意,在推理过程中,所有方法中的任务 ID 仍然未知。在某些特定实验中,我们还使用特定任务的发现准确率来评估在单个会话中发现新类别的性能。
实现细节。我们使用 ViT-B/16 [6] 作为主干 $g$,利用 DINO [3] 的预训练权重,这些权重在所有实验中都保持冻结。768 维的输出 [CLS] 标记作为特征向量表示为 $z$。细粒度原型的数量设置为 $pNum = 1000$。对于投影,我们使用一个 2 层 MLP,有 768 个隐藏单元和 128 维的输出。我们使用 Sinkhorn-Knopp 算法 [5] 的默认超参数,将 $\epsilon$ 设置为 0.05,迭代次数 $niter$ 设置为 3。每个会话进行 200 次训练,批量大小设置为 512。使用 Adam 作为优化器,默认学习率为 $1e-3$。此外,我们为旧损失 $\lambda_{\text{old}}$ 分配权重 10,为粒度对齐正则化项 $\lambda_{\text{GA}}$ 分配权重 4。默认温度参数 $\tau$ 保持在 0.1。我们稍后将在实验中探讨这些超参数的敏感性。实验在一台装有 Intel(R) Xeon(R) E5-2678 2.50GHz CPU、NVIDIA GeForce RTX 3090 GPU 和 32GB 内存的服务器上进行。
4.2 与领先方法的比较
比较基线。为了进行比较分析,我们选择了七种基线方法:前五种是扩展的基线方法。其中两个是相关的增量新类别发现(iNCD)方法,包括 ResTune [22] 和 FRoST [31]。ResTune 可以在没有标签但有任务标识符的情况下发现新类别,而 FRoST 需要有监督信息来增量地发现类别。此外,还包括几种代表性的 CIL 方法进行比较,包括两种基于正则化的方法 EwC [14]、LwF [18],以及一种基于复演的方法 DER [43]。虽然讨论的方法最初是在完全监督条件下开发的,但我们已经将它们适应到我们的方法中的 UCIL 框架。在这种适应中,真实标签被替换为伪标签,通过与 Msc-iNCD 中使用的相同的自训练策略获得。所有适应的方法都使用 DINO 预训练的 ViT-B/16 [3] 作为主干。在评估中,我们遵循相同的协议,主要将我们的方法与 Msc-iNCD [20] 及其高级版本 Msc-iNCD++ [20] 进行比较。尽管没有 MSc-iNCD 的公开代码,我们通过遵循他们论文中提供的伪代码简单地复制了他们的方法,达到了报告的性能水平。我们将其余基线方法的结果报告为 MSc-iNCD 论文中概述的内容,因为我们保持了相同的实验设置。
结果。表 1 展示了与经过调整的基线方法的比较结果。可以观察到,扩展的基线方法在 UCIL 任务中表现不佳。例如,DER 由于从错误的伪标签中累积错误而表现出不稳定性,而 ResTune 在这项任务中挣扎,因为它依赖于任务标识符信息。这些结果突显了与 UCIL 任务相关联的挑战。此外,我们的方法在不同数据集上一致地大幅度超越了协议方法 Msc-iNCD 和 Msc-iNCD++。在更具挑战性的五步设置中,我们的方法与其他方法之间的性能差距逐渐扩大,表明我们的方法在具有更长步骤的挑战性场景中表现出色。值得注意的是,在增量五步设置中,我们在整体发现准确率方面取得了显著的改进,在 CIFAR-100 和 CUB 数据集上分别提高了 9.1% 和 9%。
4.3 各组件的案例研究
在本节中,我们通过不同场景和视角进行了一系列案例研究,旨在评估我们方法中每个组件的单独贡献。
无监督类别发现的粒度对齐。在本节中,我们强调了粒度对齐策略在无监督类别发现任务中的有效性,作为自我引导。我们的关注点仅在于每个会话中特定任务的类别发现性能,与增量场景无关。为了量化这一点,我们测量了5个单独任务中聚类准确率的均值和方差,结果呈现在表 2 中。我们将我们提出的方法与 k-Means、MSc-iNCD,以及配备我们提出的粒度对齐(Granular Alignment, GA)方法的 MSciNCD 适应版本(称为 MSc-iNCD+GA)进行了比较。此外,我们还探索了从我们提出的方法中移除 GA 的影响,通过为每个类别设置一个原型(称为 ours w/o GA)。此外,我们还检验了我们方法在不同数量的细粒度原型下的性能。我们还进行了固定方程 1 中可训练参数 σ 的实验,将其命名为 ours w/o σ,并将其设置为 Msc-iNCD 中的 0.1。表 2 中的结果表明,MSc-iNCD+GA 的改进和 ours w/o GA 的性能下降都强调了粒度对齐对类别发现的积极影响。此外,增加原型数量可以带来性能的提升,表明细粒度建模有助于获得更好的聚类结果。不移动 σ 的下降进一步证明了高斯密度在建模概率分布上比常见的余弦距离更有益。
细粒度原型用于知识保留。此外,我们强调了所提出的细粒度高斯原型学习在保留先前知识以防止遗忘方面的优势。如表 3 所示,我们展示了与其它设计方法相比的整体发现准确率和遗忘得分,并且只替换了我们方法中的记忆策略。Examplar 表示 CIL 中常用的策略,即在每个发现的类别中随机选择 {5,20,50} 个样本作为示例,并在每个会话后存储。Class-mean 是 Msc-iNCD 中使用的战略,涉及计算和存储每个发现类别的均值和方差。为了参考,我们还报告了使用不同数量的高斯原型集 {500, 1000, 2000, 5000} 以及相应的记忆大小的性能。表 3 显示,我们的战略在存储示例的实践中表现更好。这种优势是由于我们方法能够捕获和模拟特征分布的统计细微差别。此外,使用更多原型可以提高性能的结果,进一步证实了我们方法的有效性。
重叠减少策略分析。如图 4 所示,我们通过选择性地移除或替换它们,检验了各种训练策略在重叠减少方法中的优势。具体来说:KTRFR 对应于 Msc-iNCD [20] 中采用的策略,通过重放旧样本和新样本进行分类器训练,使用伪标签。我们报告了用 KTRFR 替换我们的损失函数(方程 13)后的性能。w/o Lsep 表示在方程 12 中移除分离损失后的结果。w/o Proj 反映了在移除投影器 g 后的成果。结果强调了每个组件的重要性,证明了它们对我们最终性能的贡献。
4.4 超参数分析
原型数量。虽然我们已经简要讨论了调整原型数量 (pNum) 的影响,但本节将更详细地探讨其影响。如图 3 所示,显然增加原型数量对类别发现和减少遗忘性能都有正面影响。在准确性和内存大小之间找到平衡,我们选择 pNum = 1000 作为我们方法的最佳选择。
其他参数。如图 4 所示,我们分析了我们方法中使用的几种其他参数:(a) 和 (b) 分别表示在变化旧损失权重 $\lambda_{\text{old}}$ 和粒度对齐正则化项权重 $\lambda_{\text{GA}}$ 时的性能。值得注意的是,这些权重在广泛的值范围内表现出稳定性。(c) 展示了在方程 6 中使用的 temperature 参数 $\tau$ 的敏感性分析。我们选择推荐的值 0.1,与大多数使用 l2 标准化余弦距离的先前研究一致。对于投影器输出的维度,(d) 显示我们的方法在各种常用设置中表现一致。这些结果共同强调了我们方法对超参数选择的鲁棒性和不敏感性。
5. 结论和讨论
结论:我们的工作深入探讨了更具挑战性和实用性的问题——无监督类别增量学习(UCIL)。我们分析了有效捕获全面特征表示和发现未知新类别对于解决这一问题至关重要。基于这一洞见,我们提出了一种新的 UCIL 方法,利用细粒度原型分布以及粒度对齐和重叠减少策略。实验已经在五个数据集上证明了与现有最先进方法相比的显著改进。
局限性 & 未来工作:在本文中,我们考虑的是一个比传统 CIL 更实际的场景,即在训练期间缺少所有标签。然而,实际情况可能带来更多挑战,包括未知的类别数量、历史和新类别的混合,或者类别分布不均衡。未来的研究将努力提出更有效的方法来解决这些挑战,并在日益现实的场景中应用。



