[论文解读] Rethinking Nearest Neighbors for Visual Classification
本文提出了一种简单但高效的方法,通过在训练和推理阶段均集成k-最近邻(k-NN)来提升现代神经网络分类器的性能。通过利用k-NN预测在训练阶段识别困难样本,并在测试阶段对k-NN与模型的概率进行线性插值,该方法在多种视觉分类任务中实现了最先进性能,尤其在低数据量场景和细粒度识别任务中表现优异,优于标准线性分类器,并展示了经典方法在深度学习时代依然具有持久价值。
Neural network classifiers have become the de-facto choice for current "pre-train then fine-tune" paradigms of visual classification. In this paper, we investigate k-Nearest-Neighbor (k-NN) classifiers, a classical model-free learning method from the pre-deep learning era, as an augmentation to modern neural network based approaches. As a lazy learning method, k-NN simply aggregates the distance between the test image and top-k neighbors in a training set. We adopt k-NN with pre-trained visual representations produced by either supervised or self-supervised methods in two steps: (1) Leverage k-NN predicted probabilities as indications for easy vs. hard examples during training. (2) Linearly interpolate the k-NN predicted distribution with that of the augmented classifier. Via extensive experiments on a wide range of classification tasks, our study reveals the generality and flexibility of k-NN integration with additional insights: (1) k-NN achieves competitive results, sometimes even outperforming a standard linear classifier. (2) Incorporating k-NN is especially beneficial for tasks where parametric classifiers perform poorly and / or in low-data regimes. We hope these discoveries will encourage people to rethink the role of pre-deep learning, classical methods in computer vision. Our code is available at: https://github.com/KMnP/nn-revisit.
研究动机与目标
- 重新评估经典k-NN分类器在现代深度学习流水线中用于视觉分类的作用。
- 探究k-NN是否能够与现代神经网络模型互补,特别是在低数据量或细粒度识别场景中。
- 开发一个统一框架,在训练和推理阶段均集成k-NN,以提升模型的鲁棒性和准确性。
- 证明尽管k-NN是非参数化且‘懒惰’的,但当与预训练的深度特征结合时,其依然具有高度有效性。
- 通过展示其与现代神经网络的互补优势,激发人们对预深度学习方法的重新关注。
提出的方法
- 在训练阶段,该方法利用k-NN预测识别困难样本,并根据k-NN的置信度对交叉熵损失进行缩放,从而迫使模型聚焦于困难样本。
- 在推理阶段,最终预测通过将模型输出与k-NN预测的概率分布进行线性插值得到。
- k-NN分类器直接作用于来自监督或自监督模型的预训练视觉特征,无需重新训练。
- 该方法在多种主干网络(ResNet、ViT、Swin)和预训练目标(ImageNet、MoCo、DINO、Barlow Twins)上均适用,表现出广泛的兼容性。
- 插值系数在验证数据上进行调优,以平衡模型与k-NN预测,提升泛化能力。
- 该方法在多个基准上采用标准线性评估和端到端微调协议进行了评估。
实验结果
研究问题
- RQ1当集成到现代深度学习流水线中时,k-NN是否能提升视觉分类的性能?
- RQ2k-NN在低数据量场景或细粒度识别任务中是否具有特定优势?
- RQ3与仅在推理阶段集成相比,训练阶段集成k-NN预测是否更具有效性?
- RQ4当使用相同特征时,k-NN与标准线性分类器相比表现如何?
- RQ5k-NN能否作为跨多种预训练表征和架构的鲁棒、模型无关组件?
主要发现
- k-NN集成在所有评估的数据集上均提升了性能,包括ImageNet、细粒度基准和NeWT基准,且增益稳定。
- 在ImageNet线性评估协议下,该方法使用ViT-S/16特征实现了80.2%的top-1准确率,优于标准线性分类器。
- 在低数据量场景下(如iNaturalist2021-mini和NeWT基准),k-NN集成带来了显著提升,平均准确率最高提升5.2%。
- 该方法在Caltech-UCSD Birds-200-2011和Stanford Dogs数据集上达到了最先进结果,top-1准确率超过之前SOTA超过1%。
- 在所有评估的主干网络和预训练组合中(包括ResNet-50和ViT-B/16),k-NN始终优于或匹配线性分类器。
- 消融实验确认,联合训练和推理阶段的集成比仅推理阶段集成更有效,在ImageNet上平均提升1.5%。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。