DINOv2在k-NN中远差于SigLIP。这是预期的吗?[R]

Reddit r/MachineLearning 论文

摘要

一位研究人员报告,在细粒度汽车分类任务中使用k-NN时,冻结的SigLIP2(92%)和DINOv2(41%)嵌入之间存在惊人的50个百分点的准确率差距,寻求了解线性探针是否能缩小差距,或者DINOv2是否不适合检索。

我在做一门关于细粒度汽车分类的学士论文(从列表照片中区分大众高尔夫的不同代数)。简单的设置:冻结编码器 → 嵌入 → 加权k-NN。在我的小数据集上(175训练/132测试):SigLIP2 SO400M:~92%,CLIP ViT-L:~59%,DINOv2 Giant:~41%。我原以为可能是余弦距离与欧氏距离的问题,但我的嵌入已经进行了L2归一化,所以两者给出的排名相同。两种都试了,DINOv2仍然停留在41%。我理解SigLIP是经过对比训练的,因此其空间基本上是为余弦相似度构建的,而DINOv2是自监督的,可能需要一个训练好的头部才能发挥效果。但50个百分点的差距仍然让我觉得很巨大。有人在这里尝试过在细粒度任务上使用DINOv2配合线性探针吗?它真的能追上来,还是它根本就不是适合检索的工具?另外,如果我遗漏了某些显而易见的东西(选错层、错误池化等),也欢迎提供建议。
查看原文

相似文章

使用合成查询探测比较嵌入模型 [R]

Reddit r/MachineLearning

作者提出了合成查询探测(Synthetic Query Probing),这是一种简单而有效的方法,通过比较不同嵌入模型之间的相似度匹配分数,而非原始嵌入空间,来比较不同的嵌入模型。论文展示了如Ada和Titan等模型之间的非线性关系,为更换嵌入模型和设定检索阈值提供了实用指导。