Most likely you are accidentally broadcasting the output by slicing it:
loss1 = criterion(los_l, outputs[0,0,0,0])

I assume outputs is a tensor of shape [50, 1, 1, 1].
If that’s the case, just pass it to your criterion, as the target should already have the same shape:
loss = criterion(outputs, los_l)