mindspore.ops.BroadcastTo
- class mindspore.ops.BroadcastTo(*args, **kwargs)[source]
Broadcasts input tensor to a given shape.
Input shape can be broadcast to target shape if for each dimension pair they are either equal or input is one or the target dimension is -1. In case of -1 in target shape, it will be replaced by the input shape’s value in that dimension.
When input shape is broadcast to target shape, it starts with the trailing dimensions.
- Parameters
shape (tuple) – The target shape to broadcast. Can be fully specified, or have -1 in one position where it will be substituted by the input tensor’s shape in that position, see example.
- Inputs:
input_x (Tensor) - The input tensor. The data type should be one of the following types: float16, float32, int32, int8, uint8.
- Outputs:
Tensor, with the given shape and the same data type as input_x.
- Raises
TypeError – If shape is not a tuple.
ValueError – Given a shape tuple, if it has several -1; or if the -1 is in an invalid position such as one that does not have a opposing dimension in an input tensor; or if the target and input shapes are incompatible.
- Supported Platforms:
Ascend
GPU
Examples
>>> shape = (2, 3) >>> input_x = Tensor(np.array([1, 2, 3]).astype(np.float32)) >>> broadcast_to = ops.BroadcastTo(shape) >>> output = broadcast_to(input_x) >>> print(output) [[1. 2. 3.] [1. 2. 3.]]
>>> shape = (2, -1) >>> input_x = Tensor(np.array([1, 2, 3]).astype(np.float32)) >>> broadcast_to = ops.BroadcastTo(shape) >>> output = broadcast_to(input_x) >>> print(output) [[1. 2. 3.] [1. 2. 3.]]