View source on GitHub |
A context manager for use when defining a Python op.
Inherits From: name_scope
tf.compat.v2.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.
Args | |
---|---|
name
|
The prefix to use on all names created within the name scope. |
Raises | |
---|---|
ValueError
|
If name is None, or not a string. |
Attributes | |
---|---|
name
|
Methods
__enter__
__enter__()
Start the scope block.
Returns | |
---|---|
The scope name. |
Raises | |
---|---|
ValueError
|
if neither name nor default_name is provided
but values are.
|
__exit__
__exit__(
type_arg, value_arg, traceback_arg
)