Variational autoencoder architecture. Made with https://github.com/battlesnake/neural.
\documentclass[tikz]{standalone}
\usepackage{neuralnetwork}
\newcommand{\xin}[2]{$x_#2$}
\newcommand{\xout}[2]{$\hat x_#2$}
\begin{document}
\begin{neuralnetwork}[height=8]
\tikzstyle{input neuron}=[neuron, fill=orange!70];
\tikzstyle{output neuron}=[neuron, fill=blue!60!black, text=white];
\inputlayer[count=8, bias=false, title=Input Layer, text=\xin]
\hiddenlayer[count=5, bias=false]
\linklayers
\hiddenlayer[count=3, bias=false, title=Latent\\Representation]
\linklayers
\hiddenlayer[count=5, bias=false]
\linklayers
\outputlayer[count=8, title=Output Layer, text=\xout]
\linklayers
\end{neuralnetwork}
\end{document}