code: def masked_log_softmax(
      data, mask, axis=-1, temperature=1.0, normalize=True
  ):
      r"""Computes the masked log softmax of the input.
      This is equivalent to computing masked softmax followed by log.
  
      Parameters
      ----------
      data : NDArray
          The input array.
      mask : NDArray
          Mask to apply.
      axis : int, optional, default='-1'
          The axis along which to compute softmax.
      temperature : double or None, optional, default=None
          Temperature parameter in softmax
      normalize : boolean or None, optional, default=1
          Whether to normalize input data x: x = x - max(x)
  
      Returns
      -------
      out : NDArray or list of NDArrays
          The output of this function.
  
      Examples
      --------
      >>> data = np.arange(5)
      >>> mask = np.array([1, 0, 1, 0, 1])
      >>> npx.masked_log_softmax(data, mask)
      array([-4.1429286 ,        -inf, -2.1429286 ,        -inf, -0.14292854])
      >>> data = np.arange(10).reshape((2, 5))
      >>> npx.masked_log_softmax(data, mask, axis=0)
      array([[-5.0067153 ,        -inf, -5.0067153 ,        -inf, -5.0067153 ],
             [-0.00671535,        -inf, -0.00671535,        -inf, -0.00671535]])
      """
      assert (
          data is not None and mask is not None
      ), "Missing input data and mask"
      return _api_internal.masked_log_softmax(
          data, mask, axis, temperature, normalize
      )
  
imports: import numpy
  from .._internal import NDArrayBase
  from .None import _api_internal
  from ...util import set_module
  from ..ndarray import get_dtype_name
label_desc: Use image node_id 4 for calling a global function with example usage: masked_log_softmax(data, mask, axis, temperature, normalize) and returns: _api_internal