高斯过程

By admin in 天文台 on 2019年1月16日

闽南语文档: http://sklearn.apachecn.org/cn/0.19.0/modules/gaussian_process.html

英文文档: http://sklearn.apachecn.org/en/0.19.0/modules/gaussian_process.html

法定文档: http://scikit-learn.org/stable/

GitHub: https://github.com/apachecn/scikit-learn-doc-zh(觉得不错麻烦给个
Star,大家直接在卖力)

贡献者: https://github.com/apachecn/scikit-learn-doc-zh\#贡献者

至于我们: http://www.apachecn.org/organization/209.html

 

 

 

 

1.7. 高斯过程

 

高斯过程
(GP)
 是一种常用的监察学习方法,意在缓解*回归问题*和*概率分类问题*。

高斯过程模型的优点如下:

  • 预测内插了观看结果(至少对于正则核)。

  • 展望结果是概率格局的(高斯格局的)。这样的话,
    众人可以总括得到经验置信区间并且为此来判定是否需要修改(在线拟合,自适应)

    在有些区域的预测值。

  • 通用性: 可以指定不同的:ref:内核(kernels)<gp_kernels>。
    虽说该函数提供了常用的水源,可是也得以指定自定义内核。

高斯过程模型的缺陷包括:

  • 它们不稀疏,例如,模型日常采用任何样本/特征音信来开展预测。
  • 高维空间模型会失效,高维也就是指特征的数目超越几十个。

1.7.1. 高斯过程回归(GPR)

GaussianProcessRegressor 类实现了回归意况下的高斯过程(GP)模型。
为此,需要实现指定GP的先验。当参数 normalize_y=False 时,先验的均值
通常假若为常数或者零; 当 normalize_y=True 时,先验均值平常为教练数
据的均值。而先验的方差通过传递 内核(kernel) 对象来指定。通过
最大化基于传递 optimizer 的对数边缘似然猜想(LML),内核的超参能够在
GaussianProcessRegressor 类执行拟合过程中被优化。由于 LML 可能会设有五个局部最优解,因而优化过程可以因而点名 n_restarts_optimizer 参数举办多次重复。通过设置基础的超参开端值来拓展第两回优化的运转。后续的运转
过程中超参值都是从合理界定值中任意挑选的。倘诺需要保障初叶化超参值,
那么需要把优化器设置为 None 。

指标变量中的噪声级别通过参数 alpha 来传递并点名,要么全局是常数要么是一个数据点。
请注意,适度的噪音水平也得以有助于处理拟合期间的数字问题,因为它被有效地贯彻为吉洪诺夫正则化(Tikhonov
regularization),
即通过将其添加到要旨矩阵的对角线。明确指定噪声水平的替代模式是将
惠特eKernel 组件包含在根本中,
这可以从数额中估算全局噪声水平(见下边的言传身教)。

算法实现是遵照 [RW2006] 中的算法
2.1 。除了标准 scikit learn 揣测器的 API 之外, GaussianProcessRegressor
的效应还包括:

  • 同意预测,无需事先拟合(基于GP先验)
  • 提供了一种额外的章程 sample_y(X) , 其评估 在给定输入处从 GPR
    (先验或后验)绘制的样书
  • 光天化日了一种方法 log_marginal_likelihood(theta) ,
    可以在表面使用另外格局选取超参数,例如通过马尔科夫链蒙特卡罗链(马克ov
    chain Monte 卡尔o)。

1.7.2. GPR 示例

1.7.2.1. 有所噪声级的 GPR 臆想

该示例表明所有包含 惠特(Whit)eKernel 的和核(sum-kernel)的 GPR
可以臆想数据的噪音水平。 对数边缘似然(LML)景象的图示讲明存在 LML
的两个部分最大值。

天文台 1

先是个照应于所有高噪声电平和大长度尺度的模型,其表明多少中噪声的有着变更。

天文台 2

其次个具有较小的噪音水平和较短的长短尺度,这表达了无噪声效用关系的大部转变。
第两种形式有较高的可能性;
然则,依照超参数的开头值,基于梯度的优化也可能会磨灭到高噪声解。
因而,对于不同的初步化,重复优化多次是很关键的。

天文台 3

1.7.2.2. GPR 和内核岭回归(Kernel Ridge Regression)的相比较

内核脊回归(KRR)和 GPR 通过中间使用 “kernel trick(内核技巧)”
来读书目的函数。
KRR学习由相应基本引起的半空中中的线性函数,该空间对应于原有空间中的非线性函数。
基于平均误差损失与脊正弦化,采纳基础空间中的线性函数。
GPR使用基础来定义先验分布在对象函数上的协方差,并动用观察到的教练多少来定义似然函数。
基于贝叶斯定理,定义了对象函数上的(高斯)后验分布,其平均值用于预测。

一个首要区别是,GPR 可以依据边际似然函数上的梯度上升选用基础的超参数,
而KRR需要在交叉验证的损失函数(均方误差损失)上执行网格搜索。
另一个界别是,GPR
学习目标函数的生成概率模型,因而得以提供有意义的置信区间和后验样本以及预测值,
而KRR仅提供预测。

下图表达了人工数据集上的二种办法,其中囊括正弦目的函数和强噪声。
该图相比较了依照 ExpSineSquared 内核的 KRR 和 GPR
的求学模型,适用于就学周期函数。
内核的超参数控制内核的平滑度(length_scale)和周期性(周期性)。
另外,数据的噪音水平由 GPR 通过基础中的此外的 惠特(Whit)eKernel 组件和 KRR
的正则化参数 α 明确地上学。

天文台 4

该图体现,二种办法都足以学习合理的对象函数模型。
GPR将函数的周期正确地分辨为 天文台 5 (6.28),而
KRR 采取倍增的周期为 天文台 6 。
此外,GPR 为 KRR 不可用的预测提供了客观的置信区间。
三种办法之间的重要区别是拟合和预测所需的岁月:
原则上KRR的拟合速度较快,超参数优化的网格搜索与超参数( “curse of
dimensionality(维度诅咒)” )呈指数级关系。
GPR中的参数的基于梯度的优化不受此指数缩放的影响,由此在拥有三维超参数空间的该示例上一定快。
预测的时光是一般的; 但是,生成 GPR
预测分布的方差需要的大运比生成平均值要长。

1.7.2.3. Mauna Loa CO2 数据中的 GRR

该示例基于 [RW2006] 的第 5.4.3 节。
它以身作则了运用梯度上升的对数边缘似然性的复杂性内核工程和超参数优化的示范。
数据包括在 1958 年至 1997 年间夏威夷 Mauna Loa
天文台收集的每月平均大气二氧
化碳浓度(以百异常之几(ppmv)计)。目标是将二氧化碳浓度建模为时间t的函数。

基础由多少个术语组成,负责表明信号的不比属性:

  • 一个年代久远的,顺利的进步势头是由一个 RBF 内核来解释的。
    具有较大尺寸尺寸的RBF内核将使该分量平滑;
    没有强制这种动向正在上升,这给 GP 带来了那几个选项。
    具体的尺寸尺度和振幅是随意的超参数。
  • 季节性因素,由定期的 ExpSineSquared 内核解释,固定周期为1年。
    该周期分量的尺寸尺度控制其平滑度是一个随机参数。
    为了使准确周期性的衰减,接纳带有RBF内核的出品。
    该RBF组件的尺寸尺寸控制衰减时间,并且是另一个随意参数。
  • 较小的后期不规则性将由 RationalQuadratic 内核组件来表达,
    RationalQuadratic 内核组件的尺寸尺度和 alpha
    参数决定长度尺度的扩散性。 遵照 [RW2006]
    ,那一个不规则性可以更好地由 RationalQuadratic 来解释, 而不是 RBF
    内核组件,这或许是因为它可以容纳多少个长度尺度。
  • “noise(噪声)” 一词,由一个 RBF
    内核贡献组成,它将解释相关的噪音分量,

如一些天气现象以及 惠特eKernel 独白噪声的进献。
相对幅度和RBF的尺寸尺度是尤为的人身自由参数。

在减去目标平均值后最大化对数边际似然率暴发下列基本,其中LML为-83.214:

34.4**2 * RBF(length_scale=41.8)
+ 3.27**2 * RBF(length_scale=180) * ExpSineSquared(length_scale=1.44,
                                                   periodicity=1)
+ 0.446**2 * RationalQuadratic(alpha=17.7, length_scale=0.957)
+ 0.197**2 * RBF(length_scale=0.138) + WhiteKernel(noise_level=0.0336)

于是,大多数对象信号(34.4ppm)由长时间上升势头(长度为41.8年)解释。
周期分量的振幅为3.27ppm,衰减时间为180年,长度为1.44。
长期的衰变时间注脚我们在地点非凡类似周期性的季节性成分。
相关噪声的肥瘦为0.197ppm,长度为0.138年,白噪声贡献为0.197ppm。
因此,全体噪声水平分外小,注明该模型可以很好地诠释多少。
该图还出示,该模型直到2015年左右才能做出置信度相比较高的估算

天文台 7

1.7.3. 高斯过程分类(GPC)

所述 GaussianProcessClassifier 器实现了用于分类目标的高斯过程(GP),当测试的前瞻采取类概率的格局,更可以用于概率分类。
GaussianProcessClassifier
在隐函数 天文台 8 从前设置GP先验,然后通过链接函数举办压缩以获得概率分类。
隐函数 天文台 9 因而就是所谓的打扰函数(nuisance
function),其值不可能被考察到,并且自己不享有相关性。
其目的是同意模型的表明格局更加便捷,并且 天文台 10 在展望过程中被删去(整合)。
GaussianProcessClassifier 实现了逻辑链接函数,
对于该逻辑,积分不可能在分析上测算,但在二进制情状下很容易近似。

与回归设置相反,即便设置了高斯过程先验,隐函数 天文台 11 的后验也不符合高斯分布,
因为高斯似然不适用于离散类标签。相反,使用的是与逻辑链接函数(logit)对应的非高斯似然。
GaussianProcessClassifier 通过拉普拉斯近乎(Laplace
approximation)来估计非高斯后验分布。 更多详细音信,请参见 [RW2006]
的第 3 章。

GP先验平均值假定为零。先验的协方差是通过传递 内核(kernel) 对象来指定的。
在通过最大化基于传递的对数边缘似然(LML)的 GaussianProcessRegressor
拟合期间,
优化内核的超参数 optimizer 。由于LML可能具有六个部分最优值,
所以优化器可以经过点名重复启动 n_restarts_optimizer 。
第一次运行始终从基础的开端超参数值起首执行;
从已经从允许值的限定中随心所欲选取超参数值来拓展后续运行。
假设初步超参数需要保障一定,None 可以传递作为优化器。

GaussianProcessClassifier 通过实践基于OvR(one-versus-rest)或
OvO(one-versus-one )策略的磨练和预测来支撑多类分类。
在OvR(one-versus-rest)策略中,每个类都配有一个二进制高斯过程分类器,该项目被磨炼为将该类与其它类分开。
在 “one_vs_one”
中,对于每对类拟合一个二进制高斯过程分类器,这被训练为分离这几个类。
这个二进制预测因子的展望被组合成多类预测。更多详细信息,请参阅 多系列分类 。

在高斯过程分类的场馆下,”one_vs_one” 策略可能在统计上更廉价,
因为它必须解决事关整个磨炼集的每一个子集的好多题材,
而不是整整数据集的较少的问题。由于高斯过程分类与数据集的轻重缓急相互立方,这恐怕要快得多。
不过,请留心,”one_vs_one” 不帮助预测概率推测,而只是简单的猜测。
此外,请留心, GaussianProcessClassifier 在内部还不曾兑现真正的多类
Laplace 近似,
但如上所述,在解决其中二进制分类任务的根底上,它们选择OvR或OvO的三结合措施。

1.7.4. GPC 示例

1.7.4.1. GPC 概率预测

天文台,该示例表明了对于有所不同取舍的超参数的RBF内核的GPC预测概率。
第一幅图突显GPC具有自由采取的超参数的展望概率,以及相应于最大LML(对数边缘似然)对应的超参数。

即便经过优化LML采纳的超参数具有非凡大的LML,不过按照测试数据的对数损失,它们的突显更差。
该图显示,这是因为它们在阶级边界(这是好的)表现出类概率的可以变动,
但预测概率接近0.5远离类边界(这是坏的)那种不良影响是出于GPC内部使用了拉普拉斯逼近。

其次幅图体现了内核超参数的不同选项的LML(对数边缘似然),优良了在率先幅图中运用的经过黑点(训练集)选取的七个超参数。

天文台 12

天文台 13

1.7.4.2. GPC 在 XOR 数据集上的举例表明

此示例表达了在XOR数据上的GPC。各向同性的核( RBF )和非固定的核( DotProduct )比较固定性。
在那些一定的数量集上, DotProduct 内核拿到了更好的结果,因为类边界是线性的,与坐标轴重合。
不过,实际上,诸如 RBF 这样的平昔内核平常得到更好结果。

天文台 14

1.7.4.3. iris 数据集上的高斯过程分类(GPC)

该示例表明了用来虹膜数据集的二维版本上各向同性和各向异性RBF核的GPC的估摸概率。
这声明了GPC对多类分类的适用性。
各向异性RBF内核通过为三个特色维度分配不同的长短尺度来得到稍高的LML(对数边缘似然)。

天文台 15

1.7.5. 高斯过程基本

水源(也得以叫做GPs上下文中的”协方差函数”)
是控制高斯过程(GP)先验和后验形状的重中之重组成部分。
它们经过定义多个数据点的“相似性”,并结合相似的
数据点应该具备相似的目标值的只要,对所学习的函数举办编码。
内核可以分成两类:固定内核,只在乎五个数据点的离开,
不借助于于它们的断然值 天文台 16 ,由此它们对于输入空间中的转换是不变的;非定点的根本,取
决于数据点的具体值。固定内核可以进一步细分为各向同性和各向
异性内核,其中各向同性内核不会在输入空间中旋转。想要通晓更多细节,请参见 [RW2006] 的第四章。

1.7.5.1. 高斯过程内核 API

Kernel 重即便用来计量数据点之间的高斯过程协方差。
为此,内核中 __call__ 方法会被调用。该格局可以用来总括2d阵列X中装有数据点对的“自动协方差”,或二维阵列X的多寡点
与二维阵列Y中的数据点的装有组成的“互协方差”。以下论断对于
所有内核k(除了 WhiteKernel)都是确立的:k(X) == K(X, Y=X)
假诺一味是自协方差的对角线元素被应用,那么内核的措施 diag() 将会被调用,
该形式比等价的调用 __call__np.diag(k(X, X)) == k.diag(X) 具有更高的总结功用。

水源通过超参数向量 天文台 17 举行参数化。这多少个超参数能够控制例如内核的长短或周期性(见下文)。通过设置 __call__ 方法的参数 eval_gradient=True ,所有的基本帮忙统计分析
内核自协方差对于 天文台 18 的分析梯度。该梯度被用来在
高斯过程中(不论是回归型依然分类型的)总结LML(对数边缘似然)函数
的梯度,进而被用来通过梯度下降的点子极大化LML(对数边缘似然)函数
从而确定 天文台 19 的值。对于每个超参数,当对水源的实例
举行赋值时,起头值和边界值需要被指定。通过基础对象属性 theta , 天文台 20的眼前值可以被获取或者安装。更首要的是, 
超参的边界值可以被内核属性 bounds 获取。需要小心的是,
以上二种属性值(theta和bounds)都会回到内部使用值的日志转换值,
这是因为这两种属性值常常更适合基于梯度的优化。每个超参数的
规范 Hyperparameter 以实例格局被贮存在对应基本中。
请注意采取了以”x”命名的超参的基石必然具有self.x和self.x_bounds这二种特性。

有着内核的架空基类为 Kernel 。Kernel
基类实现了
一个貌似的接口 Estimator ,提供了措施 get_params() ,set_params() 以及 clone() 。这也允许通过诸如 Pipeline 或者 GridSearch 之类的元估摸来安装内核值。
需要留意的是,由于根本的嵌套结构(通过基础操作符,如下所见),
内核参数的称谓或者会变得相对复杂些。平日来说,对于二元基础操作,
参数的左运算元以 k1__ 为前缀,而右运算元以 k2__ 为前缀。
一个附加的惠及措施是 clone_with_theta(theta)
该情势再次来到克隆版本的基石,可是设置超参数为 theta。 示例如下:

>>>

>>> from sklearn.gaussian_process.kernels import ConstantKernel, RBF
>>> kernel = ConstantKernel(constant_value=1.0, constant_value_bounds=(0.0, 10.0)) * RBF(length_scale=0.5, length_scale_bounds=(0.0, 10.0)) + RBF(length_scale=2.0, length_scale_bounds=(0.0, 10.0))
>>> for hyperparameter in kernel.hyperparameters: print(hyperparameter)
Hyperparameter(name='k1__k1__constant_value', value_type='numeric', bounds=array([[  0.,  10.]]), n_elements=1, fixed=False)
Hyperparameter(name='k1__k2__length_scale', value_type='numeric', bounds=array([[  0.,  10.]]), n_elements=1, fixed=False)
Hyperparameter(name='k2__length_scale', value_type='numeric', bounds=array([[  0.,  10.]]), n_elements=1, fixed=False)
>>> params = kernel.get_params()
>>> for key in sorted(params): print("%s : %s" % (key, params[key]))
k1 : 1**2 * RBF(length_scale=0.5)
k1__k1 : 1**2
k1__k1__constant_value : 1.0
k1__k1__constant_value_bounds : (0.0, 10.0)
k1__k2 : RBF(length_scale=0.5)
k1__k2__length_scale : 0.5
k1__k2__length_scale_bounds : (0.0, 10.0)
k2 : RBF(length_scale=2)
k2__length_scale : 2.0
k2__length_scale_bounds : (0.0, 10.0)
>>> print(kernel.theta)  # Note: log-transformed
[ 0.         -0.69314718  0.69314718]
>>> print(kernel.bounds)  # Note: log-transformed
[[       -inf  2.30258509]
 [       -inf  2.30258509]
 [       -inf  2.30258509]]

持有的高斯过程基本操作都足以由此 sklearn.metrics.pairwise 来进展互操作,反之亦然。 Kernel 的子类实例可以由此 metric 参数传给 sklearn.metrics.pairwise 中的

pairwise_kernels 。更要紧的是,超参数的梯度不是分析的,而是数字,所有这个基本只补助

各向同性距离。该参数 gamma 被认为是一个超参数,可以拓展优化。其他基本参数在起先化时直接设置,
并保持一向。

1.7.5.2. 基础内核

ConstantKernel 内核类可以被用作 Product 内核类的一局部,
在它可以对其余因子(内核)举行度量的现象下仍旧作为更改高斯过程均值的

Sum 类的一有的。这有赖于参数 天文台 21 的安装。该方法定义为:

天文台 22

WhiteKernel 内核类的重大接纳实例在于当解释信号的噪声部分时
可以看成根本集合的一局部。通过调节参数 天文台 23
该类可以用来打量噪声级别。具体如下所示:

天文台 24

1.7.5.3. 基础操作

基础操作是把1~2个基内核与新水源举行合并。内核类 Sum 通过 天文台 25 相加来统一 天文台 26 和 天文台 27 内核。内核类 Product 通过 天文台 28 把 天文台 29 和 天文台 30 内核举办联合。内核类 Exponentiation 通过 天文台 31 把基内核与
常量参数 天文台 32 举行联合。

1.7.5.4. 径向基函数内核

RBF 内核是一个稳住内核,它也被喻为“平方指数”内核。它经过定长的参数 天文台 33 来对内核进行参数化。该参数既可以是标量(内核的各向同性变体)或者与输入 天文台 34 (内核的各向异性变体)
具有相同数量的维度的向量。该内核可以被定义为:

天文台 35

本条基本是最为可微的,那表示那么些基础作为协方差函数的 GP
具有所有阶数的均方差导数,
因而特别平整。由RBF内核爆发的GP的先验和后验示意图如下所示:

天文台 36

1.7.5.5. Matérn 内核

Matern 内核是一个定位内核,是 RBF 内核的泛化。它有一个附加的参数 天文台 37
该参数控制结果函数的平滑程度。它由定长参数 天文台 38 来实现参数化。该参数既能够是标量
(内核的各向同性变体)或者与输入 天文台 39 (内核的各向异性变体)具有同等数量的维度的向量。
该内核可以被定义为:

天文台 40

因为 天文台 41 ,Matérn 内核收敛到
RBF 内核。 当 天文台 42 时,Matérn
内核变得与相对指数内核相同时,即

天文台 43

特别的,当 天文台 44 时:

天文台 45

和 天文台 46 :

天文台 47

是读书函数的常用采纳,并且不是极致可微的(由 RBF 内核假定)
不过至少存有一阶( 天文台 48 )或者二阶( 天文台 49 )可微性。

通过 天文台 50 灵活控制学习函数的平滑性可以进一步适应真正的最底层函数关联属性。
通过 Matérn 内核爆发的高斯过程的先验和后验如下图所示:

天文台 51

想要更进一步地询问不同门类的Matérn内核请参阅 [RW2006] ,
pp84。

1.7.5.6. 靠边二次基本

RationalQuadratic 内核可以被看做不同特点尺度下的 RBF 内核的层面混合(一个海阔天空和)
它通过长度尺度参数 天文台 52 和比例混合参数 天文台 53 举办参数化。
此时仅补助 天文台 54 标量的各向同性变量。内核公式如下:

天文台 55

从 RBF 内核中生出的高斯过程的先验和后验如下图所示:

天文台 56

1.7.5.7. 正弦平方内核

ExpSineSquared 内核可以对周期性函数举行建模。它由定长参数 天文台 57 以及周期参数 天文台 58 来实现参数化。此时仅援助 天文台 59 标量的各向同性变量。内核公式如下:

天文台 60

从ExpSineSquared内核中暴发的高斯过程的先验和后验如下图所示:

天文台 61

1.7.5.8. 点乘内核

DotProduct 内核是非固定内核,它可以经过在线性回归的 天文台 62 的相关系数上添加
坚守于 天文台 63 的先验以及在线性回归的偏置上助长坚守于 天文台 64 的先验来得到。
该 DotProduct 内核对于原点坐标的转动是不变的,因此不是更换。它经过安装参数 天文台 65 来开展参数化。
当 天文台 66 时,该内核叫做同质线性内核;否则该内核是非同质的。内核公式如下:

天文台 67

DotProduct 内核平时和指数分布相结合。实例如下图所示:

天文台 68

1.7.5.9. 参考文献

[RW2006]

1.7.6. 传统高斯过程

在本节中,描述了本子 0.16.1 及前边 scikit 中高斯过程的贯彻,
请注意,此实现已被弃用,将在本子 0.18 中删去。

1.7.6.1. 回归实例介绍

假若大家要替代这么些函数:天文台 69 。
为了形成这或多或少,该意义被评估到一个实验设计上。然后,
大家定义一个回归和相关模型可能被另外参数指定的高斯模型,
并且要求模型可以拟合数据。拟合过程由于面临实例化过程中
参数数目标熏陶恐怕借助于参数的最大似然揣测或者直接运用给定的参数。

>>>

>>> import numpy as np
>>> from sklearn import gaussian_process
>>> def f(x):
...     return x * np.sin(x)
>>> X = np.atleast_2d([1., 3., 5., 6., 7., 8.]).T
>>> y = f(X).ravel()
>>> x = np.atleast_2d(np.linspace(0, 10, 1000)).T
>>> gp = gaussian_process.GaussianProcess(theta0=1e-2, thetaL=1e-4, thetaU=1e-1)
>>> gp.fit(X, y)  
GaussianProcess(beta0=None, corr=<function squared_exponential at 0x...>,
        normalize=True, nugget=array(2.22...-15),
        optimizer='fmin_cobyla', random_start=1, random_state=...
        regr=<function constant at 0x...>, storage_mode='full',
        theta0=array([[ 0.01]]), thetaL=array([[ 0.0001]]),
        thetaU=array([[ 0.1]]), verbose=False)
>>> y_pred, sigma2_pred = gp.predict(x, eval_MSE=True)

1.7.6.2. 噪声数据拟合

当含噪声的数目被用来做拟合时,对于每个数据点,高斯过程模型可以指定噪声的方差。 GaussianProcess 包含一个被添加到磨炼多少拿到的自相关矩阵对角线中的
参数 nugget 。通常来说这是一种档次的吉洪诺夫正则化方法。
在平方指数相关函数的例外意况下,该归一化等效于指定输入中的小数方差。也就是:

天文台 70

使用 nugget 以及 corr 正确安装,高斯过程可以更好地用于从噪声数据恢复生机给定的向量函数。

1.7.6.3. 数学形式

1.7.6.3.1. 最先假如

设若需要对电脑实验的结果开展建模,例如使用一个数学函数:

天文台 71

而且如果那多少个函数是 一个 有关于 一个 高斯过程 天文台 72 的原则选拔方法,
那么从这么些只要出发,GPML 平常可以代表为如下形式:

天文台 73

其中, 天文台 74 是一个线性回归模型,并且 天文台 75 是一个
以零为均值,协方差函数完全平稳的高斯过程:

天文台 76

天文台 77 表示其方差, 天文台 78 表示只是依据样本之间的相对化相关距离的相干函数,可能是特点(这是平稳性尽管)

从那多少个基本的公式中得以小心到GPML仅仅是骨干的线性二乘回归问题的恢弘。

天文台 79

除了,我们其它倘若由有关函数指定的范本之间的部分上空相干性(相关性)。
事实上,普通最小二乘法假使当 天文台 80 时,相关性模型 天文台 81 是
1;否则为 0
,相关性模型为 狄拉克 相关模型–有时在克里金文献中被喻为 熔核 相关模型

1.7.6.3.2. 至上线性无偏预测(BLUP)

俺们现在演绎出基于观测结果的 最佳线性无偏预测 天文台 82

天文台 83

它可以由 加以的性质 加以派生:

  • 它是线性的(观测结果的线性组合)

天文台 84

  • 它是无偏的

天文台 85

  • 它是最好的(在均方误差的意思上)

天文台 86

之所以最优的带权向量 天文台 87 是以下等式约束优化问题的解

天文台 88

以拉格朗日式样重写这么些受拘束的优化问题,并愈加寻求要满足的一阶最优条件,
从而得到一个以闭合形式表明式为平息形式的预测器 –
参见参考文献中完全的求证。

末段,BLUP 为高斯随机变量,其中均值为:

天文台 89

方差为:

天文台 90

其中:

  • 遵照自相关函数以及内置参数 天文台 91 所定义的相关性矩阵为:

天文台 92

  • 在开展预测的点与 DOE 中的点期间的相互关的向量:

天文台 93

  • 回归矩阵 (例如范德蒙矩阵
    倘使 天文台 94 以多项式为基):

天文台 95

  • 广义最小二乘回归权重:

天文台 96

  • 和向量:

天文台 97

亟需重点注意的是,高斯过程预测器的几率输出是截然可分析的同时看重于基本的线性代数操作。
更确切地说,预测结果的均值是五个简单线性组合(点积)的和,方差需要多个矩阵反转操作,但关系
矩阵只可以采取 Cholesky 分解算法分解一遍。

1.7.6.3.3. 经历最佳线性无偏推测(EBLUP)

到先天截至,自有关和回归模型都已假定给出。不过,在实践中,它们平素都是未知的
由此需要为这一个模型 涉嫌模型 做出(积极的)经验采用。

依照这一个选用,可以来估计 BLUP
中涉嫌到的残存未知参数。为此,需要运用一层层
被提供的观测值同时结合一多样臆想技术。如今拔取的法子是基于 DACE’s Matlab
工 具包的*最大似然估量* – 参见 DACE
手册中的完全演绎公式。最大似然算计的问题在
自相关参数中是一个大局优化的题材。这种全局优化通过 scipy.optimize 中的
fmin_cobyla 优化函数加以落实。但是,在各向异性的景观下,大家提供了
Welch 的分量优化算法的兑现 – 参见参考。

1.7.6.4. 关联模型

出于几乎等于的比方,常用的涉嫌模型和局部显赫的SVM内核相匹配。它们必须要满意Mercer 条件
并且需要保障一向形式。可是,请留心,相关模型的拔取应该与考察到来的原本实验的已知特性一致。
例如:

  • 假如原本实验被认为是无比可微(平滑),则应使用 平方指数关联模型 。
  • 假若不是最为可微的, 那么需要采用 指数关联模型.
  • 还要注意,存在一个将衍生度作为输入的连带模型:这是 Matern
    相关模型,但这里并不曾兑现( TODO ).

关于选取适宜的涉嫌模型更详尽的啄磨,请参阅 Rasmussen&威廉姆斯(Williams) 的文献。

1.7.6.5. 回归模型

常用的线性回归模型包括零阶(常数)、一阶和二阶多项式。 但是可以以 Python
函数的样式指定它自己的表征,它将特色X
作为输入,并赶回一个带有函数集值的向量。唯努比亚以限定地是,
函数的个数不可能超越有效观测值的数目,由此着力的回归问题不被*确定*。

1.7.6.6. 兑现细节

模型通过 DACE 的 Matlab 工具包来实现。

参考文献:

  • DACE, A Matlab Kriging
    Toolbox
     S
    Lophaven, HB Nielsen, J Sondergaard 2002,
  • W.J. Welch, R.J. Buck, J. Sacks, H.P. Wynn, T.J. Mitchell, and M.D.
    Morris (1992). Screening, predicting, and computer experiments.
    Technometrics, 34(1) 15–25.

 

 

 

 

普通话文档: http://sklearn.apachecn.org/cn/0.19.0/modules/gaussian_process.html

英文文档: http://sklearn.apachecn.org/en/0.19.0/modules/gaussian_process.html

 

 

 

官方文档: http://scikit-learn.org/stable/

GitHub: https://github.com/apachecn/scikit-learn-doc-zh(觉得不错麻烦给个
Star,我们平昔在忙乎)

贡献者: https://github.com/apachecn/scikit-learn-doc-zh\#贡献者

关于大家: http://www.apachecn.org/organization/209.html

有趣味的们也足以和大家一齐来保安,持续立异中 。。。

机器学习互换群: 629470233

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 亚洲必赢手机官网 版权所有