code: def testPoissonLogPmfMultidimensional(self):
      batch_size = 6
      lam = tf.constant([[2.0, 4.0, 5.0]] * batch_size)
      lam_v = np.array([2.0, 4.0, 5.0], dtype=np.float32)
      x = np.array([[2.0, 3.0, 4.0, 5.0, 6.0, 7.0]], dtype=np.float32).T
  
      poisson = self._make_poisson(rate=lam)
      log_pmf = poisson.log_prob(x)
      self.assertEqual(log_pmf.shape, (6, 3))
      self.assertAllClose(
          self.evaluate(log_pmf), stats.poisson.logpmf(x, lam_v)
      )
  
      pmf = poisson.prob(x)
      self.assertEqual(pmf.shape, (6, 3))
      self.assertAllClose(
          self.evaluate(pmf), stats.poisson.pmf(x, lam_v)
      )
  
imports: import numpy
  from scipy import stats
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import poisson
  from tensorflow_probability.python.distributions.internal import statistical_testing
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import implementation_selection
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 9 for calling the PoissonTest obj's underlying member method code with example usage: obj.testPoissonLogPmfMultidimensional() without return types