Types Of Diffusion Models Explained