Keras预测模型-如何获得第一个元素



嗨,我正在做一个预测水果的小模型。我有一个函数,它运行一系列predfor各种图像,它们输出预测,如下所示。

[[0.1。0。0。0。0。0。0。0.]]

我知道输出不是数组,但我想知道是否有可能检查某些位置的值。例如,如果它是一个数组,我会这样做:

if prediction[0] == 1:
print(prediction, "Apple")

然而,由于不是,我不知道如何检查里面的值。有什么方法可以检查吗?

功能如下:

def fruit_prediction(image_dir):
img_list = os.listdir(image_dir)
print(img_list)
for fruits in img_list:
path = os.path.join(image_dir, fruits)
img = image.load_img(path, target_size = (150, 150))
array = image.img_to_array(img)
x = np.expand_dims(array, axis=0)
vimage = np.vstack([x])
prediction = model.predict(vimage)
print(prediction, fruits)

使用np.argmax((可以解决问题

这里np.argmax(预测(将返回最高概率的指数。现在你有了指数。有了指数的帮助,你可以很容易地确定水果

前任。

#let your food rep index in one hot encoding like below.
fruit={0:'apple',1:'orange',2:'banana'....like that}

现在你有了预测,正如你在上面的函数中计算的那样

index=np.argmax(prediction)
print("fruit name",fruit[index])

嗨,伙计们,我通过使用prediction.argmax((修复了这个问题,就像这个一样

if prediction.argmax() == 0:
print(np.around(prediction, 3), "n(File: ", fruit, ") Prediction: Applen")

最新更新