高斯过程动态模型(GPDM)简析

本文简要分析高斯过程动态模型(GPDM),用于非线性时间序列分析。GPDM 通过低维隐空间捕捉观测数据的时序性和动态过程,适用于数据插值、填补缺失值。文章探讨了 GPDM 与 GPLVM 的区别,指出 GPDM 是 GPLVM 的动态增强版,适用于处理时间连续性的数据。实验部分展示了 GPDM 在人体运动数据和动态纹理建模中的应用效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

序言

这篇文章使用中文书写,旨在分析高斯过程动态模型(Gaussian Process Dynamical Models, GPDM)。在中文互联网,人们对 GPDM 的概念知之甚少,模型本身也相对“古老”,因此作一篇对 GPDM 模型、算法和使用场景的简要分析。

注意,本篇文章基于 Wang et al., 2006, Gaussian Process Dynamical Models 。GPDM 在离散时间序列上也被称为 Gaussian Process State-Space Model。

该工作的介绍:http://www.dgp.toronto.edu/~jmwang/gpdm/

另外,也欢迎大家关注我的个人页面:keyonc.top

GPDM 简介

For example, imagine a mouse is moving in a maze, but we only record the firing rates of its hippocampal place cells. The latent variable is the mouse position, which we know is a relatively smooth trajectory in 3D space, and the observations, neuron firing rates, are a nonlinear function of this latent variable. Can we infer the position of the mouse given just its firing rates? This is the type of question the GPDM attempts to answer.

上面这个生动的例子给了 GPDM 一个大致的工作原理:模型将观测空间中复杂的高维数据映射到低维空间中分析其时序性和动态过程。

GPDM 是来自多伦多大学的 Jack Meng-Chieh Wang 在 2005 年的 Master 学位毕业论文。论文介绍了用于非线性时间序列分析的高斯过程动态模型(GPDM)。一个 GPDM 包括一个低维的隐空间(Latent Space)及其相关动态信息,以及一个从隐空间到观测空间的映射。作者以闭式将模型参数边缘化,从而使上述动态和观测映射都被建模为高斯过程,相当于一个 observation_GP 和一个 dynamic_GP。因此,该动态系统是非参数模型,该模型考虑了模型的不确定性。

在实验部分,作者用 CMU 的人类运动数据上训练该模型(其中每个姿势都是 62 维),并通过从后验分布中取样合成新的运动过程。作者使用了不同协方差函数和抽样方法之间的预测结果的比较,并演示了 GPDM 在填补缺失数据上的简单应用。最后,为了说明隐空间的不确定性,作者探索了超参数的不同先验设置,并使用蒙特卡洛期望最大化算法(Monte Carlo expectation-maximization)展示了一些初步的 GPDM 学习结果。

相关工作

高斯过程(Gaussian Process, GP) 是观测值出现在一个连续域(例如时间或空间)的随机过程。在机器学习的语境下,高斯过程是一种通用的监督学习方法,旨在解决回归和概率分类问题。高斯过程的优点包括能对观测值进行插值、预测结果是概率分布的、可以指定不同的内核等。但是,高斯过程在高维空间中效率较低。在编程实验中,常见的 GP 框架包括基于 Pytorch 的 GPyTorch 和 Matlab 工具包 GPML 等。

image.png

高斯过程隐变量模型(Gaussian Process Latent Variable Model, GPLVM)是一种无监督的非线性降维方法,它使用高斯过程来学习高维数据的低维表示,是 PCA 的一种泛化。在高斯过程回归的中,我们给定输入 X X X 和输出 Y Y Y ,并选择一个核函数,学习最能描述从 X X X Y Y Y 的映射的超参数。在 GPLVM 中,我们没有给定 X X X,只给定 Y Y Y

GPDM 的方法直接地受到无监督的 GPLVM 的启发。GPLVM 对观察数据的联合分布和它们在低维隐空间的相应表示进行建模,这个分布可以被用作新测量的推断的先验。然而,GPLVM 不是一个动态模型:它假设数据于数据之间是相互独立的。因此,GPLVM 不关注数据的时间连续性(时序性),也不对隐空间的动态过程进行建模。说到底,高斯过程动态模型(GPDM)可以被视为一种增强的高斯过程隐变量模型(GPLVM),其中隐变量按照其自身的高斯过程演化。

模型与方法

给定观测空间数据 Y = [ y 1 … y T ] ⊤ \mathbf Y=\lbrack{\mathbf y}_1\dots{\mathbf y}_T\rbrack^\top Y=[y1yT] ,其中包含 T T T 个观测点,每项具有 D D D 维,而这些观测数据点按照时间顺序 t t t 排列。令 X = [ x 1 … x T ] ⊤ \mathbf X=\lbrack{\mathbf x}_1\dots{\mathbf x}_T\rbrack^\top X=[x1xT] Q Q Q 维的隐变量,一般来说 Q ≪ D Q \ll D QD

按照 Wang 在论文中的人体运动实验, Y \mathbf Y Y 代表了运动记录仪中记录下的人体各关节的数据,而这个关节数一共有 62 个,因此对于每一帧 y t {\mathbf y}_t yt ,有 D = 62 D=62 D=62 。显然,当人体在进行走路或者慢跑时,这些关节都是以一定的周期规律进行运动的,因此 62 个关节数据显然有些冗余,而在高维空间的计算开销是相当大的,此时我们需要利用隐变量 X \mathbf X X 保存 Y \mathbf Y Y 的主要信息。我们人为设定隐空间维度为 Q = 3 Q = 3 Q=3 ,通过 Y \mathbf Y Y 来生成每一帧对应的 X \mathbf X X 。此时我们只需要在低维空间进行动态分析,即可完成相当高精度的重建。

考虑以下一阶马尔可夫动态(first-order Markov dynamics):
x t = f ( x t − 1 ; A ) + n x , t y t = g ( x t ; B ) + n y , t (1) \begin{aligned} \mathbf{x}_t &= f(\mathbf{x}_{t-1}; \mathbf{A}) + \mathbf{n}_{x,t} \\ \mathbf{y}_t &= g(\mathbf{x}_{t}; \mathbf{B}) + \mathbf{n}_{y,t} \end{aligned} \tag{1} xtyt=f(xt1;A)+nx,t=g(xt;B)+ny,t(1)
其中 f f f g g g 是分别具有参数 A \mathbf{A} A B \mathbf{B} B 的映射,而 n x , t \mathbf{n}_{x,t} nx,</

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值