code: def testEntropyWithZeroProbabilities(self):
      probs = np.array([[0, 0.5, 0.5], [0, 1, 0]])
      dist = categorical.Categorical(probs=probs, validate_args=True)
      dist_entropy = dist.entropy()
  
      ans = [-(0.5 * np.log(0.5) + 0.5 * np.log(0.5)), -(np.log(1))]
      self.assertAllClose(self.evaluate(dist_entropy), ans)
  
imports: from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import identity
  from tensorflow_probability.python.distributions import categorical
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import tensorshape_util
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
  from tensorflow_probability.python.util import deferred_tensor
label_desc: Use image node_id 20 for calling the CategoricalTest obj's underlying member method code with example usage: obj.testEntropyWithZeroProbabilities() without return types