mindspore.Tensor.repeat_interleave

Tensor.repeat_interleave(self, repeats, dim=None, output_size=None) Tensor

Repeat elements of a tensor along an axis, like numpy.repeat.

Warning

Only support on Atlas A2 training series.

Parameters
  • self (Tensor) – The tensor to repeat values for. Must be of type: float16, float32, int8, uint8, int16, int32, or int64.

  • repeats (Union[int, tuple, list, Tensor]) – The number of times to repeat, must be positive.

  • dim (int, optional) – The dim along which to repeat, Default: None. if dims is None, the self Tensor will be flattened and the output will alse be flattened.

  • output_size (int, optional) – Total output size for the given axis (e.g. sum of repeats), Default: None.

Returns

One tensor with values repeated along the specified dim. If self has shape \((s1, s2, ..., sn)\) and dim is i, the output will have shape \((s1, s2, ..., si * repeats, ..., sn)\). The output type will be the same as the type of self.

Supported Platforms:

Ascend

Examples

>>> import mindspore
>>> import numpy as np
>>> from mindspore import Tensor
>>> input = Tensor(np.array([[0, 1, 2], [3, 4, 5]]), mindspore.int32)
>>> output = input.repeat_interleave(repeats=2, dim=0)
>>> print(output)
[[0 1 2]
 [0 1 2]
 [3 4 5]
 [3 4 5]]