Need help in understanding these results

Hello, I was working on currency recognition project (image classification), I have collected a fair amount of data 3000 images per class. I used mobile net v2 as my pre-model and added 2 more layers with 64 and 32 neurons and trained the model for 20 epochs and both training accuracy and validation accuracy went up to 99% but the confusion matrix on validation set is not what I expected it to be. please look at the below image and let me know if you could find what i did wrong or what more needs to be done.

I would check that you are applying the same preprocessing steps when doing inference to get the confusion matrix. You could try to compare graphs between training and inference models on netron app.

I have little experience on tf but I faced a similar problem. When I was doing inference, my model didn’t work well while training stats seemed good. At the end, it was a hidden preprocessing step performed on the training.