pymc.gp.LatentKron#
- class pymc.gp.LatentKron(*, mean_func=<pymc.gp.mean.Zero object>, cov_funcs=<pymc.gp.cov.Constant object>)[源代码]#
潜在的高斯过程,其协方差是张量积核。
gp.LatentKron 类是具有Kronecker结构协方差的GP的直接实现,不涉及任何噪声或特定似然。GP通过 prior 方法构建,新输入位置上的条件GP通过 conditional 方法构建。有关这些方法的更多信息,请参阅它们的文档字符串。此GP实现可用于建模其输入覆盖多维均匀间隔网格的高斯过程。LatentKron 依赖于 KroneckerNormal 分布,更多信息请参阅其文档字符串。
- 参数:
- mean_func均值,默认零
均值函数。
- cov_funcspython:协方差列表,默认 [常数]
构成张量(Kronecker)积的协方差函数。
示例
# One dimensional column vectors of inputs X1 = np.linspace(0, 1, 10)[:, None] X2 = np.linspace(0, 2, 5)[:, None] Xs = [X1, X2] with pm.Model() as model: # Specify the covariance functions for each Xi cov_func1 = pm.gp.cov.ExpQuad(1, ls=0.1) # Must accept X1 without error cov_func2 = pm.gp.cov.ExpQuad(1, ls=0.3) # Must accept X2 without error # Specify the GP. The default mean function is `Zero`. gp = pm.gp.LatentKron(cov_funcs=[cov_func1, cov_func2]) # ... # After fitting or sampling, specify the distribution # at new points with .conditional # Xnew need not be on a full grid Xnew1 = np.linspace(-1, 2, 10)[:, None] Xnew2 = np.linspace(0, 3, 10)[:, None] Xnew = np.concatenate((Xnew1, Xnew2), axis=1) # Not full grid, works Xnew = pm.math.cartesian(Xnew1, Xnew2) # Full grid, also works with model: fcond = gp.conditional("fcond", Xnew=Xnew)
方法
LatentKron.__init__
(*[, mean_func, cov_funcs])LatentKron.conditional
(name, Xnew[, jitter])返回在新输入位置 Xnew 上评估的条件分布。
LatentKron.marginal_likelihood
(name, X, ...)LatentKron.predict
(Xnew[, point, given, ...])LatentKron.prior
(name, Xs[, jitter])返回在输入位置 Xs 上评估的先验分布。
属性
Xs
f