首页 > 解决方案 > Keras调用不同输入的模型预测会产生相同的结果?

问题描述

在这里,多次调用 predict

    m = tf.keras.models.load_model(model_path, compile=False)
    for i, (img_id, corr) in enumerate(zip(csv_file['id'], csv_file['corr'])):
        img_filename = os.path.join(data_dir, 'data/piccollage_data/train_imgs/{}.png'.format(img_id))
        img = tf.expand_dims(load_image(img_filename), 0)
        result = m.predict(img, steps=1)
        print ('idx:{} result: {}, gt: {}'.format(i, result, corr))

结果让我很困惑:

结果:

我试图查找是否有与此类似的问题,但我只发现它是关于培训问题的链接

而且我还尝试了其他方法,例如将输入更改为数据集(没问题),另一个蛮力解决方案是每个 for 循环重新加载模型(这非常愚蠢),最后一个解决方案似乎使用模型服务链接

所以我想问的是“为什么我上面写的代码会产生同样的结果”?谁能给我线索?

标签: pythontensorflowkeras

解决方案


推荐阅读