code: def test_square_hinge_derivative(backend_default):
      outputs = np.array([0.3, 0.7]).reshape((2, 1))
      targets = np.array([0, 1]).reshape((2, 1))
      shifted_targets = np.array([-1, 1]).reshape((2, 1))
      expected_result = (
          -1
          * shifted_targets
          * np.maximum(1 - shifted_targets * outputs, 0)
      )
      compare_tensors(
          SquareHingeLoss(),
          outputs,
          targets,
          expected_result,
          deriv=True,
          tol=1e-7,
      )
  
imports: import itertools
  import numpy
  from neon import NervanaObject
  from neon.backends import gen_backend
  from neon.transforms import CrossEntropyBinary, CrossEntropyMulti, SumSquared, MeanSquared, Misclassification, PrecisionRecall, SmoothL1Loss, SquareHingeLoss
label_desc: Use image node_id 24 for calling a global function with example usage: test_square_hinge_derivative(backend_default) without return types