BroadcastTo

public final class BroadcastTo

Broadcast an array for a compatible shape.

Broadcasting is the process of making arrays to have compatible shapes for arithmetic operations. Two shapes are compatible if for each dimension pair they are either equal or one of them is one.

For example:

>>> 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)

In the above example, the input Tensor with the shape of `[1, 3]` is broadcasted to output Tensor with shape of `[2, 3]`.

When broadcasting, if a tensor has fewer axes than necessary its shape is padded on the left with ones. So this gives the same result as the previous example:

>>> x = tf.constant([1, 2, 3]) # Shape (3,) >>> y = tf.broadcast_to(x, [2, 3])

When doing broadcasted operations such as multiplying a tensor by a scalar, broadcasting (usually) confers some time or space benefit, as the broadcasted tensor is never materialized.

However, `broadcast_to` does not carry with it any such benefits. The newly-created tensor takes the full memory of the broadcasted shape. (In a graph context, `broadcast_to` might be fused to subsequent operation and then be optimized away, however.)

Public Methods

Output<T>
asOutput()
Returns the symbolic handle of a tensor.
static <T, U extends Number> BroadcastTo<T>
create(Scope scope, Operand<T> input, Operand<U> shape)
Factory method to create a class wrapping a new BroadcastTo operation.
Output<T>
output()
A Tensor.

Inherited Methods

Public Methods

public Output<T> asOutput ()

Returns the symbolic handle of a tensor.

Inputs to TensorFlow operations are outputs of another TensorFlow operation. This method is used to obtain a symbolic handle that represents the computation of the input.

public static BroadcastTo<T> create (Scope scope, Operand<T> input, Operand<U> shape)

Factory method to create a class wrapping a new BroadcastTo operation.

Parameters
scope current scope
input A Tensor to broadcast.
shape An 1-D `int` Tensor. The shape of the desired output.
Returns
  • a new instance of BroadcastTo

public Output<T> output ()

A Tensor.