Generated class proportions

I’ve trained a latent diffusion model based on some data set (using a custom-trained VAE and a Unet1d from scratch) and the generated data looks good.
It looks good however it does not respect the data set class proportions.
My data set is made out of 50% dogs and 50% cats however the generated data contains 80% cats and 20% dogs.
Besides shuffling that could be an issue (but I checked it), what could lead to this behaviour ?
Thanks for your help