I wonder if this is the correct understanding:
All tensors are derived from some operation, and operations are either given a name in the constructor, or given the default name for a particular kind of operation. If the name is not unique, TensorFlow automatically handles this by appending "_1"
, "_2"
, etc. An operation with n tensor outputs name these tensors "op_name:0"
, "op_name:1"
, ..., "op_name:n-1"
.
One problem seems to arise: if x
is a tf.Variable
, then x.name
gives "variable_name:0"
. This is confusing: to what does "variable_name"
refer?