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

2024-04-20 11:31:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经训练了一个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的张量。


Tags: 函数文档模型程序input棋盘tftensorflow
1条回答
网友
1楼 · 发布于 2024-04-20 11:31:35

我不知道是否有其他方法可以做到这一点,但是您可以通过保存会话在另一个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计算模型中的任何张量,这显然取决于模型。例如:

session.run(y_pred, feed_dict={x: input_data})

相关问题 更多 >