class_docstr: The log-normal distribution.
class_docstr_tok: ["The","log-normal","distribution","."]
code: def _log_prob(self, x):
      answer = super(LogNormal, self)._log_prob(x)
      # The formula inherited from TransformedDistribution computes `nan` for `x
      # == 0`.  However, there's hope that it's not too inaccurate for small
      # finite `x`, because `x` only appears as `log(x)`, and `log` is effectively
      # discontinuous at 0.  Furthermore, the result should be dominated by the
      # `log(x)**2` term, with no higher-order term that needs to be cancelled
      # numerically.
      return tf.where(
          tf.equal(x, 0.0),
          tf.constant(-np.inf, dtype=answer.dtype),
          answer,
      )
  
imports: import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import exp
  from tensorflow_probability.python.bijectors import softplus
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.distributions import transformed_distribution
  from tensorflow_probability.python.internal import assert_util
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import parameter_properties
  from tensorflow_probability.python.internal import tensor_util
  from tensorflow_probability.python.util.deferred_tensor import DeferredTensor
label_desc: Use image node_id 6 for calling the LogNormal obj's underlying member method code with example usage: obj._log_prob(x) and returns: tf