View source on GitHub |
A context manager for use when defining a Python op.
tf.name_scope(
name
)
This context manager pushes a name scope, which will make the name of all operations added within it have a prefix.
For example, to define a new Python op called my_op
:
def my_op(a, b, c, name=None):
with tf.name_scope("MyOp") as scope:
a = tf.convert_to_tensor(a, name="a")
b = tf.convert_to_tensor(b, name="b")
c = tf.convert_to_tensor(c, name="c")
# Define some computation that uses `a`, `b`, and `c`.
return foo_op(..., name=scope)
When executed, the Tensors a
, b
, c
, will have names MyOp/a
, MyOp/b
,
and MyOp/c
.
If the scope name already exists, the name will be made unique by appending
_n
. For example, calling my_op
the second time will generate MyOp_1/a
,
etc.
name
: The prefix to use on all names created within the name scope.name
ValueError
: If name is None, or not a string.__enter__
__enter__()
Start the scope block.
The scope name.
ValueError
: if neither name
nor default_name
is provided
but values
are.__exit__
__exit__(
type_arg, value_arg, traceback_arg
)