code: def test_cross_entropy_binary(backend_default):
      outputs = np.array([0.5, 0.9, 0.1, 0.0001]).reshape((4, 1))
      targets = np.array([0.5, 0.99, 0.01, 0.2]).reshape((4, 1))
      eps = np.exp(-50)
      expected_log = np.log(np.maximum(outputs, eps))
      expected_mlog = np.log(np.maximum(1 - outputs, eps))
      expected_result = np.sum(
          (-targets * expected_log) - (1 - targets) * expected_mlog,
          keepdims=True,
      )
      compare_tensors(
          CrossEntropyBinary(),
          outputs,
          targets,
          expected_result,
          tol=1e-6,
      )
  
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 3 for calling a global function with example usage: test_cross_entropy_binary(backend_default) without return types