主要内容

GPR模型的块坐标下降逼近

对于大量的观测,使用精确的方法进行参数估计和对新数据进行预测可能是昂贵的(见精确探地雷达方法).帮助解决这一问题的一种近似方法是块坐标下降(BCD)方法。类指定预测方法,就可以使用BCD方法进行预测“PredictMethod”、“bcd的调用中的名称-值对参数fitrgp,然后使用预测函数。

BCD方法的思想是计算

α K X X + σ 2 N 1 y H β

用不同于精确方法的方法。BCD估计 α 通过求解以下优化问题:

α 参数分 α f α

在哪里

f α 1 2 α T K X X + σ 2 N α α T y H β

fitrgp采用块坐标下降法(BCD)来解决上述优化问题。对于熟悉支持向量机(svm)的用户,用于拟合支持向量机的顺序最小优化(SMO)和ISDA(迭代单数据算法)是BCD的特殊情况。fitrgp对每个BCD更新执行两个步骤-块选择和块更新。在区块选择阶段,fitrgp的集合使用随机和贪婪策略的组合 α 接下来要优化的系数。在块更新阶段,所选 α 系数是优化的同时保持另一个 α 系数固定于它们之前的值。重复这两个步骤直到收敛为止。BCD不存储 n n 矩阵 K X X 在内存中,但它只是计算 K X X 矩阵。因此,与BCD相比,它的内存效率更高“PredictMethod”、“准确”

实践经验表明,不需要求解优化问题进行计算 α 达到非常高的精度。例如,停止迭代是合理的 | | f α | | 低于 η | | f α 0 | | ,在那里 α 0 的初值是 α 而且 η 是一个小常数(比如说 η 10 3. ).结果来自“PredictMethod”、“准确”而且“PredictMethod”、“bcd的除了BCD计算之外是等效的 α 以不同的方式。因此,“PredictMethod”、“bcd的可以认为是一种有效的记忆方法吗“PredictMethod”、“准确”.BCD往往比“PredictMethod”、“准确”对于大型n.方法不能计算预测间隔“PredictMethod”、“bcd的选择。这是因为计算预测区间需要解决与计算问题类似的问题 α 对于每个测试点,这也是很昂贵的。

使用BCD近似拟合GPR模型

这个例子展示了使用块坐标下降(BCD)近似拟合高斯过程回归(GPR)模型到具有大量观测数据。

小n -PredictMethod“准确”而且“bcd”产生相同的结果

生成一个小型样本数据集。

rng (0,“旋风”);N = 1000;X = linspace(0,1,n)';X = [X,X.^2];y = 1 + X *[1, 2] +罪(20 * X *[1, 2])。/ (X (: 1) + 1) + 0.2 * randn (n, 1);

使用创建GPR模型“FitMethod”、“准确”而且“PredictMethod”、“准确”

gpr = fitrgp(X,y,“KernelFunction”“squaredexponential”...“FitMethod”“准确”“PredictMethod”“准确”);

使用创建另一个GPR模型“FitMethod”、“准确”而且“PredictMethod”、“bcd的

gprbcd = fitrgp(X,y,“KernelFunction”“squaredexponential”...“FitMethod”“准确”“PredictMethod”“bcd”“BlockSize”, 200);

“PredictMethod”、“准确”而且“PredictMethod”、“bcd的应该是相等的。计算结果是一样的美元\帽子{\α}$只是方式不同而已。方法还可以查看迭代“详细”,1调用中的名称-值对参数fitrgp

用这两种方法计算拟合值并进行比较:

ypred = resubPredict(gpr);ypredbcd = resubPredict(gprbcd);马克斯(abs (ypred-ypredbcd))
Ans = 5.8853e-04

拟合值彼此接近。

现在,将数据与拟合值一起绘制“PredictMethod”、“准确”而且“PredictMethod”、“bcd的

图;情节(y,“k”。);持有;情节(ypred“b -”“线宽”2);情节(ypredbcd“m——”“线宽”2);传奇(“数据”“PredictMethod准确”“PredictMethod BCD”“位置”“最佳”);包含(“观察指数”);ylabel (的响应值);

可见“PredictMethod”、“准确”而且“PredictMethod”、“bcd的制作几乎相同的套装。

大n -使用“FitMethod”、“sd”而且“PredictMethod”、“bcd的

生成一个类似于前一个数据集的更大数据集。

rng (0,“旋风”);N = 50000;X = linspace(0,1,n)';X = [X,X.^2];y = 1 + X *[1, 2] +罪(20 * X *[1, 2])。/ (X (: 1) + 1) + 0.2 * randn (n, 1);

n= 50000,矩阵KXX)是5万乘5万。存储KXX)则需要约20gb的RAM。要将GPR模型拟合到此数据集,请使用“FitMethod”、“sd”的随机子集= 2000分。的“ActiveSetSize”调用中的名称-值对参数fitrgp指定活动集大小.计算\α美元使用“PredictMethod”、“bcd的与一个“BlockSize”5000股。的“BlockSize”中的名称-值对参数fitrgp元素的元素个数\α美元软件在每次迭代中优化的向量。一个“BlockSize”Of 5000假设您使用的计算机可以在内存中存储5000 × 5000的矩阵。

gprbcd = fitrgp(X,y,“KernelFunction”“squaredexponential”...“FitMethod”“sd”“ActiveSetSize”, 2000,“PredictMethod”“bcd”“BlockSize”, 5000);

绘制数据和拟合值。

图;情节(y,“k”。);持有;情节(resubPredict (gprbcd),“m -”“线宽”2);传奇(“数据”“PredictMethod BCD”“位置”“最佳”);包含(“观察指数”);ylabel (的响应值);

这个情节和小一点的情节相似n

参考文献

Grippo, L.和M. Sciandrone。凸约束下块非线性Gauss-Seidel方法的收敛性。运筹学通讯。卷26,页127-136,2000。

[2]波,L.和C.斯米彻斯库。“用于大规模高斯过程回归的贪婪块坐标下降。”在第二十四届人工智能不确定性会议论文集(UAI2008): http://arxiv.org/abs/1206.3238, 2012。

另请参阅

|

相关的话题

Baidu
map