我有一个简单的模型,我已经对其进行了训练,现在看来工作得很好,我想使用需要保存模型的tensorflow服务。
但是我没有看到一种使用simple_save()指定输入数据进行任何预处理的方法
我的模特:
model = keras.Sequential()
model.add(
keras.layers.Embedding(maxAlphabetDictValue + 1, 8, input_length=maxVariableLength))
model.add(keras.layers.CuDNNLSTM(12))
model.add(keras.layers.Dense(len(conventions)) # output layer
model = keras.models.load_model(“ model.h5”)
我如何进行预测:
variable = "test_Adam"
variable = preparePredictionInput([variable], alphabetDict, maxVariableLength)
result = model.predict(variable, steps=1, verbose=1)
因此,上面的变量是我将作为输入接收或作为输入传递给Serving API的东西,然后我要对传递的值运行'preparePredictionInput'。
但是我找不到如何使用save_model.simple_save()实现此目标的示例
sess = keras.backend.get_session()
tf.saved_model.simple_save(sess, ".", inputs={model.inputs}, outputs={model.outputs})
sess.close()
答案 0 :(得分:0)
您应该在模型的开头添加一个Lambda层。在lambda层中,您可以指定一个函数来转换您的输入。