class_docstr: Bernoulli distribution.
  
  The Bernoulli distribution with `probs` parameter, i.e., the probability of a
  `1` outcome (vs a `0` outcome).
class_docstr_tok: ["Bernoulli","distribution",".","The","Bernoulli","distribution","with","`","probs","`","parameter",",","i.e.",",","the","probability","of","a","`","1","`","outcome","(","vs","a","`","0","`","outcome",")","."]
code: def _outcome_log_probs(self):
      if self._logits is None:
          p = tf.convert_to_tensor(self._probs)
          return tf.math.log1p(-p), tf.math.log(p)
      s = tf.convert_to_tensor(self._logits)
      # softplus(s) = -Log[1 - p]
      # -softplus(-s) = Log[p]
      # softplus(+inf) = +inf, softplus(-inf) = 0, so...
      #  logits = -inf ==> log_probs0 = 0, log_probs1 = -inf (as desired)
      #  logits = +inf ==> log_probs0 = -inf, log_probs1 = 0 (as desired)
      return -tf.math.softplus(s), -tf.math.softplus(-s)
  
imports: import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import sigmoid
  from tensorflow_probability.python.distributions import distribution
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.internal import assert_util
  from tensorflow_probability.python.internal import distribution_util
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import parameter_properties
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import reparameterization
  from tensorflow_probability.python.internal import samplers
  from tensorflow_probability.python.internal import tensor_util
label_desc: Use image node_id 9 for calling the Bernoulli obj's underlying member method code with example usage: obj._outcome_log_probs() and returns: unknown,  unknown, tf,  tf