def plot_prediction_MC(model, y_train, y_test, plot_title=''):
T = y_test.shape[0]
x_samples, my, vy = model.predict_forward(T, prop_mode=PROP_MC)
T_train = y_train.shape[0]
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(np.arange(T_train), y_train[:, 0], 'k+-')
ttest = np.arange(T_train, T_train+T)
ttest = np.reshape(ttest, [T, 1])
loglik, ranks = compute_log_lik(np.exp(2*model.sn), y_test, my[:, :, 0].T)
red = 0.1
green = 0. * red
blue = 1. - red
color = np.array([red, green, blue]).T
for k in np.argsort(ranks):
ax.plot(ttest, my[:, k, 0], '-', color=color*ranks[k], alpha=0.5)
# ax.plot(np.tile(ttest, [1, my.shape[1]]), my[:, :, 0], '-x', color='r', alpha=0.3)
# ax.plot(np.tile(ttest, [1, my.shape[1]]), x_samples[:, :, 0], 'x', color='m', alpha=0.3)
ax.plot(ttest, y_test, 'ro')
ax.set_xlim([T_train-5, T_train + T])
plt.title(plot_title)
plt.savefig('/tmp/kink_pred_MC_'+plot_title+'.pdf')
# plt.savefig('/tmp/kink_pred_MC_'+plot_title+'.png')
# generate a dataset from the kink function above
评论列表
文章目录