def CrossEntropyLoss():
  """Returns a layer that outputs multiclass prediction-target cross-entropy.

  DEPRECATED; refactor to use ``WeightedCategoryCrossEntropy`` or
  ``CategoryCrossEntropy`` instead.

  (``CrossEntropyLoss`` by itself does not compute cross-entropy. In older
  code, this layer had to be preceded by ``LogSoftmax``, and the two layers
  together did the work of converting category information to probability
  distributions and computing the cross-entropy between those distributions.
  All this is now done by ``WeightedCategoryCrossEntropy``.)
  """
  return cb.Serial(_CrossEntropy(),
                   _WeightedMean(),
                   name='CrossEntropyLoss',
                   sublayers_to_print=[])
Returns a layer that outputs multiclass prediction-target cross-entropy.

  DEPRECATED; refactor to use ``WeightedCategoryCrossEntropy`` or
  ``CategoryCrossEntropy`` instead.

  (``CrossEntropyLoss`` by itself does not compute cross-entropy. In older
  code, this layer had to be preceded by ``LogSoftmax``, and the two layers
  together did the work of converting category information to probability
  distributions and computing the cross-entropy between those distributions.
  All this is now done by ``WeightedCategoryCrossEntropy``.)
  
trax/layers/metrics.py