mindspore.mint.bernoulli

View Source On AtomGit
mindspore.mint.bernoulli(input, *, generator=None)[source]

Samples from the Bernoulli distribution element-wise. Each element of the output is independently set to 0 or 1 according to the corresponding probability value in input.

\[output_{i} \sim Bernoulli(p=input_{i})\]
Parameters

input (Tensor) – A tensor of Bernoulli probabilities. For each element (i), \(input_{i}\) represents the probability that the corresponding output element \(output_{i}\) is set to 1. Each element must be in the range [0, 1]. Supported dtypes: float16, float32, float64, bfloat16 (bfloat16 is only supported by Atlas A2 training series products).

Keyword Arguments

generator (mindspore.Generator, optional) – A pseudorandom number generator. Default: None, uses the default pseudorandom number generator.

Returns

output (Tensor), The output tensor, with the same shape and dtype as input.

Raises
  • TypeError – If dtype of input is not one of: float16, float32, float64, bfloat16.

  • ValueError – If any element of the input is not in the range [0, 1].

Supported Platforms:

Ascend

Examples

>>> import mindspore
>>> import numpy as np
>>> from mindspore import Tensor
>>> from mindspore import mint
>>> input_x = Tensor(np.ones((3, 3)), mindspore.float32)
>>> output = mint.bernoulli(input_x)
>>> print(output)
[[ 1. 1. 1.]
 [ 1. 1. 1.]
 [ 1. 1. 1.]]
>>> input_x = Tensor(np.zeros((3, 3)), mindspore.float32)
>>> output = mint.bernoulli(input_x)
>>> print(output)
[[ 0. 0. 0.]
 [ 0. 0. 0.]
 [ 0. 0. 0.]]