Well I have another question about how the final trace in PyMC3 works (another application). I used hpd() function to find 95% interval but almost all true values are outside of this interval. What that means? how can I improve the results?
Before running the model, I standardized all columns and then reversed to the original sale (using scikit-learn MinMaxScaler)
bd = trace[-1000:][‘y_est’]
predictions = pd.DataFrame()
predictions[‘pred’] = bd.mean(axis=0)
predictions = predictions[~predictions.pred.isnull()]
predictions[‘y’] = new_data.y
predictions[‘residual’] = predictions.pred - predictions.y
bd_hpd = pm3.hpd(bd)
predictions[‘prctile_95’] = bd_hpd[:, 1]
predictions[‘prctile_5’] = bd_hpd[:,0]
