
The generator of data $({\bf d})$ with parameters $(\boldsymbol{\theta})$
Given a set of training data $\{{\bf d}^\textrm{train}_i, {\bf t}^\textrm{train}_i|i\in[1,n_\textrm{train}]\}$ what is the maximum likelihood estimate of the weights?


$$\begin{align*}\tiny
\mathcal{P}({\bf t}|{\bf d})&=\tiny\int d\boldsymbol{w}d\boldsymbol{v}d\boldsymbol{\alpha}~\mathcal{L}({\bf t}|{\bf d},\boldsymbol{w},\boldsymbol{\alpha})\mathcal{Q}(\boldsymbol{w}|\boldsymbol{v}, \boldsymbol{\alpha}, \{{\bf d}^\textrm{train}_i, {\bf t}^\textrm{train}_i|i\in[1, n_\textrm{train}]\})\\
&\tiny\phantom{=hello}\times\delta(\boldsymbol{v}-\boldsymbol{v}^\textrm{local MLE}, \boldsymbol{\alpha}-\boldsymbol{\alpha}^*)\\
&\tiny=\int d\boldsymbol{w}~\mathcal{L}({\bf t}|{\bf d},\boldsymbol{w}, \boldsymbol{\alpha}^*)\mathcal{Q}(\boldsymbol{w}|\boldsymbol{v}^\textrm{local MLE}, \boldsymbol{\alpha}^*, \{{\bf d}^\textrm{train}_i, {\bf t}^\textrm{train}_i|i\in[1, n_\textrm{train}]\}).
\end{align*}$$
Classical network : $\tiny p(\boldsymbol{w},\boldsymbol{\alpha}) = \delta(\boldsymbol{w}-\boldsymbol{w}^\textrm{MLE},\boldsymbol{\alpha}-\boldsymbol{\alpha}^*)$
Variational inference : $\tiny p(\boldsymbol{w},\boldsymbol{\alpha}) = \mathcal{Q}(\boldsymbol{w}|\boldsymbol{v}^\textrm{local MLE}, \boldsymbol{\alpha}^*, \{{\bf d}^\textrm{train}_i, {\bf t}^\textrm{train}_i|i\in[1, n_\textrm{train}]\})$
Bayesian neural networks : $\tiny p(\boldsymbol{w},\boldsymbol{\alpha}) =\prod_i^{n_\textrm{train}}\mathcal{L}({\bf t}^\textrm{train}_i|{\bf d}^\textrm{train}_i,\boldsymbol{w},\boldsymbol{\alpha})p(\boldsymbol{w},\boldsymbol{\alpha})$
Build networks using physical principles.
Reduces number of parameters
Increases computational efficiency
Decreases overfitting
Improves interpretability
✓ Power spectra remain smooth and close to prior
✓ Weight values are properly sampled after burn in
✓ NPE acts as a contrast enhancer
✓ Fits data!
Impossibly large numbers of simulations become necessary to correctly sample the posterior

This Gaussian form forces the summaries to be Gaussianised
*in the optimal case...
Compare distance between observed summaries and simulation summaries and select results within $\epsilon$
Stop doing machine learning, think, then start doing machine learning again!