![]() |
1
30
嗯,你真的无意中撞上了冰山。。。 作为前奏,让我们明确方差的概念;标准偏差仅定义为 标量 变量;对于向量变量(如您自己的3d输出),方差的概念不再有意义 协方差矩阵 而是使用( Wikipedia ,则, Wolfram )。
继续前奏,你的
在澄清了这些细节之后,让我们继续讨论问题的本质。 问题的核心在于实践和相关教程中很少提及(甚至暗示)的东西:具有多个输出的高斯过程回归是 非常不平凡 仍然是一个活跃的研究领域。可以说,scikit learn无法真正处理该案件,尽管它表面上似乎会这样做,但至少不会发出一些相关警告。 让我们在 最近的 科学文献: Gaussian process regression with multiple response variables
Remarks on multi-output Gaussian process regression (2018)-引用(原文强调):
Physics-Based Covariance Models for Gaussian Processes with Multiple Outputs (2013)-引用:
因此,正如我所说,我的理解是,尽管文档中没有提到或暗示类似的内容(在项目页面上打开相关问题可能会很有趣),但sckit learn并不能真正处理此类情况。这似乎是 this relevant SO thread ,以及 this CrossValidated thread 关于GPML(Matlab)工具箱。 话虽如此,除了恢复到对每个输出单独建模的选择之外(这不是一个无效的选择,只要您记住,您可能会从三维输出元素之间的相关性中丢弃有用的信息),至少有一个Python工具箱似乎能够建模多个输出GPs,即 runlmc公司 ( paper ,则, code ,则, documentation |
![]() |
2
2
首先,如果使用的参数是“sigma”,那是指标准偏差,而不是方差(回想一下,方差只是标准偏差的平方)。 使用方差更容易概念化,因为方差定义为从数据点到集合平均值的欧几里德距离。 在本例中,您有一组二维点。如果您将这些视为二维平面上的点,那么方差就是每个点到平均值的距离。标准差将是方差的正根。 在这种情况下,您有16个测试点和16个标准偏差值。这很有意义,因为每个测试点都有自己定义的与集合平均值的距离。 如果要计算点集的方差,可以将每个点的方差分别求和,除以点数,然后减去均方。该数字的正根将产生集合的标准偏差。 旁白:这也意味着,如果通过插入、删除或替换更改集合,则每个点的标准偏差都将更改。这是因为将重新计算平均值以适应新数据。这个迭代过程是k-means聚类背后的基本力量。 |
|
D. Smel · 如何在线性模型的两侧生成对数函数 7 年前 |
![]() |
santobedi · scikit学习中的多输出高斯过程回归 7 年前 |
|
Ben · FELM+Stargazer-将工具变量估计与OLS对齐 7 年前 |
|
Anx8 · minepy:缓冲区的维度数错误 7 年前 |