基于张量的多元多阶马尔科夫多模态预测方法
本博客整理自研读的论文,文末会附上出处。
基于张量的多元多阶马尔科夫多模态预测方法
一.问题背景
基于马尔科夫理论进行预测被认为是一种可行的方法。近年来,结合张量理论和马尔科夫理论进行精准预测,已成为学术界的一种新趋势。
在早期对多阶马尔科夫模型的研究中,是通过多个时刻的线性组合近似为一阶马尔科夫链来处理,但是这种方法难以处理多元多阶马尔科夫模型。
通过张量Z特征分解和多阶马尔科夫理论相结合来进行预测需要 假设任意两个连续时刻的状态发生完全独立,而这种假设现实基本不成立,而且直接利用主Z特征向量进行预测,是不考虑前面m-1个状态的,这和多阶马尔科夫模型是不相匹配的。
现拟解决以下问题:
(1)如何提出一个通用的多元多阶马尔科夫模型,并在没有任何假设的情况下实现状态转移?
(2)如何求解多元多阶马尔科夫模型中的稳态联合概率分布(即:稳态联合主特征张量)?
(3)如何实现基于稳态联合主特征张量的多模态准确预测?
二.多元多阶马尔科夫模型
在一个随机过程中,如果每个状态的影响因素个数为k,我们称该状态为k元状态;如果当前时间的状态是由前m 时刻的状态决定的,我们称该马尔科夫链为m 阶马尔科夫链。因此,多元多阶马尔科夫模型也被称为k元m 阶马尔科夫模型。
为了方便,定义下面两种简化表示的方法:
1.张量连接和张量统一乘
示例:
这里在两个张量元素之间规定的运算是乘法运算,张量沿着time阶连接,这种运算是一种类似模乘但又不是模乘的运算。
示例:
两个张量在A,B这两个阶作缩并运算,在Time这个阶作连接运算,缩并和连接之间的标记用一个点和一个中文形式的逗号来突出,同作缩并或连接的阶的标记用英文形式的逗号隔开。
在P、Q、M、N取值不同的情况下,张量统一乘可以代表大部分运算。
前面说过,张量连阶是一种很类似模乘的运算,当只有Q不等于0时,张量统一乘变为张量hadamard积,如果在此基础上Q=2,M=1,这样就是一个三阶张量和一个二阶张量作连接运算,相当于将三阶张量沿着M这一阶一片一片地和二阶张量作hadamard积。
2.多元多阶马尔科夫转移模型
多元多阶马尔科夫转移模型可 借助张量统一乘 得到,首先定义一个状态转移张量 P’’,对于一个k元m阶的马尔科夫模型,这个状态转移张量的阶数将是k×(m+1)阶,然后定义一个联合概率分布张量 M,它的阶数将是k×m阶。
以一元二阶马尔科夫模型为例:
三阶状态转移张量中的元素为(利用条件概率):
二阶联合概率分布张量为(利用联合概率):
通过概率转移理论可得到:
从而一元二阶马尔科夫模型的转移恰好可以由张量统一乘来实现,即:
下图可加深理解:
基于张量统一乘的表示方法可以推广到k元m阶马尔科夫模型,即:
用公式可表达为:
从k元m阶马尔科夫模型看,一个状态转移张量包含了m+1个时刻(其中一个时刻是要预测的下一时刻),从一个时刻的整体状态转移到下一时刻的整体状态的概率和为1,一个联合概率分布张量包含了m个时刻,其所有元素概率和为1,并且这两个张量的元素都是大于等于0且小于1的,另外,一个时刻受到 k 种因素影响,这带来的是k阶,每一种因素可以由多种状态,这带来的是维数,每一种因素的状态数不一定是相等的 ,比如一个时刻受到时段和流量两种因素影响,但是时段只能处于1、2两种状态,流量则可处于 A、B、C 三种状态,所以一个时刻所处的状态是一个整体的状态,它是一个序列,每种因素都只能处于一个状态。
3.多元多阶马尔科夫多步转移模型
以下是多步转移模型的两种表达:
三.多元多阶马尔科夫稳态联合主特征张量
这里提出提出了一种基于张量统一乘的幂法迭代算法来计算多元多阶马尔科夫过程的稳态联合状态概率分布张量,称之为稳态联合主特征张量(Stationary Joint Eigentensor,SJE)。
为保证该基于张量统一乘的迭代幂法算法是收敛的,一种方法是确保多元多阶马尔科夫的转移张量是非周期的和不可约的,如果有周期意味着所处状态具有了周期性,无法保证从任意分布出发,如果可约则意味着限制了一种状态无法到达另外一种状态,这样无法保证平稳分布的唯一性:
一个A下面划条横线的张量是修正转移张量,每个值都等于1/(I1 I2……Ik)m+1,等号左边的张量是最后要得到的张量,为修正参数,影响收敛速度,剩下的那个张量为初始的转移张量,
另一种等价的方法是对转移过程执行随机性素性修正:
最右边的张量 E 为修正联合概率张量,每个值都等于1/(I1 I2……Ik)m,最左边的张量为稳态联合主特征张量,为修正参数,影响收敛速度,P 为要输入的转移张量。
下图为多元多阶马尔科夫稳态联合概率分布张量求解算法:
关于这个算法的存在性、解的唯一性和收敛性只给出结论:
四.多元多阶马尔科夫多模态预测
多模态预测方法:
- 基于稳态联合主特征张量的多模态预测方法:给定一个k 元m 阶马尔科夫模型,我们可求得k×m 阶的稳态联合主特征张量。为对未来时刻的状态进行预测,首先需要根据当前场景指定前m-1 个时刻的状态,然后从稳态联合主特征张量种提取第m个时刻的k 阶张量,其代表在前m-1 个时刻的状态都给定情况下下一时刻的稳态状态概率分布。
- 基于稳态主特征张量的预测方法:通过对过去m-1 个时刻内对所有状态的概率求和,可以计算第m 时刻的稳态状态概率分布张量,即稳态主特征张量(Stationary Eigentensor,SE)。
以上两种方法看上去好像没太大区别,但其实只是在一阶马尔科夫模型上比较相似,两者的差别借助下面的实例可以说明。
这是一个联合概率分布矩阵,A、B、C为三种流量状态,Trt和Trt-1表示两个时刻,按照第一种预测方法,如果规定前一时刻的状态为C,所得稳态状态概率分布张量为【0.0106 0.0646 0.0470】,使用第二种方法则恰得箭头右边的张量,其中每个结果均为分别沿上一时刻概率求和的结果。
下面这个二元二阶马尔科夫模型的联合概率分布张量是类似的:
本博客整理自华中科技大学刘华中的博士学位论文——《基于张量的大数据高效计算及多模态分析方法研究》的第七章基于张量的多元多阶马尔科夫多模态预测方法