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。
关键设计¶
-
特征-权重向量近邻度 (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 等方法缺少的
-
特征范数过滤 (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 差——它只看聚类不看范数
-
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 检测器
相关论文¶
- [ECCV 2024] GRA: Detecting Oriented Objects Through Group-Wise Rotating and Attention
- [CVPR 2025] Detecting Adversarial Data Using Perturbation Forgery
- [CVPR 2025] Efficient Event-Based Object Detection: A Hybrid Neural Network with Spatial and Temporal Attention
- [CVPR 2025] Show, Don't Tell: Detecting Novel Objects by Watching Human Videos
- [ICCV 2025] Attention to Neural Plagiarism: Diffusion Models Can Plagiarize Your Copyrighted Images!