Table of Contents
Shortcuts

# torch.bernoulli

torch.bernoulli(input, *, generator=None, out=None) → Tensor

  Draws binary random numbers (0 or 1) from a Bernoulli distribution.

  The `input` tensor should be a tensor containing probabilities to be used for drawing the binary random number. Hence, all values in `input` have to be in the range: 0≤input i≤1 0 \leq \text{input}_i \leq 1 0≤input i​≤1.

  The i t h\text{i}^{th}i t h element of the output tensor will draw a value 1 1 1 according to the i t h\text{i}^{th}i t h probability value given in `input`.

  out i∼B e r n o u l l i(p=input i)\text{out}_{i} \sim \mathrm{Bernoulli}(p = \text{input}_{i}) out i​∼Bernoulli(p=input i​)

  The returned `out` tensor only has values 0 or 1 and is of the same shape as `input`.

  `out` can have integral `dtype`, but `input` must have floating point `dtype`.

  Parameters:

    input (Tensor) – the input tensor of probability values for the Bernoulli distribution

  Keyword Arguments:

    - generator (`torch.Generator`, optional) – a pseudorandom number generator for sampling

    - out (Tensor, optional) – the output tensor.

  Example:

      >>> a = torch.empty(3, 3).uniform_(0, 1)  # generate a uniform random matrix with range [0, 1]
      >>> a
      tensor([[ 0.1737,  0.0950,  0.3609],
              [ 0.7148,  0.0289,  0.2676],
              [ 0.9456,  0.8937,  0.7202]])
      >>> torch.bernoulli(a)
      tensor([[ 1.,  0.,  0.],
              [ 0.,  0.,  0.],
              [ 1.,  1.,  1.]])

      >>> a = torch.ones(3, 3) # probability of drawing "1" is 1
      >>> torch.bernoulli(a)
      tensor([[ 1.,  1.,  1.],
              [ 1.,  1.,  1.],
              [ 1.,  1.,  1.]])
      >>> a = torch.zeros(3, 3) # probability of drawing "1" is 0
      >>> torch.bernoulli(a)
      tensor([[ 0.,  0.,  0.],
              [ 0.,  0.,  0.],
              [ 0.,  0.,  0.]])

## Docs

Access comprehensive developer documentation for PyTorch

View Docs

## Tutorials

Get in-depth tutorials for beginners and advanced developers

View Tutorials

## Resources

Find development resources and get your questions answered

View Resources

To analyze traffic and optimize your experience, we serve cookies on this site. By clicking or navigating, you agree to allow our usage of cookies. As the current maintainers of this site, Facebook’s Cookies Policy applies. Learn more, including about available controls: Cookies Policy.