- bugfix:
FunctionEstimatordoes not needlsifcov_funcis given - new
obs_varianceparameter onFunctionEstimatorandfit()to estimate input-dependent observation noise - new
Predictor.obs_variance(x)returns a smoothed observation noise surface at any location - new
Predictor.leverage(x)returns the GP leverage (hat matrix diagonal) for each point - new
Predictor.loo_residuals_squared(x, y)returns squared leave-one-out residuals via HC3 leverage correction - new convenience methods on
FunctionEstimator:leverage(X),loo_residuals_squared(X, y),get_obs_variance(X) FunctionEstimator.loo_residuals_squared()defaults to training data and returns cached result whenobs_variance=Trueobs_varianceweights are included in predictor serialization (to_json/from_json)sigmais stored on the predictor and included in serializationsigmanow accepts per-feature vectors of shape(p,)or(1, p)for multi-output GPs, giving each output column its own noise levelPredictor.covariance()acceptsnoise_free=True(required when fitted with per-feature sigma) and returns the noise-free posterior covariance- performance: reduce redundant kernel computations when
obs_variance=True - Laplace approximation for posterior uncertainty:
predictor_with_uncertainty=Truenow works with all optimizers, not justoptimizer="advi". When usingoptimizer="L-BFGS-B"oroptimizer="adam", a diagonal Laplace approximation is automatically computed at the MAP estimate to provide posterior uncertainty. This enables.mean_covariance(X)and.uncertainty(X)on the predictor without the runtime cost of ADVI. - fix
requires-pythonfrom>=3.6to>=3.10