Hello All,
I have been trying to classify two sets of images. Which are pretty close in looking to each other. One set of image is image of GUI buttons (mainly desktop)  Another set is textboxes (mainly desktop as well)  I have 40 images per class inside my train set and 10 per class in my validation set.
I have taken (almost verbatim) the code from the Pytorch tutorial And with slight changes (mainly ornamental) I could make it work. I have added tensorboard support and when I look at my training loss (I am using a resnet50 as a fixed feature extractor and then a FC layer on top with 2 class output) my training loss looks like this
0.6 smoothing - Screenshot from 2021-02-09 11-39-45850×398 29.5 KB
0.87 smoothing - Screenshot from 2021-02-09 11-40-02854×400 29.4 KB
Highest smoothing - Screenshot from 2021-02-09 11-40-12851×403 31.1 KB
It looks okay to me, At least at the highest smoothing, it seems that the loss is decreasing well.
However, when I evaluate the model, with the eval dataset, each evaluation run on the same set of images spit out different prediction. I almost feel like the model is close to random prediction. I am not sure what I am getting wrong here.
Some important details -
1.> I am resizing the images to a 32x32 square image (even though the original ones has many different dimension. and most of the time rectangular) using a torchvison.transforms.
2.> I am normalizing them using [0.5, 0.5, 0.5], [0.5, 0.5, 0.5]
Please help me debug this