https://medium.com/@monocosmo77/revisiting-variational-autoencoders-part8-machine-learning-2024-170bc059a733