张春成

V2

2022/05/31阅读:23主题:默认主题

高斯过程

高斯过程

高斯过程是通过零散的观测点,来描述连续变量的概率模型。本文做了一个在线 toy 用来模拟它的计算过程,并能够动态观察不同先验参数下的计算结果变化趋势。


理论简介

面对一个随机变量

,它的值能够用概率密度函数来描。高斯分布是最常用的概率密度函数之一

而随机变量为向量时,

,由于向量的维度之间不独立,因此需要用多元高斯分布来描述它。这是一个联合概率密度函数。

其中有两个重要的东西,分别是随机向量的期望

,以及不同维度之间的度量矩阵,即协方差矩阵 。 现在设想这样一个随机过程,考虑函数

刚才的向量是对这个函数进行的采样

我们的目的是通过采样得到样本分布,推测出函数值的分布。这个过程非常困难,充满了不确定性。

基本思路

高斯过程的基本思路是

  • 首先,假设协方差矩阵可以用自变量来估计
  • 再假设样本分布与函数分布相同
  • 最后,函数分布的概率密度函数是样本分布的条件概率密度 其中,算法的核心是高斯核函数,这个函数是自变量与协方差矩阵之间的桥梁。

其中,

代表两个随机变量,核函数是计算二者之间的距离。这款核函数有两个超参数, ,分别控制估计值的形状和不确定性。

联合概率和条件概率

具体做法如下 我们首先列写出原函数的联合概率密度

其中,

代表协方差函数

再建立样本的联合概率密度函数

其中,

代表自变量的协方差函数

这个是我们想求的,但难以直接求解。于是我们采用最大后验概率方法。把函数和样本的联合概率密度函数联立起来,

两个相除,就得到条件概率密度

万幸的是,这个东西是有解析解的。解析解的形式是联合概率密度函数,它的期望和方差分别代表函数的期望值和不确定性。

在线toy

我根据上述推倒,做了一个在线的toy,可以进入我的新主页查看。 https://listenzcc.github.io/home-page-2/

它基本上是一个可以点击的界面,每点击一次,就在界面上添加一个点。这些点就是样本点,横轴是x,纵轴是y。系统会根据样本点对函数进行估计。估计结果会直接实时地绘制出来。 http://localhost:8000/gaussianProcesses/

当然,两个超参数也是实时可调的,方便了解它们在取不同值时,对估计结果的影响。 网页的下面是这个方面比较权威的书籍,Gaussian Processes for Machine Learning: Book webpage http://gaussianprocess.org/gpml/ 方便查阅。

分类:

后端

标签:

后端

作者介绍

张春成
V2