tf.Operation
| Просмотреть исходный код на GitHub |
Представляет узел графа, выполняющий вычисления над тензорами.
tf.Operation(
node_def, g, inputs=None, output_types=None, control_inputs=None,
input_types=None, original_op=None, op_def=None
)
Операция — это узел в tf.Graph, который принимает ноль или более объектов Tensor, и генерирует ноль или более объектов Tensor в качестве выходных данных. Объекты типа Operation создаются путём вызова конструктора Python-операции (например, tf.matmul) в контексте tf.function или в контексте менеджера tf.Graph.as_default.
Например, в контексте tf.function, c = tf.matmul(a, b) создаёт операцию типа "MatMul", которая принимает тензоры a и b в качестве входных данных и генерирует тензор c в качестве выходного.
Если используется tf.compat.v1.Session, операцию tf.Graph можно выполнить, передав её в tf.Session.run. op.run() — это сокращение для вызова tf.compat.v1.get_default_session().run(op).
| Аргументы | |
|---|---|
node_def | node_def_pb2.NodeDef. NodeDef для Operation. Используется для атрибутов node_def_pb2.NodeDef, обычно name, op, и device. Атрибут input здесь не важен, так как он будет вычислен при генерации модели. |
g | Родительский граф. |
inputs | Список объектов Tensor. Входные данные для данной Operation. |
output_types | Список объектов DType . Список типов тензоров, вычисляемых этой операцией. Длина этого списка определяет количество выходных точек Operation. |
control_inputs | Список операций или тензоров, от которых требуется зависимость контроля. |
input_types | Список объектов DType, представляющих типы тензоров, принимаемых Operation. По умолчанию используется [x.dtype.base_dtype for x in inputs]. Операции, которые ожидают входные данные ссылочного типа, должны явно указать их. |
original_op | Необязательно. Используется для ассоциации новой Operation с существующей Operation (например, реплики с операцией, которая была реплицирована). |
op_def | Необязательно. Протокол op_def_pb2.OpDef , описывающий тип операции, которую представляет эта Operation . |
| Исключения | |
|---|---|
TypeError | если входные данные управления не являются операциями или тензорами, или если node_def не является NodeDef, или если g не является Graph, или если inputs не являются тензорами, или если inputs и input_types несовместимы. |
ValueError | если имя node_def не является допустимым. |
| Атрибуты | |
|---|---|
control_inputs | Объекты Operation, от которых данная операция зависит с точки зрения управления. Перед выполнением этой операции TensorFlow гарантирует, что операции в |
device | Имя устройства, на которое назначена эта операция, если таковое имеется. |
graph | Граф, содержащий эту операцию. |
inputs | Последовательность объектов Tensor, представляющих входные данные данных для этой операции. |
name | Полное имя этой операции. |
node_def | Возвращает представление NodeDef этой операции. |
op_def | Возвращает протокол OpDef , представляющий тип этой операции. |
outputs | Список объектов Tensor, представляющих выходные данные этой операции. |
traceback | Возвращает стек вызовов из момента создания данной операции. |
type | Тип операции (например, "MatMul"). |
Методы
colocation_groups
colocation_groups()
Возвращает список групп совместного размещения операции.
get_attr
get_attr(
name
)
Возвращает значение атрибута этой операции с заданным name.
| Аргументы | |
|---|---|
name | Имя атрибута для извлечения. |
| Возвращаемое значение | |
|---|---|
| Значение атрибута в виде объекта Python. |
| Исключения | |
|---|---|
ValueError | Если у этой операции нет атрибута с заданным name . |
run
run(
feed_dict=None, session=None
)
Выполняет эту операцию в Session.
Вызов этого метода выполнит все предыдущие операции, которые создают входные данные, необходимые для этой операции.
Примечание: Перед вызовомOperation.run(), её граф должен быть запущен в сессии, и либо должна быть доступна сессия по умолчанию, либоsessionдолжна быть явно указана.
| Аргументы | |
|---|---|
feed_dict | Словарь, сопоставляющий объекты Tensor с значениями подстановки. См. tf.Session.run для описания допустимых значений подстановки. |
session | (Необязательно.) Session для запуска этой операции. Если не указано, будет использоваться сессия по умолчанию. |
values
values()
УСТАРЕЛО: Используйте выходы.
© 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.4/api_docs/python/tf/Operation