docstr: Maps raw tensors to valid arguments for constructing a
  ZeroAndOneInflatedBeta distribution.
  
  Parameters
  ----------
  F:
  alpha:
      Tensor of shape `(*batch_shape, 1)`
  beta:
      Tensor of shape `(*batch_shape, 1)`
  zero_probability:
      Tensor of shape `(*batch_shape, 1)`
  
  Returns
  -------
  Tuple[Tensor, Tensor, Tensor, Tensor]:
      Four squeezed tensors, of shape `(*batch_shape)`: First two have
      entries mapped to the positive orthant, zero_probability is mapped
      to (0, 1), one_probability is mapped to (0, 1-zero_probability)
docstr_tok: ["Maps","raw","tensors","to","valid","arguments","for","constructing","a","ZeroAndOneInflatedBeta","distribution",".","Parameters","--","--","--","--","--","F",":","alpha",":","Tensor","of","shape","`","(","*","batch_shape",",","1",")","`","beta",":","Tensor","of","shape","`","(","*","batch_shape",",","1",")","`","zero_probability",":","Tensor","of","shape","`","(","*","batch_shape",",","1",")","`","Returns","--","--","--","-","Tuple","[","Tensor",",","Tensor",",","Tensor",",","Tensor","]",":","Four","squeezed","tensors",",","of","shape","`","(","*","batch_shape",")","`",":","First","two","have","entries","mapped","to","the","positive","orthant",",","zero_probability","is","mapped","to","(","0",",","1",")",",","one_probability","is","mapped","to","(","0",",","1-zero_probability",")"]
code: def domain_map(
      cls, F, alpha, beta, zero_probability, one_probability
  ):
      r"""
      Maps raw tensors to valid arguments for constructing a
      ZeroAndOneInflatedBeta distribution.
  
      Parameters
      ----------
      F:
      alpha:
          Tensor of shape `(*batch_shape, 1)`
      beta:
          Tensor of shape `(*batch_shape, 1)`
      zero_probability:
          Tensor of shape `(*batch_shape, 1)`
  
      Returns
      -------
      Tuple[Tensor, Tensor, Tensor, Tensor]:
          Four squeezed tensors, of shape `(*batch_shape)`: First two have
          entries mapped to the positive orthant, zero_probability is mapped
          to (0, 1), one_probability is mapped to (0, 1-zero_probability)
      """
      alpha = F.maximum(softplus(F, alpha), cls.eps())
      beta = F.maximum(softplus(F, beta), cls.eps())
      zero_probability = F.sigmoid(zero_probability)
      one_probability = (1 - zero_probability) * F.sigmoid(
          one_probability
      )
      return (
          alpha.squeeze(axis=-1),
          beta.squeeze(axis=-1),
          zero_probability.squeeze(axis=-1),
          one_probability.squeeze(axis=-1),
      )
  
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 for calling the ZeroAndOneInflatedBetaOutput obj's underlying member method code with example usage: obj.domain_map(cls, F, alpha, beta, zero_probability, one_probability) and returns: alpha,  beta,  zero_probability,  one_probability