Inception/ResNet 在特征提取方面做得比 SIFT 差

数据挖掘 深度学习 特征提取 成立之初
2022-03-02 23:37:32

我们正在做关于多模式检索的论文。它基本上是用其他方式搜索不同的方式(多媒体例如:文本、视频、图像......)。即使用文本查询搜索图像数据库。

对于任何模态,我们首先需要将其映射到具有恒定数量特征的空间,并且这些特征必须以某种方式表达数据。

对于图像,我们评估的论文使用 SIFT 特征提取,我们使用NUSWIDE评估不同的方法,它已经以 SIFT 格式存在,所以我们评估的大多数论文都使用这些现有的数据集。

我们试图通过使用 Inception 或 Resnet 来改进这种特征提取机制,并将恰好在 softmax 之前的层作为我们的特征。但是,它们的性能比 SIFT 差得多。我们使用tensorflow和 keras 来提取特征。

所以知道为什么 resnet/inception 的性能会比 SIFT 差吗?

1个回答

检查数据集后,我们发现问题出在 NUSWIDE 数据集本身。几乎一半的数据集没有监督标签(人类输入的 81 个标签)。此外,我们没有在整个数据集上进行训练,而是随机抽样,因为某些方法要求将整个数据集加载到内存中,这是不可行的。在知道这一点之后,我们删除了没有监督标签的元组,提取了特征并进行了 PCA,得到了与 SIFT 相当的结果(在某些情况下得到了改进)。因此,如果您遇到类似问题,我的建议是:

  • 确保您的数据标签有效。
  • 使用多个层进行特征提取,而不仅仅是网络中较深的层。
  • 使用 PCA 代替随机抽样数据集对我们来说效果很好。