class botorch.distributions.Kumaraswamy(concentration1, concentration0, validate_args=None)[source]

Bases: torch.distributions.transformed_distribution.TransformedDistribution

Samples from a Kumaraswamy distribution.


>>> m = Kumaraswamy(torch.tensor([1.0]), torch.tensor([1.0]))
>>> m.sample()  # sample from a Kumaraswamy distribution with concentration alpha=1 and beta=1
tensor([ 0.1729])
  • concentration1 (float or Tensor) – 1st concentration parameter of the distribution (often referred to as alpha)

  • concentration0 (float or Tensor) – 2nd concentration parameter of the distribution (often referred to as beta)

arg_constraints: Dict[str, torch.distributions.constraints.Constraint] = {'concentration0': GreaterThan(lower_bound=0.0), 'concentration1': GreaterThan(lower_bound=0.0)}
support = Interval(lower_bound=0.0, upper_bound=1.0)
has_rsample = True
expand(batch_shape, _instance=None)[source]

Returns a new distribution instance (or populates an existing instance provided by a derived class) with batch dimensions expanded to batch_shape. This method calls expand on the distribution’s parameters. As such, this does not allocate new memory for the expanded distribution instance. Additionally, this does not repeat any args checking or parameter broadcasting in, when an instance is first created.

  • batch_shape (torch.Size) – the desired expanded size.

  • _instance – new instance provided by subclasses that need to override .expand.


New distribution instance with batch dimensions expanded to batch_size.

property mean

Returns the mean of the distribution.

property variance

Returns the variance of the distribution.


Returns entropy of distribution, batched over batch_shape.


Tensor of shape batch_shape.


DEPRECATED Probability Distributions.