code: def testLogPdfBroadcast(self):
      # Keep the `concentration`'s above 1 since quadrature has problems
      # otherwise.
      a = tf.random.uniform(
          shape=[2, 1, 1, 1],
          minval=1.0,
          maxval=5.0,
          seed=test_util.test_seed(),
          dtype=self.dtype,
      )
      b = tf.random.uniform(
          shape=[1, 3, 1, 1],
          minval=1.0,
          maxval=5.0,
          seed=test_util.test_seed(),
          dtype=self.dtype,
      )
      c = tf.random.uniform(
          shape=[1, 1, 5, 1],
          minval=1.0,
          maxval=5.0,
          seed=test_util.test_seed(),
          dtype=self.dtype,
      )
      d = tf.random.uniform(
          shape=[1, 1, 1, 7],
          minval=1.0,
          maxval=5.0,
          seed=test_util.test_seed(),
          dtype=self.dtype,
      )
      dist = beta_quotient.BetaQuotient(a, b, c, d, validate_args=True)
      x = np.linspace(0.1, 5.0, 7).astype(self.dtype)
      log_prob, a, b, c, d = self.evaluate(
          [dist.log_prob(x), a, b, c, d]
      )
      self.assertAllClose(
          self._compute_logpdf_quadrature(a, b, c, d, x),
          log_prob,
          rtol=4e-4,
      )
  
imports: import numpy
  from scipy import special
  from scipy import stats
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import beta_quotient
  from tensorflow_probability.python.distributions.internal import statistical_testing
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
label_desc: Use image node_id 6 for calling the _BetaQuotientTest obj's underlying member method code with example usage: obj.testLogPdfBroadcast() without return types