categorical-variational-autoencoder