tf.print
| Просмотреть исходный код на GitHub |
Выводит указанные входные данные.
tf.print(
*inputs, **kwargs
)
Оператор TensorFlow, который выводит указанные входные данные в желаемый поток вывода или уровень регистрации. Входные данные могут быть плотными или разреженными тензорами, примитивными Python-объектами, структурами данных, содержащими тензоры, и выводимыми Python-объектами. Выводимые тензоры рекурсивно покажут первые и последние элементы каждого измерения для обобщения.
Пример:
Использование с одним входом:
tensor = tf.range(10) tf.print(tensor, output_stream=sys.stderr)
(Это выводит "[0 1 2 ... 7 8 9]" в sys.stderr)
Использование с несколькими входами:
tensor = tf.range(10)
tf.print("tensors:", tensor, {2: tensor * 2}, output_stream=sys.stdout)
(Это выводит "tensors: [0 1 2 ... 7 8 9] {2: [0 2 4 ... 14 16 18]}" в sys.stdout)
Изменение разделителя ввода:
tensor_a = tf.range(2) tensor_b = tensor_a * 2 tf.print(tensor_a, tensor_b, output_stream=sys.stderr, sep=',')
(Это выводит "[0 1],[0 2]" в sys.stderr)
Использование в tf.function:
@tf.function
def f():
tensor = tf.range(10)
tf.print(tensor, output_stream=sys.stderr)
return tensor
range_tensor = f()
(Это выводит "[0 1 2 ... 7 8 9]" в sys.stderr)
@compatibility(TF 1.x Graphs and Sessions) В графах, созданных вручную за пределами tf.function, этот метод возвращает созданный оператор TF, который выводит данные. Чтобы убедиться, что оператор выполняется, пользователи должны передать полученный оператор методу run tf.compat.v1.Session или использовать оператор в качестве зависимости управления для выполняемых операций, указав with tf.compat.v1.control_dependencies([print_op]). @end_compatibility
Использование совместимости в графах TF 1.x:
sess = tf.compat.v1.Session()
with sess.as_default():
tensor = tf.range(10)
print_op = tf.print("tensors:", tensor, {2: tensor * 2},
output_stream=sys.stdout)
with tf.control_dependencies([print_op]):
tripled_tensor = tensor * 3
sess.run(tripled_tensor)
(Это выводит "tensors: [0 1 2 ... 7 8 9] {2: [0 2 4 ... 14 16 18]}" в sys.stdout)
Примечание: В Jupyter-тетрадях и колабах tf.print выводит данные в выводе ячейки тетради. Он не будет записывать данные в журналы консоли ядра тетради.
| Аргументы | |
|---|---|
*inputs | Позиционные аргументы, являющиеся входными данными для вывода. Входные данные в выводимом выходе будут разделены пробелами. Входные данные могут быть примитивными Python-объектами, тензорами, структурами данных, такими как словари и списки, которые могут содержать тензоры (при этом структуры данных могут быть вложены произвольным образом), и выводимые Python-объекты. |
output_stream | Поток вывода, уровень регистрации или файл для вывода. По умолчанию sys.stderr, но также поддерживаются sys.stdout, tf.compat.v1.logging.info, tf.compat.v1.logging.warning, tf.compat.v1.logging.error, absl.logging.info, absl.logging.warning и absl.logging.error. Чтобы вывести в файл, передайте строку, начинающуюся с "file://", за которой следует путь к файлу, например, "file:///tmp/foo.out". |
summarize | Первые и последние summarize элементы в каждом измерении печатаются рекурсивно для каждого тензора. Если None, то первые 3 и последние 3 элемента каждого измерения печатаются для каждого тензора. Если установлено в -1, будут выведены все элементы каждого тензора. |
sep | Строка, используемая для разделения входов. По умолчанию " ". |
end | Конечный символ, который добавляется в конец выводимой строки. По умолчанию символ новой строки. |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
None при выполнении в режиме eager. Во время трассировки графа возвращает оператор TF, который выводит указанные входные данные в указанный поток вывода или уровень регистрации. Этот оператор будет выполняться автоматически, за исключением случаев внутри tf.compat.v1 графов и сессий. |
| Исключения | |
|---|---|
ValueError | Если указан неподдерживаемый поток вывода. |
© 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/print