tensorflow::ops::BroadcastTo
#include <array_ops.h>
Транслирует массив для получения совместимой формы.
Краткое описание
Трансляция — это процесс приведения массивов к совместимым формам для выполнения арифметических операций. Две формы совместимы, если для каждой пары измерений они либо равны, либо одно из них равно единице.
Например:
x = tf.constant([[1, 2, 3]]) # Shape (1, 3,) y = tf.broadcast_to(x, [2, 3]) print(y) tf.Tensor( [[1 2 3] [1 2 3]], shape=(2, 3), dtype=int32)
В приведённом выше примере входной Tensor с формой [1, 3] транслируется в выходной Tensor с формой [2, 3].
При трансляции, если у тензора меньше осей, чем необходимо, его форма дополняется единицами слева. Поэтому следующий пример даёт тот же результат, что и предыдущий:
x = tf.constant([1, 2, 3]) # Shape (3,) y = tf.broadcast_to(x, [2, 3])
При выполнении операций с трансляцией, например умножения тензора на скаляр, трансляция (как правило) позволяет сэкономить время или память, поскольку транслируемый тензор не создаётся в памяти.
Однако broadcast_to не даёт таких преимуществ. Создаваемый тензор занимает в памяти полный объём, необходимый для транслированной формы. (Однако в контексте графа broadcast_to может быть объединён со следующей операцией и затем оптимизирован.)
Аргументы:
- scope: объект Scope
- input: Tensor для трансляции.
- shape: одномерный
intTensor. Форма требуемого результата.
Возвращает:
| Конструкторы и деструкторы | |
|---|---|
BroadcastTo(const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input shape) |
| Открытые атрибуты | |
|---|---|
operation | |
output | |
| Открытые функции | |
|---|---|
node() const | ::tensorflow::Node * |
operator::tensorflow::Input() const | |
operator::tensorflow::Output() const | |
Открытые атрибуты
operation
Operation operation
output
::tensorflow::Output output
Открытые функции
BroadcastTo
BroadcastTo( const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input shape )
node
::tensorflow::Node * node() const
operator::tensorflow::Input
operator::tensorflow::Input() const
operator::tensorflow::Output
operator::tensorflow::Output() const
© 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/cc/class/tensorflow/ops/broadcast-to