跳转至

Detecting Out-of-Distribution through the Lens of Neural Collapse

会议: CVPR 2025
arXiv: 2311.01479
代码: https://github.com/litianliu/NCI-OOD
领域: 目标检测
关键词: OOD检测、神经坍缩、特征几何、权重向量近邻性、等角紧框架

一句话总结

从 Neural Collapse 理论出发,发现中心化后的 ID 特征聚集在预测类别的权重向量附近且远离原点(形成 simplex ETF),据此设计 NCI 检测器——结合特征与权重向量的角度近邻度(pScore)和特征范数过滤,在 CIFAR-10/100 和 ImageNet 多架构上实现最佳综合 OOD 检测性能且推理延迟与 softmax 基线持平。

研究背景与动机

领域现状:OOD 检测的后验(post-hoc)方法分为两大路线:(1) 输出空间方法(MSP、Energy、ODIN 等)利用模型输出的 logits/概率设计 OOD 分数; (2) 特征空间方法(KNN、Mahalanobis 等)利用 ID 特征聚类观察——ID 样本在特征空间成簇,OOD 样本偏离。

现有痛点:(1) 泛化不一致:在 CIFAR-10 上强的方法(如 KNN、Mahalanobis)在 ImageNet 上弱,反之亦然(如 Energy、ASH)——没有方法能同时在两个基准上排名前三。(2) 效率问题:特征空间方法(如 KNN)需要存储训练特征并计算 k 近邻距离,推理延迟高。(3) 缺乏统一理论解释:为什么 ID 特征聚类?OOD 特征为什么偏离?为什么有些方法在某些场景work另一些不work?

核心矛盾:现有方法要么擅长特征聚类场景(CIFAR-10)要么擅长特征扩散场景(ImageNet),没有一个统一框架能解释并弥合这种泛化差距。

本文目标 (1) 从 Neural Collapse 理论统一解释 ID/OOD 特征的几何结构; (2) 设计一个高效且跨数据集、跨架构泛化的 OOD 检测器。

切入角度:Neural Collapse 揭示了训练充分的模型在倒数第二层的四个趋势:类内方差坍缩、类均值形成 ETF、权重向量与类均值对齐、分类简化为最近类中心。作者挖掘了两个关键推论:(a) 中心化后的 ID 特征沿预测类的权重向量方向聚集; (b) ID 特征因需形成 ETF 结构而远离原点。

核心 idea:利用 Neural Collapse 趋势中 ID 特征向权重向量对齐+远离原点的几何特性,设计角度近邻度+范数过滤的 OOD 检测器。

方法详解

整体框架

NCI 是一个 post-hoc 检测器,作用于已训练好的分类器上。给定输入 \(x\),提取倒数第二层特征 \(h\),计算两个指标:(1) 特征与预测类权重向量的角度近邻度 pScore; (2) 特征的 L1 范数。两者线性加权得到最终 OOD 分数:\(\text{NCI} = \text{pScore} + \alpha \|h\|_1\)。分数越低则越可能是 OOD。

关键设计

  1. 特征-权重向量近邻度 (pScore):

    • 功能:衡量中心化特征与预测类权重向量的方向一致性
    • 核心思路:Theorem 3.1 证明在 Neural Collapse 条件下,\((h_c^i - \mu_G) \to \lambda w_c\),即中心化特征趋向权重向量方向。据此定义 pScore 为权重向量在中心化特征方向上的投影模长:\(\text{pScore} = \cos(w_c, h-\mu_G) \cdot \|w_c\|_2\),其中 \(c\) 是预测类,\(\mu_G\) 是训练特征全局均值。采用投影模长而非纯余弦相似度,因为不同类的权重向量模长不同——权重向量大的类有更大的决策域,应该有更宽的检测"锥体"
    • 设计动机:避免欧氏距离需要估计缩放因子 \(\lambda\)(在未完全坍缩的模型中不准确)。角度度量只需要方向信息,对不完全 Neural Collapse 的实际模型更鲁棒。同时通过权重向量引入了类别特异性信息,这是 KNN 等方法缺少的
  2. 特征范数过滤 (Feature Norm Filtering):

    • 功能:补充 pScore 在 ID 聚类不明显场景下的不足
    • 核心思路:Neural Collapse 要求特征形成 simplex ETF——等角等范数的最大分离结构,这意味着 ID 特征需要有足够的范数来支撑空间展开。相比之下 OOD 特征没有被训练过程驱动远离原点,因此倾向于靠近原点。使用 L1 范数 \(\|h\|_1\) 来过滤那些靠近原点的 OOD 样本,检测分数为 \(\text{NCI} = \text{pScore} + \alpha \|h\|_1\)
    • 设计动机:在 CIFAR-10 上 ID 聚类很强,pScore 本身就够用。但在 ImageNet 上聚类较弱(类间距小),pScore 效果打折,此时范数过滤成为关键补充。这解释了为什么 KNN 在 CIFAR-10 好但 ImageNet 差——它只看聚类不看范数
  3. Neural Collapse 理论的松弛使用:

    • 功能:确保方法在实际模型(未完全坍缩)上仍然有效
    • 核心思路:完全 Neural Collapse 需要训练到零误差,但实际模型通常提前停止训练。作者引用 [He & Su 2023] 的结果表明 Neural Collapse 的趋势在训练早期就已建立——不需要完全坍缩,趋势足以使 ID/OOD 分离。在 CIFAR-10 ResNet-18 上,epoch 50 时 pScore 就已能有效检测 SVHN(AUROC 94.44 vs 基线 91.27)
    • 设计动机:避免方法的适用性被过强的理论前提限制,确保在各种现成模型上都能直接使用

损失函数 / 训练策略

NCI 是纯 post-hoc 方法,无需训练。只需一次性计算训练集特征全局均值 \(\mu_G\)。超参数 \(\alpha\)\(\{10^{-4}, 10^{-3}, 10^{-2}, 10^{-1}\}\) 四个尺度中基于验证集选择,对选择不敏感。

实验关键数据

主实验

方法 CIFAR-10 AUROC↑ ImageNet AUROC↑ 平均 AUROC 推理延迟(ms/图)
MSP* 91.3 80.9 86.1 0.09
KNN 96.3 81.2 88.8 70.0
Energy 91.7 85.5 88.6 0.12
ASH 92.1 87.1 89.6 0.13
Scale 92.0 86.8 89.4 0.12
NCI 95.7 86.2 91.0 0.09

消融实验

配置 ImageNet AUROC 说明
pScore only (w/o filter) 82.5 仅用角度近邻度
L1 norm only 84.1 仅用范数过滤
NCI (pScore + L1) 86.2 两者互补
pScore + L2 norm 85.5 L1 优于 L2
KNN + L1 filter 84.8 过滤也能提升 KNN

关键发现

  • NCI 是唯一在 CIFAR-10 和 ImageNet 两个基准上都排名前三的方法,平均 AUROC 91.0 最高
  • 推理延迟仅 0.09ms/图,与最简单的 MSP 基线持平,比 KNN(70ms)快 778 倍
  • 范数过滤在 ImageNet 上贡献 +3.7 AUROC,但在 CIFAR-10 上几乎无增益——验证了聚类强度与过滤重要性的互补关系
  • 在 ViT 和 Swin v2 架构上也有效,证明了跨架构泛化能力
  • 将 L1 过滤加到 KNN 上也有显著提升,验证了范数过滤思路的通用性

亮点与洞察

  • 用 Neural Collapse 统一解释两大 OOD 检测范式:聚类型方法(KNN)利用了 NC 的类内坍缩特性,能量型方法(Energy/ASH)隐含利用了 ETF 的范数特性。NCI 显式结合两者,解决了跨场景泛化问题。这种"找到现有方法共同的理论根基再统一之"的研究范式值得学习
  • O(P) 复杂度的类别感知检测:pScore 只需要一次向量点乘+一次范数计算,时间复杂度为倒数第二层维度 \(P\),远低于 KNN 的 \(O(NP)\)\(N\) 为训练集大小)。通过权重向量引入类别信息是核心巧妙点——用"锚点"替代"邻居"
  • 松弛使用理论而非死守条件:明确指出不需要完全 Neural Collapse,趋势就够用,这使方法适用于任意现成分类器

局限与展望

  • L1 范数过滤的强度参数 \(\alpha\) 仍需验证集选择,虽然只有 4 个候选值但并非完全免参
  • 在极度类别不平衡的长尾场景下 Neural Collapse 趋势可能不明显,方法效果需要评估
  • 全局均值 \(\mu_G\) 的计算依赖训练数据的代表性——如果训练数据分布有偏,均值估计可能不准
  • 未讨论对抗样本场景——精心设计的对抗样本可能同时具有高 pScore 和高范数

相关工作与启发

  • vs KNN: KNN 关注聚类但忽略范数,在 CIFAR-10 好但 ImageNet 差。NCI 通过加入范数过滤修复了这个泛化问题,同时推理快 778 倍
  • vs Energy/ASH/Scale: 这些方法隐含使用了特征范数信息(log-sum-exp 等价于 LogSumExp of projections),但忽略了类别聚类,在 CIFAR-10 上弱。NCI 通过 pScore 引入聚类信息来补充
  • vs NECO: 同样受 Neural Collapse 启发,但 NECO 只分析特征空间,需要昂贵矩阵乘法。NCI 利用权重向量与特征的交互,更高效且引入了类别信息

评分

  • 新颖性: ⭐⭐⭐⭐ Neural Collapse 视角解释 OOD 检测有新意,但核心组件(余弦相似度+范数)不算全新
  • 实验充分度: ⭐⭐⭐⭐⭐ 多数据集、多架构(ResNet/DenseNet/ViT/Swin)、13 个基线方法、完备消融
  • 写作质量: ⭐⭐⭐⭐⭐ 理论推导严谨清晰,实验分析深入,连接已有方法的讨论极好
  • 价值: ⭐⭐⭐⭐ 提供了统一理论框架并实现了高效实用的 OOD 检测器

相关论文