`variable.name` 和 `variable.op.name` 有什么区别?
What's difference between `variable.name` and `variable.op.name`?
假设 x
是 Variable
,我在教程中看到像 tf.scalar_summary(x.op.name, x)
一样使用 op.name
。我想知道是否可以将 x.op.name
替换为 x.name
一般情况下。
两者有什么区别?它们可以互换吗?
with tf.name_scope('ab'):
a = tf.Variable(tf.constant(1), name="v1")
a.name
u'ab_1/v1:0'
a.op.name
u'ab_1/v1'
现在存储该变量的 Variable.name
property maps to the name of the mutable Tensor
(主要是因为 Variable
可以在任何需要 Tensor
的地方使用)。张量名称是根据生成它们的操作的名称(在本例中为 Variable
操作)和该张量对应的输出索引生成的。
您可以随意使用 tf.scalar_summary(x.name, x)
代替 tf.scalar_summary(x.op.name, x)
,但生成的可视化效果将在标签中包含多余的 ":<N>"
。
假设 x
是 Variable
,我在教程中看到像 tf.scalar_summary(x.op.name, x)
一样使用 op.name
。我想知道是否可以将 x.op.name
替换为 x.name
一般情况下。
两者有什么区别?它们可以互换吗?
with tf.name_scope('ab'):
a = tf.Variable(tf.constant(1), name="v1")
a.name
u'ab_1/v1:0'
a.op.name
u'ab_1/v1'
现在存储该变量的 Variable.name
property maps to the name of the mutable Tensor
(主要是因为 Variable
可以在任何需要 Tensor
的地方使用)。张量名称是根据生成它们的操作的名称(在本例中为 Variable
操作)和该张量对应的输出索引生成的。
您可以随意使用 tf.scalar_summary(x.name, x)
代替 tf.scalar_summary(x.op.name, x)
,但生成的可视化效果将在标签中包含多余的 ":<N>"
。