news 2026/2/24 6:29:00

ECCV-2020《SCAN: Learning to Classify Images Without Labels》

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ECCV-2020《SCAN: Learning to Classify Images Without Labels》

2. 核心思想

该论文的核心思想是解耦(decouple)。作者认为,当前主流的端到端无监督图像分类方法将特征学习和聚类过程耦合在一起,导致聚类过程容易受到网络初始化的影响,并“抓住”(latch onto)颜色、纹理等低级特征,从而难以实现真正有意义的语义聚类。

为此,SCAN提出了一种两阶段(two-step)的方法:

  1. 第一阶段:学习语义特征。使用自监督学习(self-supervised learning)中的一个前置任务(pretext task)——特别是满足特征不变性约束(即对同一图像的不同增强视图,其特征表示应相近)的实例判别(instance discrimination)任务——来学习一个强大的、语义上有意义的特征表示。
  2. 第二阶段:基于特征进行语义聚类。利用第一阶段学到的特征,为每个图像挖掘其K近邻(mine its K nearest neighbors)。由于这些近邻在语义上高度相关(如论文图2所示),它们可以作为强有力的先验信息。然后,设计一个可学习的聚类目标函数,强制模型对一个图像及其近邻给出一致且区分度高(one-hot)的预测。最后,通过自标签(self-labeling)步骤,利用高置信度的预测作为伪标签来进一步微调模型,以纠正近邻中可能存在的噪声(错误配对)。

3. 目标函数及其优化过程

目标函数

SCAN的聚类阶段目标函数Λ\LambdaΛ由两部分组成,如下所示:

Λ=−1∣D∣∑X∈D∑k∈NXlog⁡⟨Φη(X),Φη(k)⟩+λ∑c∈CΦηc′log⁡Φηc′ \Lambda = -\frac{1}{|D|} \sum_{X \in D} \sum_{k \in N_X} \log \langle \Phi_\eta(X), \Phi_\eta(k) \rangle + \lambda \sum_{c \in C} \Phi'_{\eta c} \log \Phi'_{\eta c}Λ=D1XDkNXlogΦη(X),Φη(k)⟩+λcCΦηclogΦηc

其中:

  • DDD是数据集。
  • Φη(⋅)\Phi_\eta(\cdot)Φη()是待训练的聚类网络(以η\etaη为参数),其输出是经过softmax后的类别概率分布。
  • NXN_XNX是图像XXX的K近邻集合,这些近邻是基于第一阶段学到的特征挖掘得到的。
  • ⟨⋅⟩\langle \cdot \rangle表示点积(dot product)操作。⟨Φη(X),Φη(k)⟩\langle \Phi_\eta(X), \Phi_\eta(k) \rangleΦη(X),Φη(k)⟩的值在两个预测都是one-hot(高度自信)且指向同一个类别(高度一致)时达到最大。因此,该损失项的目标是最大化这种一致性和自信度。
  • 第二项是熵正则化项(entropy regularization term)。其中Φηc′=1∣D∣∑X∈DΦηc(X)\Phi'_{\eta c} = \frac{1}{|D|} \sum_{X \in D} \Phi_{\eta c}(X)Φηc=D1XDΦηc(X)代表了整个数据集上预测到类别ccc的平均概率。该项的作用是最大化预测的熵,即强制类别分布尽可能均匀,防止模型将所有样本都预测到同一个簇中(避免“坍塌”)。
  • λ\lambdaλ是一个超参数,用于平衡两项的权重。
优化过程
  1. 预训练阶段:首先,使用实例判别(如SimCLR或MoCo)作为前置任务,在整个数据集DDD上预训练一个特征提取网络Φθ\Phi_\thetaΦθ。这个网络学习到的特征空间具有良好的语义结构。
  2. 近邻挖掘:在预训练好的特征空间中,为数据集DDD中的每个样本XiX_iXi,使用K近邻算法(如KNN)找到其K个最近的邻居,构成集合NXiN_{X_i}NXi。这些近邻关系在整个聚类训练过程中是固定不变的先验。
  3. 聚类训练:初始化聚类网络Φη\Phi_\etaΦη(通常直接使用预训练好的Φθ\Phi_\thetaΦθ的权重)。然后,通过最小化上述目标函数Λ\LambdaΛ来优化η\etaη。在实践中,使用小批量(mini-batch)随机梯度下降(如Adam优化器)进行优化。在每个训练步中,会随机增强样本XXX及其近邻kkk,以提高模型的鲁棒性。
  4. 自标签微调(Self-labeling Fine-tuning):
    • 在聚类训练结束后,模型会产生一个预测概率分布。
    • 选择预测置信度最高(即max⁡cΦηc(X)>threshold\max_c \Phi_\eta^c(X) > \text{threshold}maxcΦηc(X)>threshold,阈值通常设为0.99)的样本。
    • 将这些高置信度样本的预测类别作为伪标签(pseudo labels)。
    • 使用交叉熵损失(cross-entropy loss)在这些伪标签上对模型Φη\Phi_\etaΦη进行微调。为了防止过拟合,微调时使用更强的图像增强(如RandAugment)。
    • 这个过程是渐进的:随着模型越来越自信,会有越来越多的样本被加入到伪标签集合中,从而逐步提升聚类质量。

整个算法流程在论文的Algorithm 1中有清晰的总结。

4. 主要贡献点

  1. 提出解耦范式:明确地将特征学习与聚类过程解耦,避免了端到端方法对网络初始化和低级特征的依赖,为无监督图像分类提供了一个更稳健、更有效的框架。
  2. 引入近邻作为语义先验:创新性地利用自监督特征空间中的K近邻作为语义聚类的强大先验,并通过实验证明了其有效性(图2)。
  3. 设计新颖的聚类损失函数:提出的目标函数通过点积项直接优化预测的一致性和自信度,并通过熵正则化项保证簇的均衡性,有效避免了聚类坍塌问题。
  4. 引入自标签微调机制:通过利用高置信度预测作为伪标签进行微调,有效纠正了近邻挖掘中引入的噪声,进一步提升了性能。
  5. 卓越的实验性能:在CIFAR10、CIFAR100-20和STL10等标准数据集上大幅超越了当时的SOTA方法(提升超过20%),并且首次在大规模ImageNet数据集上展示了有竞争力的无监督分类结果,甚至在1%标签的半监督设定下超越了部分半监督方法。

5. 算法实现过程详解

根据论文第2节和第3.1节,算法实现的关键步骤如下:

  1. 网络架构:使用标准的ResNet-18作为主干网络。
  2. 前置任务选择
    • 在小规模数据集(CIFAR, STL10)上,使用SimCLR的实例判别任务进行预训练。
    • 在ImageNet上,使用MoCo的实例判别任务进行预训练。
    • 这些任务都满足论文提出的特征不变性约束(公式1)。
  3. 近邻挖掘:在预训练好的特征提取器(移除最后的投影头)的输出特征空间中,为每个训练样本计算其20个最近邻(K=20)。使用余弦相似度或L2距离作为度量。
  4. 聚类阶段训练
    • 初始化:聚类网络Φη\Phi_\etaΦη的权重直接从预训练的特征提取器Φθ\Phi_\thetaΦθ加载。
    • 损失函数:使用公式(2)的SCAN损失,其中熵权重λ=5\lambda=5λ=5
    • 数据增强:对样本及其近邻应用RandAugment进行强增强。
    • 优化器:使用Adam,学习率10−410^{-4}104,权重衰减10−410^{-4}104
    • 训练细节:批量大小128,训练100个epoch。
  5. 自标签阶段训练
    • 伪标签生成:选择预测概率大于0.99的样本,其预测的argmax作为伪标签。
    • 损失函数:使用加权交叉熵损失,以补偿不同簇之间伪标签数量的不平衡。
    • 数据增强:同样使用RandAugment进行强增强。
    • 训练细节:继续训练200个epoch,当高置信度样本的数量趋于稳定时停止。
  6. 评估:由于没有验证集标签,聚类阶段保存损失最低的模型,自标签阶段保存高置信度样本数最多的模型。

6. 局限性分析与总结

尽管SCAN取得了巨大成功,但作为一名研究者,我们必须客观地审视其存在的局限性:

  1. 依赖于前置任务的质量:SCAN的性能高度依赖于第一阶段自监督前置任务(如SimCLR, MoCo)所学习到的特征质量。如果前置任务本身学习到的特征语义性不强,SCAN的性能也会大打折扣。论文的消融实验(Table 2)也证明了这一点,使用RotNet作为前置任务时性能明显下降。
  2. 需要预估簇的数量:和大多数聚类算法一样,SCAN需要预先指定簇的数量∣C∣|C|C。虽然论文展示了其对“过聚类”(overclustering)具有一定的鲁棒性,但这仍然是一个超参数,在真实场景中可能难以准确估计。
  3. 近邻挖掘的计算和存储开销:在大规模数据集(如完整的ImageNet)上,为所有样本计算并存储K近邻需要大量的计算资源(如FAISS库)和内存。这限制了其在超大规模数据集上的直接应用。
  4. 对近邻噪声的敏感性:虽然自标签步骤旨在纠正近邻中的噪声(即不同语义类别的样本被错误地作为邻居),但初始的聚类训练阶段仍然会受到这些噪声的影响。如果特征空间本身在某些语义边界上不够清晰,噪声可能会对最终结果产生负面影响。
  5. 两阶段的次优性:解耦虽然带来了稳定性和性能提升,但也可能引入次优性。因为第一阶段的前置任务目标(实例判别)与第二阶段的最终目标(语义聚类)并不完全一致。一个真正端到端、能联合优化这两个目标的框架(如果能克服其不稳定性)理论上可能更优。

总结:SCAN是一篇极具影响力的论文,它通过巧妙的解耦设计、利用近邻先验和创新的损失函数,成功地将无监督图像分类的性能提升到了一个新的高度,并成功扩展到了大规模数据集。其核心思想——先学好特征,再进行语义感知的聚类——为后续研究提供了清晰且有效的范式。尽管存在上述局限性,但其贡献和启发性是毋庸置疑的。该工作也凸显了自监督学习所获得的表示能力的强大力量,为无监督学习领域树立了一个重要的里程碑。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/23 18:40:46

2025年NFC标签操作完全指南:从问题诊断到实战解决方案

2025年NFC标签操作完全指南:从问题诊断到实战解决方案 【免费下载链接】MifareClassicTool An Android NFC app for reading, writing, analyzing, etc. MIFARE Classic RFID tags. 项目地址: https://gitcode.com/gh_mirrors/mi/MifareClassicTool 你是否曾…

作者头像 李华
网站建设 2026/2/23 22:59:01

OpenCore Legacy Patcher:让老款Mac重获新生的技术指南

OpenCore Legacy Patcher:让老款Mac重获新生的技术指南 【免费下载链接】OpenCore-Legacy-Patcher 体验与之前一样的macOS 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 您的Mac设备是否因为苹果官方的系统限制而无法升级到最…

作者头像 李华
网站建设 2026/2/23 15:59:57

2026大模型与AI芯片发展趋势:从技术突破到生态构建的全面解析!

摘要 2025年是中国AI产业极具里程碑意义的一年,DeepSeek深度求索等国产大模型的崛起打破了全球顶级大模型市场的国外垄断格局,FP8低精度格式的全行业普及为国产AI芯片发展扫清了关键障碍,推动国产AI芯片实现从“不可用”到“可用”的跨越。 …

作者头像 李华
网站建设 2026/2/22 5:51:34

碧蓝航线Live2D模型提取终极指南:从游戏资源到精美动画

碧蓝航线Live2D模型提取终极指南:从游戏资源到精美动画 【免费下载链接】AzurLaneLive2DExtract OBSOLETE - see readme / 碧蓝航线Live2D提取 项目地址: https://gitcode.com/gh_mirrors/az/AzurLaneLive2DExtract 想要获取碧蓝航线中那些精美的Live2D角色模…

作者头像 李华
网站建设 2026/2/24 22:05:22

HuggingFace镜像网站推荐:国内高速下载IndexTTS 2.0模型权重

HuggingFace镜像网站推荐:国内高速下载IndexTTS 2.0模型权重 在短视频创作、虚拟主播和AI配音日益普及的今天,一个现实问题始终困扰着国内开发者——如何快速、稳定地获取前沿语音合成模型?尤其是像 IndexTTS 2.0 这类由B站开源、技术先进但…

作者头像 李华