Tensorflow 从一般预训练图像模型中提取的特征给出了不同的结果

Tensorflow 从一般预训练图像模型中提取的特征给出了不同的结果,tensorflow,keras,resnet,Tensorflow,Keras,Resnet,测试从InceptionV3和ResNet50预训练模型(使用keras和tensorflow)中提取的特征,对于简单的图像相似性,每个模型都给出了不同的(事实上,非常不同)结果 提取的特征按原样使用并归一化,但结果相同 有人知道为什么吗?假设您指的是在最后一个convblock之后从平坦层提取的特征,这是意料之中的,因为架构不同。因此,特征空间在概念上是不同的,特征只能用于每个模型的相似性检查,并且不匹配 谢谢你的澄清。这证实了预训练模型可以很好地进行分类(比如1000个imagenet类),

测试从InceptionV3和ResNet50预训练模型(使用keras和tensorflow)中提取的特征,对于简单的图像相似性,每个模型都给出了不同的(事实上,非常不同)结果

提取的特征按原样使用并归一化,但结果相同


有人知道为什么吗?

假设您指的是在最后一个convblock之后从平坦层提取的特征,这是意料之中的,因为架构不同。因此,特征空间在概念上是不同的,特征只能用于每个模型的相似性检查,并且不匹配

谢谢你的澄清。这证实了预训练模型可以很好地进行分类(比如1000个imagenet类),但并不真正适合特征提取,因为模型之间的结果不同,这有点像由两个不同的人使用两种不同的技术执行的手动特征工程。你能详细说明为什么要使用不同的模型吗?使用从一个模型中提取的特征,您可以像这样进行图像相似性搜索或图像聚类:我不想使用不同的模型。我试图弄明白为什么使用inceptionv3对image-a进行相似性搜索会返回与使用resnet50对image-a进行相似性搜索完全不同的结果集。即使特征空间不同,为什么相同图像的结果如此不同?很有趣。这确实没有道理。在这种情况下,如果您共享一些代码片段并描述如何准确地进行比较,可能会有所帮助。