class_docstr: Tests the PoissonLogNormalQuadratureCompoundTest distribution.
class_docstr_tok: ["Tests","the","PoissonLogNormalQuadratureCompoundTest","distribution","."]
code: def testGradientThroughParams(self):
      pln = pl.PoissonLogNormalQuadratureCompound(
          loc=tf.Variable(
              [0.0, -0.5], shape=[2] if self.static_shape else None
          ),
          scale=tf.Variable(
              [1.0, 0.9], shape=[2] if self.static_shape else None
          ),
          quadrature_size=10,
          validate_args=True,
      )
      with tf.GradientTape() as tape:
          loss = -pln.log_prob([1.0, 2.0])
      grad = tape.gradient(loss, pln.trainable_variables)
      self.assertLen(grad, 2)
      self.assertFalse(any([g is None for g in grad]))
  
imports: import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import poisson_lognormal
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 7 for calling the _PoissonLogNormalQuadratureCompoundTest obj's underlying member method code with example usage: obj.testGradientThroughParams() without return types