张量流中不可馈送什么?

时间:2017-12-14 05:07:36

标签: python tensorflow

我尝试过以下代码。但是我找不到张量流中不可喂食的东西。有人能告诉我什么是不可喂食的吗?

#!/usr/bin/env python
# vim: set noexpandtab tabstop=2 shiftwidth=2 softtabstop=-1 fileencoding=utf-8:

import tensorflow as tf

x = tf.Variable(3)
y = tf.constant(3)
z = tf.add(1, 2)
with tf.Session() as sess:
    print sess.graph.is_feedable(x)
    print sess.graph.is_feedable(y)
    print sess.graph.is_feedable(z)

1 个答案:

答案 0 :(得分:2)

除非明确禁止通过tf.Graph.prevent_feeding方法进食,否则所有张量都是可输体的(包括常数,如您所见)。可以直接或间接地调用此方法,例如,tf.contrib.util.constant_value函数的作用:

  

注意:如果constant_value(tensor)返回非None结果,则无法再为tensor提供不同的值。这允许此函数的结果影响构造的图形,并允许静态形状优化。

示例代码:

y = tf.constant(3)
tf.contrib.util.constant_value(y)  # 3

with tf.Session() as sess:
  print sess.graph.is_feedable(y)  # False!