mindspore.ops.choice_with_mask
- mindspore.ops.choice_with_mask(input_x, count=256, seed=None)[源代码]
对输入进行随机取样,返回取样索引和掩码。
输入必须是维度不小于1的Tensor。如果其维度大于等于2,则第一个维度指定样本数。 返回的索引Tensor为非空样本值的索引,掩码Tensor说明索引Tensor中的哪些元素是有效的。
警告
Ascend后端不支持随机数重现功能, seed 参数不起作用。
- 参数:
input_x (Tensor[bool]) - 输入Tensor,bool类型。秩必须大于等于1且小于等于5。
count (int, 可选) - 取样数量,必须大于0。默认值:
256
。seed (int, 可选) - 指定随机种子,用于随机数生成器生成伪随机数。默认值:
None
。
- 返回:
两个Tensor,第一个为索引,另一个为掩码。
index (Tensor) - 二维Tensor。
mask (Tensor) - 一维Tensor。
- 异常:
TypeError - count 不是int类型。
TypeError - seed 不是int类型。
TypeError - input_x 不是Tensor。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> import numpy as np >>> from mindspore import Tensor, ops >>> input_x = Tensor(np.ones(shape=[240000, 4]).astype(np.bool_)) >>> output_y, output_mask = ops.choice_with_mask(input_x) >>> result = output_y.shape >>> print(result) (256, 2) >>> result = output_mask.shape >>> print(result) (256,)