code: def testJensenShannonDistanceFromLogit(self):
      source = np.array([[1, 2, 3], [1, -1, 2]], dtype="float32")
      target = np.array([[1, 2, 3], [1, 0, -1]], dtype="float32")
  
      expected_value = np.mean(
          np.sum(
              self._jsd_func(
                  self._softmax_func(source), self._softmax_func(target)
              ),
              -1,
          )
      )
  
      distance_config = configs.DistanceConfig(
          "jensen_shannon_divergence",
          transform_fn="softmax",
          sum_over_axis=-1,
      )
      distance_tensor = distances.pairwise_distance_wrapper(
          tf.constant(source),
          tf.constant(target),
          distance_config=distance_config,
      )
      with self.cached_session() as sess:
          distance_value = sess.run(distance_tensor)
          self.assertAllClose(distance_value, expected_value)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import neural_structured_learning.configs
  from neural_structured_learning.lib import distances
  import numpy
  import tensorflow
label_desc: Use image node_id 13 for calling the DistancesTest obj's underlying member method code with example usage: obj.testJensenShannonDistanceFromLogit() without return types