code: def testSeluGradGradWRTinputs(self):
      inputs = constant_op.constant(
          [[-2, -1, 1, 3], [5, 7, 8, 9]], dtype=dtypes.float32
      )
      dummy = constant_op.constant(
          [[3, 1, -1, -2], [9, 8, 7, 6]], dtype=dtypes.float32
      )
  
      selu = gen_nn_ops.selu(inputs)
      selu_grad = gradients_impl.gradients(selu, inputs, grad_ys=dummy)[
          0
      ]
      with self.cached_session():
          error = gradient_checker.compute_gradient_error(
              inputs, inputs.shape, selu_grad, selu_grad.shape
          )
          self.assertLess(error, 1e-4)
  
imports: import numpy
  from tensorflow.python.eager import backprop
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import gen_nn_ops
  from tensorflow.python.ops import gradient_checker
  from tensorflow.python.ops import gradient_checker_v2
  from tensorflow.python.ops import gradients_impl
  from tensorflow.python.ops import nn_grad
  from tensorflow.python.ops import nn_impl
  from tensorflow.python.ops import nn_ops
  from tensorflow.python.platform import test
label_desc: Use image node_id 2 for calling the SeluGradOpTest obj's underlying member method code with example usage: obj.testSeluGradGradWRTinputs() without return types