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
.
Inside a tf.function
, 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 not a string. |
Attributes | |
---|---|
name |
__enter__
__enter__()
Start the scope block.
Returns | |
---|---|
The scope name. |
__exit__
__exit__( type_arg, value_arg, traceback_arg )
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/name_scope