code: def test_cross_entropy_multi_limits(backend_default):
      outputs = np.array([0.5, 1.0, 0.0, 0.0001]).reshape((4, 1))
      targets = np.array(([0.5, 0.0, 1.0, 0.2])).reshape((4, 1))
      eps = np.exp(-50)
      expected_log = np.log(np.maximum(outputs, eps))
      expected_result = np.sum(
          -targets * expected_log, axis=0, keepdims=True
      )
      compare_tensors(
          CrossEntropyMulti(),
          outputs,
          targets,
          expected_result,
          tol=1e-5,
      )
  
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 7 for calling a global function with example usage: test_cross_entropy_multi_limits(backend_default) without return types