code: def softmax(x, axis=-1):
      logits = x
      if axis is None:
          # Unlike numpy, tf will handle axis=None as axis=-1.
          # We need this workaround for the reduction on every dim.
          output = tf.reshape(x, [-1])
          output = tf.nn.softmax(output, axis=-1)
          output = tf.reshape(output, tf.shape(x))
      else:
          output = tf.nn.softmax(x, axis=axis)
      output._keras_logits = logits
      return output
  
imports: import warnings
  import tensorflow
  from keras.backend import standardize_data_format
  from keras.backend import standardize_dtype
  from keras.backend.common.backend_utils import compute_conv_transpose_output_shape
  from keras.backend.config import epsilon
  from keras.backend.tensorflow.core import cast
  from keras.backend.tensorflow.core import convert_to_tensor
label_desc: Use image node_id 15 for calling a global function with example usage: softmax(x, axis) and returns: output