Attend the Women in ML Symposium on December 7 Register now
Stay organized with collections Save and categorize content based on your preferences.


#include <array_ops.h>

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


  • scope: A Scope object
  • input: A Tensor to broadcast.
  • shape: An 1-D intTensor. The shape of the desired output.


Constructors and Destructors

BroadcastTo(const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input shape)

Public attributes


Public functions

node() const
::tensorflow::Node *
operator::tensorflow::Input() const
operator::tensorflow::Output() const

Public attributes


Operation operation


::tensorflow::Output output

Public functions


  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input shape


::tensorflow::Node * node() const 


 operator::tensorflow::Input() const 


 operator::tensorflow::Output() const