在Tensorflow中使用DenseFeatures保存和加载模型

时间:2020-03-25 10:18:11

标签: python tensorflow machine-learning keras

让我们考虑使用TF对结构化数据进行分类的官方示例: https://colab.research.google.com/github/tensorflow/docs/blob/master/site/en/tutorials/structured_data/feature_columns.ipynb

为了预测目标python应用程序中的新观察结果,我应该如何保存和加载这种(已经拟合好的)模型?

如果保存(拟合模型后)为

model.save('test_model')

,然后使用以下命令将其加载到我的目标应用程序中(或直接在同一笔记本中):

new_model = tf.keras.models.load_model('./test_model')
new_model.summary() 

摘要将产生以下错误:

ValueError: This model has not yet been built. Build the model first by calling `build()` or calling `fit()` with some data, or specify an `input_shape` argument in the first layer(s) for automatic build.

问题似乎与输入管道有关,因为我们的第一层是DenseFeatures层,没有任何指定的输入形状。应该如何更改?

最后,在这种情况下,我们将获得11个要素的观察结果(例如具有要素值的numpy数组),我们希望将其提交给模型的predict()方法。 我找不到有关如何使用DenseFeature(输入)层保存拟合模型然后加载它以执行预测的任何示例。 在要素图层上指定input_shape=(11,)也不起作用。 非常感谢

0 个答案:

没有答案