class_docstr: Common tests for noisy location-scale family of distributions.
code: def test_variables_receive_gradients(self):
      loc = tf.Variable(1.0, dtype=tf.float32)
      log_scale = tf.Variable(0.0, dtype=tf.float32)
      with tf.GradientTape() as tape:
          dist = self.dist_cls(loc=loc, scale=tf.exp(log_scale))
          x = tf.random.normal([20])
          loss = -tf.reduce_mean(dist.log_prob(x))
      grads = tape.gradient(loss, [loc, log_scale])
      self.assertLen(grads, 2)
      self.assertNotIn(None, grads)
  
imports: import tensorflow
  from tensorflow_compression.python.distributions import helpers
  from tensorflow_compression.python.distributions import uniform_noise
label_desc: Use image node_id 3 for calling the LocationScaleTest obj's underlying member method code with example usage: obj.test_variables_receive_gradients() without return types