Ed.evaluate y_pred values


Hi there,

This is a basic question about Edward but I just wanted to clarify something, referring to Radford Neal’s PhD thesis on Bayesian neural networks: https://pdfs.semanticscholar.org/db86/9fa192a3222ae4f2d766674a378e47013b1b.pdf.

When y_pred is calculated in ed.evaluate() using Monte Carlo estimates (lines 156-159 in https://github.com/blei-lab/edward/blob/master/edward/criticisms/evaluate.py),
it is equivalently evaluating equation 3.14 in the below screenshot? (taken from Neal)

i.e. it is sampling from the posterior of the (neural network) parameters (equation 3.12 in Neal), applying the function with each sample of parameters to get an estimate of y_pred using x_test, then averaging?
My confusion arises because in the comments in the code I refer to above it says “Monte Carlo estimate the mean of the posterior predictive.”, but I interpret this as sampling from equation 3.13 to get y_pred, not 3.12 as is done by Neal.

Many thanks in advance,