Get probability of parameter given new data

The above code is not evaluating the Expectation of P(y_new | w=w_i), instead, it is evaluating the expectation of P(y_new is generated from component k). Also, we drop sigma from the trace is not because we dont need the information, the posterior of the transformed parameter (sigma_log__ which is the actually free parameter being sampled) is used. However, we dont use the w in f_complogp.

To get P(y_new | w=w_i), you need to work out the conditional probability which is P(y_new, w=w_i) / P(w=w_i).