文档 https://keras.io/models/model/#predict表示 model.predict 返回预测的 Numpy 数组。 在 Keras API 中,有办法区分这些数组中的哪些是哪些吗?在 TF 实现中怎么样?
在文档同一页的顶部,他们说“模型可以使用列表指定多个输入和输出”。如果相反,通过字典,似乎没有什么问题:
my_model = tf.keras.models.Model(inputs=my_inputs_dict, outputs=my_outputs_dict)
当调用 model.fit
时,相同的文档说“如果模型中的输入层被命名,您还可以传递将输入名称映射到 Numpy 数组的字典。”
如果将 my_output_dict
中的键或 my_output_dict
中的字典值(层)名称附加到 my_model 的输出,那就太好了。预测(...)
如果我使用以下命令将模型保存为 TensorFlow 的 saving_model 格式 protobuf tf.keras.model.save tf.serving API 以这种方式工作——使用命名的输入和输出...
最佳答案
使用my_model.output_names
给定
my_model = tf.keras.models.Model(inputs=my_inputs_dict, outputs=my_outputs_dict)
根据my_model.output_names
自行创建dict
,它是按预测顺序排列的输出层name
属性的列表
prediction_list = my_model.predict(my_test_input_dict)
prediction_dict = {name: pred for name, pred in zip(my_model.output_names, prediction_list)}
关于python - Keras 的 model.predict 可以返回字典吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57277926/