mindspore.ops.RandomShuffle

查看源文件
class mindspore.ops.RandomShuffle(seed=0, seed2=0)[源代码]

沿着Tensor的第一个维度进行随机打乱操作。

说明

  • 随机种子:通过一些复杂的数学算法,可以得到一组有规律的随机数,而随机种子就是这个随机数的初始值。随机种子相同,得到的随机数就不会改变。

  • 全局的随机种子和算子层的随机种子都没设置或都设置为0:完全随机。

  • 全局的随机种子设置了,算子层的随机种子未设置:采用全局的随机种子和0拼接。

  • 全局的随机种子未设置,算子层的随机种子设置了:使用0和算子层的随机种子拼接。

  • 全局的随机种子和算子层的随机种子都设置了:全局的随机种子和算子层的随机种子拼接。

参数:
  • seed (int,可选) - 算子层的随机种子,用于生成随机数。必须是非负的。默认值: 0

  • seed2 (int,可选) - 全局的随机种子,和算子层的随机种子共同决定最终生成的随机数。必须是非负的。默认值: 0

输入:
  • x (tuple) - 需要进行打乱操作的Tensor。

输出:

Tensor。输出的shape和类型与输入 x 相同。

异常:
  • TypeError - 如果 seedseed2 的数据类型不是int。

支持平台:

Ascend GPU CPU

样例:

>>> import numpy as np
>>> from mindspore import Tensor, ops
>>> from mindspore import dtype as mstype
>>> x = Tensor(np.array([1, 2, 3, 4]), mstype.float32)
>>> shuffle = ops.RandomShuffle(seed=1, seed2=1)
>>> output = shuffle(x)
>>> print(output.shape)
(4,)