I’m working on a task to denoise microscopy images using a 2D U-Net. I’m training my network on images taken at different z-levels, and these images have ground truth, which is the mean of the images in z. Therefore, some images share the same ground truth. I’ve separated the images into z-groups to place them in either train, validation, or test sets. I’m computing the SSIM on each batch and averaging the results at each epoch to plot them afterward.
The problem I’m facing is that the SSIM in validation is always higher than in training.
I’m not using dropout or batch normalization in my network, which can cause the validation to have higher results. I made sure that images were not duplicated in train and validation.
SSIM in training and validation
Can anyone help me understand why this is happening and how to address it?
Thank you!