class_docstr: Test caching with BrokenBijector.
code: def testReduceEventNdimsForward(self):
      x = [[[1.0, 2.0], [3.0, 4.0]]]
      bij = ExpOnlyJacobian()
      self.assertAllClose(
          np.log(x),
          self.evaluate(bij.forward_log_det_jacobian(x, event_ndims=0)),
      )
      self.assertAllClose(
          np.sum(np.log(x), axis=-1),
          self.evaluate(bij.forward_log_det_jacobian(x, event_ndims=1)),
      )
      self.assertAllClose(
          np.sum(np.log(x), axis=(-1, -2)),
          self.evaluate(bij.forward_log_det_jacobian(x, event_ndims=2)),
      )
  
imports: import abc
  import numpy
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops.distributions import bijector
  from tensorflow.python.platform import test
label_desc: Use image node_id 1 for calling the BijectorReduceEventDimsTest obj's underlying member method code with example usage: obj.testReduceEventNdimsForward() without return types