@richard
I found the reason, but I must have missed it in the documentation - can you explain me (redirect me to the documentation), why the output of the
train_loss1 = F.mse_loss(output, target, True)
train_loss2 = ((output - target)**2).mean()

is different where the sizes of the tensors are:
output.data.size()
Out[9]: torch.Size([90, 1, 1, 1])

and
target.data.size()
Out[8]: torch.Size([90, 1])

?
When the output size is changed to [90, 1], the results are the same…