我认为这个问题可能听起来很奇怪.比方说,有一个张量a
.
x = tf.placeholder(tf.float32, [None, 2400], name="x") y = tf.placeholder(tf.float32, [None, 2400], name="y") a = tf.add(x, y, name="a")
是否有一种有效的方式来引用a
不同的名称,比如out
?我在想像一个虚拟的操作
b = tf.add(a, 0, name="out")
我问这个是因为我正在尝试不同的网络架构,而且无论架构如何,我都希望以一致的名称访问输出张量
tf.get_default_graph().get_tensor_by_name("out:0")`
目前,输出张量取决于fc1/fc1wb:0
或等的架构fc2/fc2wb:0
.如何用特定名称包装最终操作?
这个答案表明tf.Graph
只是附加,你不能修改它.
话虽这么说,重新命名张量的一个更好的方法是使用这样的tf.identity:
tf.identity(a, name="out")
编辑:在找到我自己的一个问题的答案后,我可以看到一个更好的方法来做到这一点:
graph_def.node[].name = "out"
这index
通常是-1
因为最终输出张量在最后graph_def