mindspore.ops.MaskedFill
- class mindspore.ops.MaskedFill[源代码]
将掩码位置为True的位置填充指定的值。
说明
如果 value 是Python类型的浮点数,则默认会转为float32类型。这种情况下,当 input_x 为float16类型时,在CPU和Ascend平台上,input_x 会转为float32类型参与计算, 并将结果类型转换到float16类型,可能会造成一定性能损耗;而在GPU平台上,则会引起TypeError。因此建议 value 采用与 input_x 具有相同数据类型的Tensor。
更多参考详见
mindspore.ops.masked_fill()
。- 输入:
input (Tensor) - 输入Tensor,其数据类型为float16、float32、int8、或int32。
mask (Tensor[bool]) - 输入的掩码,其数据类型为bool。
value (Union[float, Tensor]) - 用来填充的值,只支持零维Tensor或float。
- 输出:
Tensor,输出与输入的数据类型和shape相同。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> input = Tensor(np.array([1., 2., 3., 4.]), mindspore.float32) >>> mask = Tensor(np.array([True, True, False, True]), mindspore.bool_) >>> output = ops.MaskedFill()(input, mask, 0.5) >>> print(output) [0.5 0.5 3. 0.5]