Closed miguelgfierro closed 6 years ago
When using MNIST, they load the image as grayscale: https://github.com/pytorch/vision/blob/master/torchvision/datasets/mnist.py#L73
img = Image.fromarray(img.numpy(), mode='L')
when they load the dataset, they normalize 2 components:
datasets.MNIST('../data', train=True, download=True,
transform=transforms.Compose([
transforms.ToTensor(),
transforms.Normalize((0.1307,), (0.3081,))
])),
With gray images using transform transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])
:
Epoch 1/25
----------
train Loss: 0.0110 Acc: 0.1633
val Loss: 0.0098 Acc: 0.3128
Epoch 2/25
----------
train Loss: 0.0089 Acc: 0.3836
val Loss: 0.0070 Acc: 0.5857
Epoch 3/25
----------
train Loss: 0.0070 Acc: 0.5464
val Loss: 0.0048 Acc: 0.7230
Epoch 4/25
----------
train Loss: 0.0058 Acc: 0.6209
val Loss: 0.0036 Acc: 0.7910
Epoch 5/25
----------
train Loss: 0.0051 Acc: 0.6662
val Loss: 0.0030 Acc: 0.8266
Epoch 6/25
----------
train Loss: 0.0045 Acc: 0.6947
val Loss: 0.0025 Acc: 0.8509
Epoch 7/25
----------
train Loss: 0.0041 Acc: 0.7183
val Loss: 0.0022 Acc: 0.8665
Epoch 8/25
----------
train Loss: 0.0041 Acc: 0.7245
val Loss: 0.0022 Acc: 0.8683
Epoch 9/25
----------
train Loss: 0.0039 Acc: 0.7362
val Loss: 0.0022 Acc: 0.8708
Epoch 10/25
----------
train Loss: 0.0039 Acc: 0.7357
val Loss: 0.0022 Acc: 0.8719
Epoch 11/25
----------
train Loss: 0.0039 Acc: 0.7317
val Loss: 0.0021 Acc: 0.8762
Epoch 12/25
----------
train Loss: 0.0039 Acc: 0.7351
val Loss: 0.0021 Acc: 0.8731
Epoch 13/25
----------
train Loss: 0.0038 Acc: 0.7422
val Loss: 0.0020 Acc: 0.8795
Epoch 14/25
----------
train Loss: 0.0038 Acc: 0.7394
val Loss: 0.0020 Acc: 0.8795
Epoch 15/25
----------
train Loss: 0.0039 Acc: 0.7365
val Loss: 0.0020 Acc: 0.8790
Epoch 16/25
----------
train Loss: 0.0038 Acc: 0.7433
val Loss: 0.0020 Acc: 0.8783
Epoch 17/25
----------
train Loss: 0.0038 Acc: 0.7399
val Loss: 0.0020 Acc: 0.8783
Epoch 18/25
----------
train Loss: 0.0038 Acc: 0.7401
val Loss: 0.0020 Acc: 0.8801
Epoch 19/25
----------
train Loss: 0.0039 Acc: 0.7330
val Loss: 0.0020 Acc: 0.8795
Epoch 20/25
----------
train Loss: 0.0039 Acc: 0.7335
val Loss: 0.0020 Acc: 0.8785
Epoch 21/25
----------
train Loss: 0.0038 Acc: 0.7384
val Loss: 0.0020 Acc: 0.8813
Epoch 22/25
----------
train Loss: 0.0038 Acc: 0.7408
val Loss: 0.0020 Acc: 0.8798
Epoch 23/25
----------
train Loss: 0.0038 Acc: 0.7399
val Loss: 0.0020 Acc: 0.8788
Epoch 24/25
----------
train Loss: 0.0038 Acc: 0.7399
val Loss: 0.0020 Acc: 0.8806
Epoch 25/25
----------
train Loss: 0.0037 Acc: 0.7460
val Loss: 0.0020 Acc: 0.8813
Training complete in 15m 59s
Best val Acc: 0.881330
With gray images not using transform.
Epoch 1/25
----------
train Loss: 0.0110 Acc: 0.1629
val Loss: 0.0100 Acc: 0.2565
Epoch 2/25
----------
train Loss: 0.0090 Acc: 0.3853
val Loss: 0.0070 Acc: 0.5652
Epoch 3/25
----------
train Loss: 0.0071 Acc: 0.5460
val Loss: 0.0051 Acc: 0.7064
Epoch 4/25
----------
train Loss: 0.0058 Acc: 0.6217
val Loss: 0.0036 Acc: 0.7900
Epoch 5/25
----------
train Loss: 0.0051 Acc: 0.6697
val Loss: 0.0030 Acc: 0.8274
Epoch 6/25
----------
train Loss: 0.0045 Acc: 0.6954
val Loss: 0.0025 Acc: 0.8483
Epoch 7/25
----------
train Loss: 0.0042 Acc: 0.7222
val Loss: 0.0022 Acc: 0.8624
Epoch 8/25
----------
train Loss: 0.0040 Acc: 0.7308
val Loss: 0.0022 Acc: 0.8639
Epoch 9/25
----------
train Loss: 0.0040 Acc: 0.7311
val Loss: 0.0022 Acc: 0.8668
Epoch 10/25
----------
train Loss: 0.0040 Acc: 0.7346
val Loss: 0.0021 Acc: 0.8680
Epoch 11/25
----------
train Loss: 0.0040 Acc: 0.7294
val Loss: 0.0021 Acc: 0.8701
Epoch 12/25
----------
train Loss: 0.0039 Acc: 0.7337
val Loss: 0.0021 Acc: 0.8724
Epoch 13/25
----------
train Loss: 0.0039 Acc: 0.7368
val Loss: 0.0021 Acc: 0.8721
Epoch 14/25
----------
train Loss: 0.0038 Acc: 0.7444
val Loss: 0.0021 Acc: 0.8739
Epoch 15/25
----------
train Loss: 0.0038 Acc: 0.7395
val Loss: 0.0021 Acc: 0.8742
Epoch 16/25
----------
train Loss: 0.0039 Acc: 0.7378
val Loss: 0.0020 Acc: 0.8716
Epoch 17/25
----------
train Loss: 0.0039 Acc: 0.7356
val Loss: 0.0020 Acc: 0.8772
Epoch 18/25
----------
train Loss: 0.0038 Acc: 0.7364
val Loss: 0.0021 Acc: 0.8731
Epoch 19/25
----------
train Loss: 0.0039 Acc: 0.7397
val Loss: 0.0020 Acc: 0.8767
Epoch 20/25
----------
train Loss: 0.0038 Acc: 0.7410
val Loss: 0.0020 Acc: 0.8742
Epoch 21/25
----------
train Loss: 0.0038 Acc: 0.7447
val Loss: 0.0021 Acc: 0.8708
Epoch 22/25
----------
train Loss: 0.0038 Acc: 0.7417
val Loss: 0.0020 Acc: 0.8749
Epoch 23/25
----------
train Loss: 0.0038 Acc: 0.7395
val Loss: 0.0020 Acc: 0.8757
Epoch 24/25
----------
train Loss: 0.0038 Acc: 0.7436
val Loss: 0.0020 Acc: 0.8767
Epoch 25/25
----------
train Loss: 0.0038 Acc: 0.7401
val Loss: 0.0021 Acc: 0.8734
Training complete in 15m 44s
Best val Acc: 0.877238
There is no significant difference between the 2 cases
we can create fake RGB images from 1 channel images by replicating the channels:
source