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)

Screenshot%20from%202019-01-02%2015%3A01%3A07

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,

Kamran

1 Like