你需要取的平方根
sigma2_pred
,因为那是MSE,或者意思是
平方的
错误置信区间应基于其平方根,如下所示:
#GP call
gp = gaussian_process.GaussianProcess()
gp.fit(X, y)
y_pred, sigma2_pred = gp.predict(x, eval_MSE=True)
sd_pred = np.sqrt(sigma2_pred)
#Plots
ax.scatter(X,y,s=400) #Sampled points
ax.plot(x,y_pred) #Approximation
ax.fill_between(x.ravel(),y_pred-10*sd_pred,y_pred+10*sd_pred,color='black',alpha=0.1) #Confidence intervals
ax.plot(x_real,y_real) #True function
看见
here
scikitlearn文档页面上的示例。它们也取平方根。