Logging non-tensor scalar with result breaks subsequent epoch aggregation
🐛 Bug
Logging non-tensor scalar with result breaks subsequent epoch/tbptt aggregation
(on both 0.9 and master)
-- Process 1 terminated with the following error:
Traceback (most recent call last):
  File "/opt/conda/lib/python3.6/site-packages/torch/multiprocessing/spawn.py", line 20, in _wrap
    fn(i, *args)
  File "/opt/conda/lib/python3.6/site-packages/pytorch_lightning/accelerators/ddp_spawn_backend.py", line 165, in ddp_train
    results = self.trainer.run_pretrain_routine(model)
  File "/opt/conda/lib/python3.6/site-packages/pytorch_lightning/trainer/trainer.py", line 1237, in run_pretrain_routine
    self.train()
  File "/opt/conda/lib/python3.6/site-packages/pytorch_lightning/trainer/training_loop.py", line 396, in train
    self.run_training_epoch()
  File "/opt/conda/lib/python3.6/site-packages/pytorch_lightning/trainer/training_loop.py", line 543, in run_training_epoch
    self.run_training_epoch_end(epoch_output, checkpoint_accumulator, early_stopping_accumulator, num_optimizers)
  File "/opt/conda/lib/python3.6/site-packages/pytorch_lightning/trainer/training_loop.py", line 672, in run_training_epoch_end
    epoch_log_metrics, epoch_progress_bar_metrics = self.__auto_reduce_results_on_epoch_end(epoch_output)
  File "/opt/conda/lib/python3.6/site-packages/pytorch_lightning/trainer/training_loop.py", line 696, in __auto_reduce_results_on_epoch_end
    tbptt_outs = tbptt_outs[0].__class__.reduce_across_time(tbptt_outs)
  File "/opt/conda/lib/python3.6/site-packages/pytorch_lightning/core/step_result.py", line 392, in reduce_across_time
    result[k] = tbptt_reduce_fx(value)
TypeError: mean(): argument 'input' (position 1) must be Tensor, not list

To Reproduce
    def training_step(self, batch, batch_idx):
        x, y = batch[0], batch[1]
        x = self.forward(x)
        loss = self.loss(x, y)
        result = pl.TrainResult(loss)
        result.log("non tensor scalar", 1.0)
        result.log("loss", loss, on_step=False, on_epoch=True)

To Fix
result.log("non tensor scalar", torch.tensor(1.0))

Expected behavior
In log() of result objects, value should accept non tensor values as value: Any and not cause issues with other metrics to be logged
Additional context
log() can be changed to only accept tensors, or have a built-in conversion, will update as I investigate further