在训练之后修改张量流图以输出中间值

问题描述 投票:0回答:1

我是TF的新手,所以这是我的免责声明,我所要求的可能没什么用。我很感激对我理解的任何更正。如有必要,我很乐意提供更多代码/信息。

我正在使用以下教程:https://www.oreilly.com/learning/perform-sentiment-analysis-with-lstms-using-tensorflow

我已经将name_scopes添加到变量/占位符/等,以帮助我了解正在发生的事情。而不是发布所有代码,我认为只是发布图形的图像可能足够这个问题:

enter image description here

关于这个图表有很多东西我仍然不明白,所以作为旁注:如果有人有很好的资源来获得这些图表的良好直觉,我会很感激这个指导。

我的理解

看起来图表目前接受input_datalabels的馈送,以便在训练期间计算误差。我认为“准确度”目前是输出(因为它本身没有任何输出?)。对我而言,成本将当前预测和真实来源标签作为输入。

因为我发现这是教程的一部分,当然训练效果很好,我自己也做不到。我愿意忽略这一点,因为我试图在这里抓住直觉。

我的问题

我现在有兴趣在我的图表上只用sess.run()调用input_data,并查看“预测”的结果。这似乎是合理的 - 当我在生产系统中使用这个模型时,我甚至没有标签。重点是要取回预测。

我可以采取哪些步骤,以便我可以调用sess.run并获取新的所需输出?不过我仍然需要能够训练模型吗?我可以使用什么“过程”来训练两个占位符,然后将其减少到一个用于预测?

tensorflow tensorboard
1个回答
1
投票

sess.run的参数始终是对图上节点的引用(即您提供的图像)。

写入Tensorflow使得它只需要上游值的值来计算某个节点的值 - 而不是所有可能的输入。您的问题似乎是如何在不提供真实标签的情况下从网络获取预测(您希望网络在培训期间学习什么)。这是典型的“测试”场景。

由于没有关于您的代码的更多信息,您似乎应该能够简单地执行以下操作:

with tf.Session() as sess:
  predictions_eval = sess.run(predictions, feed_dict={input_data=input_data})
© www.soinside.com 2019 - 2024. All rights reserved.