我刚开始使用tensorflow。我能够成功地为我创建的数据集进行训练。现在问题是我将如何使用此模型进行预测。我想将它作为一个REST服务,我将能够传递一些值并将预测作为响应。任何有用的链接也欢迎。该模型目前在VM上。
谢谢:)
答案 0 :(得分:2)
您是否在GCP上看过Cloud ML?它可能正是您正在寻找的东西 https://cloud.google.com/ml/
您可能需要对模型的体系结构进行一些调整 - 例如变量批量大小以及向集合添加输入/输出 - 但在documentation.
中对它们进行了详细解释如果您决定更新模型的性能,可扩展性和短暂的停机时间不是问题,您还可以考虑只安装一个带有tensorflow的简单烧瓶服务器。
如果您不想使用Cloud ML并需要提供大量请求,请查看tensorflow serving。
答案 1 :(得分:1)
首先:尝试保存并加载模型:https://www.tensorflow.org/versions/r0.11/how_tos/variables/index.html
然后,在训练之后,您只需致电:
rest_prediction = sess.run(prediction_tensor, feed_dict={x_tensor: user_input})
一个重要的区别是,在训练期间您有batch_size输入,但是当您有一个REST服务器时,您有1个输入。张量的形状(https://www.tensorflow.org/versions/r0.11/resources/dims_types.html)应该是可变的。如何实现这一目标可以在这里找到:https://www.tensorflow.org/versions/r0.11/resources/faq.html#tensor-shapes
如果您发布简短的代码段,我们可能会帮助您做得更好。