繁体   English   中英

Tensorflow:如何在应用程序中使用经过训练的模型?

[英]Tensorflow: How to use a trained model in a application?

我已经训练了一个 Tensorflow 模型,现在我想导出“函数”以在我的 python 程序中使用它。 这是可能的,如果是,如何? 任何帮助都会很好,在文档中找不到太多内容。 (我不想保存会话!)

我现在已经按照你的建议存储了会话。 我现在像这样加载它:

f = open('batches/batch_9.pkl', 'rb')
input = pickle.load(f)
f.close()
sess = tf.Session()

saver = tf.train.Saver()
saver.restore(sess, 'trained_network.ckpt')
y_pred = []

sess.run(y_pred, feed_dict={x: input})

print(y_pred)

但是,当我尝试初始化保护程序时,出现错误“没有要保存的变量”。

我想要做的是:我正在为棋盘游戏编写机器人,输入是棋盘上的情况格式化为张量。 现在我想返回一个张量,它为我提供了接下来要播放的最佳位置,即一个处处为 0 而一个位置处为 1 的张量。

我不知道是否还有其他方法可以做到这一点,但是您可以通过保存会话在另一个 Python 程序中使用您的模型:

您的训练代码:

# build your model

sess = tf.Session()
# train your model
saver = tf.train.Saver()
saver.save(sess, 'model/model.ckpt')

在您的应用程序中:

# build your model (same as training)
sess = tf.Session()
saver = tf.train.Saver()
saver.restore(sess, 'model/model.ckpt')

然后,您可以使用 feed_dict 评估模型中的任何张量。 这显然取决于您的型号。 例如:

#evaluate tensor
sess.run(y_pred, feed_dict={x: input_data})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM