I have a Conditional Generative Adversarial Network for Quantum State Tomography. The metrics I am monitoring during the training process are the losses and the Fidelity (the degree of similarity between two matrices). Fidelity close to 1 is good and close to 0 is bad. My result is a Fidelity over 0.999 which is excellent but the losses of both Discriminator and Generator are opposite to what I would expect.
Fidelity is continuously rising which means that the matrices being generated by the network are becoming closer and closer to my target:
But the losses:
Why is that? Is something wrong or is this acceptable?
What I would expect is the loss of the Discriminator going up - it is becoming harder and harder to distinguish between real and fake data - and the loss of Generator going down. But the opposite happened. I would say "Well, my cGAN is no good and I need to rework it" but the result is good! The Generator is able to generate a matrix that closely resembles the target even though it is becoming worse during training.
Am I not getting something?