code: def ce_loss(x, y):
      # loss = mx.sym.SoftmaxOutput(data = x, label = y, normalization='valid', multi_output=True)
      x_max = mx.sym.max(x, axis=[2, 3], keepdims=True)
      x = mx.sym.broadcast_minus(x, x_max)
      body = mx.sym.exp(x)
      sums = mx.sym.sum(body, axis=[2, 3], keepdims=True)
      body = mx.sym.broadcast_div(body, sums)
      loss = mx.sym.log(body)
      loss = loss * y * -1.0
      loss = mx.symbol.mean(loss, axis=[1, 2, 3])
      # loss = mx.symbol.mean(loss)
      return loss
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import mxnet
  import numpy
  from config import config
label_desc: Use image node_id 14 for calling a global function with example usage: ce_loss(x, y) and returns: loss