pytorch-msssim
pytorch-msssim copied to clipboard
size_average=False returns a tensor containing individual SSIM scores instead of returning their sum
Hi, I'm not sure if this behavior is intended or not but for a batch of 64 images, when I set size_average=False, i get a tensor of size 64 with individual values:
tensor([1.0004, 0.9843, 0.9976, 0.9938, 0.9879, 0.9989, 0.9916, 0.9976, 1.0069,
0.9847, 0.9832, 0.9844, 0.9757, 0.9914, 0.9717, 1.0027, 1.0106, 0.9889,
0.9885, 0.9949, 0.9996, 0.9965, 0.9801, 0.9887, 0.9879, 0.9804, 0.9926,
0.9856, 0.9896, 0.9936, 0.9950, 0.9941, 0.9911, 0.9860, 0.9886, 0.9949,
0.9881, 0.9898, 0.9934, 0.9825, 0.9939, 0.9912, 0.9955, 0.9937, 1.0005,
0.9975, 0.9831, 1.0005, 0.9970, 0.9953, 0.9855, 1.0001, 1.0101, 0.9862,
0.9960]
The usual approach in PyTorch is:
size_average (bool, optional) – Deprecated (see reduction). By default, the losses are averaged over each loss element in the batch. Note that for some losses, there are multiple elements per sample. If the field size_average is set to False, the losses are instead summed for each minibatch. Ignored when reduce is False. Default: True
Source: https://pytorch.org/docs/stable/generated/torch.nn.MSELoss.html