高斯过程拟合优度

机器算法验证 模型选择 最大似然 高斯过程 可能性
2022-04-01 14:18:14

假设我得到了一个基于一些训练数据现在我得到了一定批量大小的样本数据流。M

GP 没有对时间序列进行建模,但它试图回归某些位置的值,这将被访问多次。x

我知道在某些时候,生成数据批次的分布会发生突然变化。(至少在某些位置x

现在我正在寻找一种统计上合理的方法来检测这种变化,也就是说,我想找到一点,当 GP 不再对数据进行足够好的建模时。

我想我会基于检测似然函数的“大”变化。但是,我不确定如何在这里解释“大”,因为似然函数的值仅在比较中具有意义,但其本身具有意义。L(θ|x)

注意:我问这个,因为有人说我原来的问题太抽象了。不过,我不想改变整个问题,因为已经有了一些答案。

2个回答

你认为什么会导致这种变化?是均值、方差还是其他方面的变化?您期望的更改类型应该确定您应该测试更改的参数。这是突然的变化吗?如果是这样,这可以使用时间序列的干预分析来完成,例如使用 Box Jenkins 模型进行静态高斯时间序列。自动装箱软件可以为您处理这个问题。

所以以下是我想出的解决方案。如果我错了,请纠正我:)

假设

模型变化是突然的。

主意

我的想法如下:我们通过模型比较来确定拟合的优劣。所以我们创建了一个非常简单的模型,我们知道如何计算它的可能性。一旦这个模型变得比原来的 GP 模型更有可能,我们就假设模型发生了变化。

我们假设数据被归一化以具有零均值。D

空模型似然

作为 GP 的简化,我们在每个测试位置选择均值为零且方差较大的正态分布。

logp(D|M0)=dDlogp(di|M0)其中di=(xi,yi)

logp(d|M0)=12log(2π)12log(σ2)12σ2xi2

GP模型似然

对于具有协方差矩阵的 GP,似然性由下式给出:Ky

logp(D|MGP)=12yKy1y12log|Ky|n2log2π

根据贝叶斯因子做出决策

假设模型有一个统一的先验,我们计算 log Bayes 因子如下:

logB01=logp(D|M0)logp(D|MGP)

根据这篇论文,如果logB01大于 2 我们假设基础模型发生了变化。