tf.autograph.to_graph
Преобразует Python-объект в граф TensorFlow.
tf.autograph.to_graph(
entity, recursive=True, experimental_optional_features=None
)
Также см.: tf.autograph.to_code, tf.function.
В отличие от tf.function, to_graph является низкоуровневым транспилятором, который преобразует Python-код в код графа TensorFlow. Он не реализует кэширование, управление переменными или создание реальных операций и лучше всего подходит в случаях, когда требуется больший контроль над сгенерированным графом TensorFlow. Другое отличие от tf.function заключается в том, что to_graph не будет оборачивать граф в функцию TensorFlow или Python-вызываемый объект. Внутренне, tf.function использует to_graph.
Пример использования:
def f(x):
if x > 0:
y = x * x
else:
y = -x
return y
converted_f = to_graph(f)
x = tf.constant(2)
converted_f(x) # converted_foo is like a TensorFlow Op.
<tf.Tensor: shape=(), dtype=int32, numpy=4>Поддерживаемые Python-объекты включают:
- функции
- классы
- методы объектов
Функции преобразуются в новые функции с преобразованным кодом.
Классы преобразуются путём создания нового класса, методы которого используют преобразованный код.
Методы преобразуются в несвязанные функции, которые имеют дополнительный первый аргумент, называемый self.
Для ознакомления с руководством, см. Руководство tf.function и AutoGraph. Для более подробной информации см. Документацию по справке AutoGraph.
| Аргументы | |
|---|---|
entity | Python-вызываемый объект или класс для преобразования. |
recursive | Необходимо ли рекурсивно преобразовывать любые функции, которые может вызывать преобразованная функция. |
experimental_optional_features | None, кортеж или одиночное значение tf.autograph.experimental.Feature. |
| Возвращаемое значение | |
|---|---|
То же, что и entity, преобразованная Python-функция или класс. |
| Исключения | |
|---|---|
ValueError | Если объект не удалось преобразовать. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/autograph/to_graph