Keras:在imagenet上获取预训练模型的标签名称

时间:2018-08-25 14:28:59

标签: python machine-learning keras pre-trained-model imagenet

我正在使用Imagenet上预先训练的Keras Inception_v3:

base_model = InceptionV3(weights='imagenet', include_top=True)

当我根据生成的图像进行预测时,我得到的输出矢量的形状为(n,1000),其中n是给定的图像数量。因此,现在,如果我想解释结果,我需要用于训练模型的1000个输出类的名称...但是我找不到它!

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

您可以使用changeLabel()方法:

viewDidLoad()

来自source code

decode_predictions

显然,它不是特定于Inception_V3。您可以导入它并将其用于Imagenet上的任何预训练模型。或者,您可以使用以下命令导入它:

from keras.applications.inception_v3 import decode_predictions

preds = model.predict(x)
print('Predicted:', decode_predictions(preds, top=10))

# Predicted: [(u'n02504013', u'Indian_elephant', 0.0042589349), ...]