code: def test_unnormalized_soft_target_cross_entropy(self):
      config = {
          "name": "soft_target_cross_entropy",
          "ignore_index": -1,
          "reduction": "mean",
          "normalize_targets": False,
      }
      crit = SoftTargetCrossEntropyLoss.from_config(config)
      outputs = self._get_outputs()
      targets = self._get_targets()
      self.assertAlmostEqual(crit(outputs, targets).item(), 11.0219593)
  
      # Verify ignore index works
      outputs = self._get_outputs()
      targets = torch.tensor([[-1, 0, 0, 0, 1]])
      self.assertAlmostEqual(crit(outputs, targets).item(), 5.01097965)
  
file_path: ClassyVision/test/losses_soft_target_cross_entropy_loss_test.py
imports: import copy
  import unittest
  import torch
  from classy_vision.losses import build_loss, SoftTargetCrossEntropyLoss
label_desc: Use image node_id 9 for calling the TestSoftTargetCrossEntropyLoss obj's underlying member method code with example usage: obj.test_unnormalized_soft_target_cross_entropy() without return types