A variational auto-encoder uses the AEVB algorithm to learn a specific model p using a particular encoder q. The model p is parametrized as
p(x∣z)=N(x;μ(z),diag(σ(x))^2)
p(z)=N(z;0,I),
where μ(z),σ(z) are parametrized by a neural network (typically, two dense hidden layers of 500 units each).
For p(x∣z), you erroneously wrote σ(x) instead of σ(z) for the covariance matrix, which is probably a typo.
At the end of the Variational Auto-encoder section (https://ermongroup.github.io/cs228-notes/extras/vae/), the following is written:
For p(x∣z), you erroneously wrote σ(x) instead of σ(z) for the covariance matrix, which is probably a typo.