Fix loss reporting with deepspeed
# What does this PR do?

In the deepspeed integration inside `Trainer`, the loss currently reported is the scaled loss, as in scaled by the loss scaling factor used during mixed precision training. This has nothing to do with the actual loss (the scaling factor is the highest possible value that does not make the gradients overflow basically), this PR fixes that.

Fixes #11919
This is exactly what deepspeed already does. Please see:

https://github.com/microsoft/DeepSpeed/blob/master/deepspeed/runtime/engine.py#L1142-L1143

The scaling function is:
```
    def _scale_loss_by_gas(self, prescaled_loss):
        if isinstance(prescaled_loss, torch.Tensor):
            scaled_loss = prescaled_loss / self.gradient_accumulation_steps()
        elif isinstance(prescaled_loss, tuple) or isinstance(prescaled_loss, list):
            scaled_loss = []
            for l in prescaled_loss:
                if isinstance(l, torch.Tensor):
                    scaled_loss.append(l / self.gradient_accumulation_steps())
                else:
                    scaled_loss.append(l)
        else:
            scaled_loss = prescaled_loss
            if self.warn_unscaled_loss:
                logger.warning(
                    f'DeepSpeed unable to scale loss because of type: {type(prescaled_loss)}'
                )
                self.warn_unscaled_loss = False

        return scaled_loss
```

it's scaled by gradient acc steps and not scaling factor.<|||||>I spent some more time running tests, including fp16, and I can't find any problem with the current code. 

As posted in a comment above reviewing the code shows that it only scales by grad acc steps. 