
摘要
在现实世界中部署机器学习模型时,分布外(Out-of-Distribution, OOD)检测任务至关重要。本文观察到,分布内(In-Distribution, ID)特征与分布外特征的奇异值分布存在显著差异:OOD特征矩阵通常具有比ID特征更大的主奇异值,且OOD样本的类别预测结果主要由该主奇异值及其对应的奇异向量决定。基于这一观察,我们提出了一种简单而有效的事后(post hoc)OOD检测方法——\texttt{RankFeat}。该方法通过从高层特征中移除由最大奇异值及其对应奇异向量构成的秩-1矩阵(即 $\mathbf{X} - \mathbf{s}_1\mathbf{u}_1\mathbf{v}_1^T$),实现对OOD样本的有效识别。\texttt{RankFeat} 在多个基准数据集上取得了当前最优(state-of-the-art)的检测性能,相较于此前最佳方法,平均假阳性率(FPR95)降低了17.90%。本文还通过大量消融实验与全面的理论分析,充分验证了所提方法的有效性与合理性。
代码仓库
kingjamessong/rankfeat
官方
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| out-of-distribution-detection-on-imagenet-1k-10 | RankFeat (ResNetv2-101) | AUROC: 91.7 FPR95: 37.29 |
| out-of-distribution-detection-on-imagenet-1k-12 | RankFeat (ResNetv2-101) | AUROC: 92.15 FPR95: 36.8 |
| out-of-distribution-detection-on-imagenet-1k-3 | RankFeat (ResNetv2-101) | AUROC: 91.91 FPR95: 41.31 |
| out-of-distribution-detection-on-imagenet-1k-8 | RankFeat (ResNetv2-101) | AUROC: 94.07 FPR95: 29.27 |
| out-of-distribution-detection-on-imagenet-1k-9 | RankFeat (ResNetv2-101) | AUROC: 90.93 FPR95: 39.34 |