# Bernoulli Source: https://www.tensorplay.cn/docs/generated/tensorplay.distributions.Bernoulli.html ```python class tensorplay.distributions.Bernoulli(probs: Tensor | bool | int | float | None = None, logits: Tensor | bool | int | float | None = None, validate_args: bool | None = None) ``` Creates a Bernoulli distribution parameterized by probs or logits (but not both). Samples are binary (0 or 1). They take the value 1 with probability p and 0 with probability 1 - p. Example: ``` >>> # xdoctest: +IGNORE_WANT("non-deterministic") >>> m = Bernoulli(tensorplay.tensor([0.3])) >>> m.sample() # 30% chance 1; 70% chance 0 tensor([ 0.]) ``` Parameters: - probs (Number, [Tensor](/docs/generated/tensorplay.Tensor.html#tensorplay.Tensor)) – the probability of sampling 1 - logits (Number, [Tensor](/docs/generated/tensorplay.Tensor.html#tensorplay.Tensor)) – the log-odds of sampling 1 - validate_args ([bool](https://docs.python.org/3/builtins/functions.html#bool), optional) – whether to validate arguments, None by default ```python property batch_shape: Size ``` Returns the shape over which parameters are batched. ```python cdf(value: Tensor) → Tensor ``` Returns the cumulative density/mass function evaluated at value. Parameters: value ([Tensor](/docs/generated/tensorplay.Tensor.html#tensorplay.Tensor)) ```python property event_shape: Size ``` Returns the shape of a single sample (without batching). ```python icdf(value: Tensor) → Tensor ``` Returns the inverse cumulative density/mass function evaluated at value. Parameters: value ([Tensor](/docs/generated/tensorplay.Tensor.html#tensorplay.Tensor)) ```python perplexity() → Tensor ``` Returns perplexity of distribution, batched over batch_shape. Returns: Tensor of shape batch_shape. ```python rsample(sample_shape: Size | Sequence[int] = ()) → Tensor ``` Generates a sample_shape shaped reparameterized sample or sample_shape shaped batch of reparameterized samples if the distribution parameters are batched. ```python sample_n(n: int) → Tensor ``` Generates n samples or n batches of samples if the distribution parameters are batched. ```python static set_default_validate_args(value: bool) → None ``` Sets whether validation is enabled or disabled. The default behavior mimics Python’s assert statement: validation is on by default, but is disabled if Python is run in optimized mode (via python -O). Validation may be expensive, so you may want to disable it once a model is working. Parameters: value ([bool](https://docs.python.org/3/builtins/functions.html#bool)) – Whether to enable validation. ```python property stddev: Tensor ``` Returns the standard deviation of the distribution.