class_docstr: Zero And One Inflated Beta distribution as in Raydonal Ospina, Silvia L.P.
  Ferrari: Inflated Beta Distributions
  
  Parameters
  ----------
  alpha
      Tensor containing the alpha shape parameters, of shape
      `(*batch_shape, *event_shape)`.
  beta
      Tensor containing the beta shape parameters, of shape
      `(*batch_shape, *event_shape)`.
  zero_probability
      Tensor containing the probability of zeros, of shape
      `(*batch_shape, *event_shape)`.
  one_probability
      Tensor containing the probability of ones, of shape
      `(*batch_shape, *event_shape)`.
  F
class_docstr_tok: ["Zero","And","One","Inflated","Beta","distribution","as","in","Raydonal","Ospina",",","Silvia","L.P.","Ferrari",":","Inflated","Beta","Distributions","Parameters","--","--","--","--","--","alpha","Tensor","containing","the","alpha","shape","parameters",",","of","shape","`","(","*","batch_shape",",","*","event_shape",")","`",".","beta","Tensor","containing","the","beta","shape","parameters",",","of","shape","`","(","*","batch_shape",",","*","event_shape",")","`",".","zero_probability","Tensor","containing","the","probability","of","zeros",",","of","shape","`","(","*","batch_shape",",","*","event_shape",")","`",".","one_probability","Tensor","containing","the","probability","of","ones",",","of","shape","`","(","*","batch_shape",",","*","event_shape",")","`",".","F"]
code: def __init__(
      self,
      alpha: Tensor,
      beta: Tensor,
      zero_probability: Tensor,
      one_probability: Tensor,
  ) -> None:
      F = getF(alpha)
      self.alpha = alpha
      self.beta = beta
      self.zero_probability = zero_probability
      self.one_probability = one_probability
      self.beta_probability = 1 - zero_probability - one_probability
      self.beta_distribution = Beta(alpha=alpha, beta=beta)
      mixture_probs = F.stack(
          zero_probability,
          one_probability,
          self.beta_probability,
          axis=-1,
      )
      super().__init__(
          components=[
              Deterministic(alpha.zeros_like()),
              Deterministic(alpha.ones_like()),
              self.beta_distribution,
          ],
          mixture_probs=mixture_probs,
      )
  
imports: from typing import Dict, Tuple
  from gluonts.core.component import validated
  from gluonts.mx import Tensor
  from .beta import Beta
  from .deterministic import Deterministic
  from .distribution import getF, softplus
  from .distribution_output import DistributionOutput
  from .mixture import MixtureDistribution
label_desc: Use image node_id 1 to create a new ZeroAndOneInflatedBeta object from inherited base classes: MixtureDistribution with example: obj = ZeroAndOneInflatedBeta(alpha, beta, zero_probability, one_probability)