tf.autograph.to_graph
| Просмотреть исходный код на GitHub |
Преобразует 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/versions/r2.9/api_docs/python/tf/autograph/to_graph