如何为高斯过程选择内核?

机器算法验证 机器学习
2022-03-28 01:32:24

在高斯过程(GP)中,核(协方差函数)用于衡量一个点与给定点之间的相似性。GP的内核函数这么多,不知道如何选择合适的内核。例如,如果我的时间序列数据不是周期性的,我应该选择平方指数 (SE) 内核吗?

此外,谁能解释为什么 SE 内核也如此受欢迎?这个内核有什么特点?

提前谢谢你的帮助。

2个回答

留出第二组训练数据,并使用它“训练”您的模型架构。

即 1) 选择任意内核 2) 使用训练集 1 对其进行训练 3) 在训练集 2 上对其进行评估(使用准确率、精度、召回率等) 4) if !tired: goto 1) 5) else: return kernel with high步骤 3 的评估分数)

从“简单”内核开始,然后逐渐尝试更复杂的内核可能是有意义的。简单模型名义上将在训练集 2 上执行。随着内核变得越来越复杂,模型将开始表现得更好。随着内核变得异常复杂,模型在训练集 2 上的表现会更差,因为异常复杂的模型开始过度拟合。这是停止的好时机。

您可能会尝试的一种可能性是使用不同的内核模拟高斯过程。通过这种方式,您可以了解不同的内核会产生什么。这可以通过选择一个值网格并从该网格隐含的多元法线进行模拟来最容易地完成。为了使事情变得更容易,只需为您的平均函数使用零向量。您还可以使用此方法查看模拟抽奖的属性是否倾向于与您的时间序列数据的外观相匹配。

例如,您会看到平方指数核非常平滑。事实上,从具有平方指数核的高斯过程中得出的结果将以概率 1 连续,并且实际上以概率 1 可无限微分。这是平方指数的一个特性,使它非常有用。它得到大量使用的另一个原因是它与高斯密度的明显联系。

其他内核,如 Ornstein-Uhlenbeck 协方差函数将产生更粗略的绘制,并且在模型方面可能更理想。