mindspore.ops.randperm
- mindspore.ops.randperm(n, seed=0, offset=0, dtype=mstype.int64)[source]
Generates random permutation of integers from 0 to n-1.
Returns the tensor with the determined shape inferred by n, the random numbers in it drawn from the data range that a given type can represent.
Warning
This is an experimental API that is subject to change or deletion.
The Ascend backend does not support the reproducibility of random numbers, so the seed parameter has no effect.
- Parameters
n (Union[Tensor, int]) – The input n Tensor with shape: () or (1,) and with data type of int64. The value of n must be greater than zero.
seed (int, optional) – Random seed. Default:
0
. When seed is -1(only negative value), offset is 0, it's determined by time.offset (int, optional) – Offset to generate random numbers. Priority is higher than random seed. Default:
0
. It must be non-negative.dtype (mindspore.dtype, optional) – The type of output. Its value must be one of the following types: int32, int16, int8, uint8, int64, float64, float32, float16. Default: mstype.int64.
- Returns
Tensor. Its shape is specified by the required args n. Its type is specified by dtype. Otherwise is default.
- Raises
TypeError – If dtype is not allowed.
ValueError – If n is a negative or 0 element.
ValueError – If seed is a negative element.
ValueError – If n is larger than the maximal data of the set dtype.
- Supported Platforms:
CPU
Examples
>>> from mindspore import ops >>> from mindspore import dtype as mstype >>> n = 4 >>> seed = 0 >>> offset = 0 >>> output = ops.randperm(n, seed, offset, dtype=mstype.int64) >>> print(output) [0 2 1 3]