Page 104 - 《软件学报》2021年第10期
P. 104
3076 Journal of Software 软件学报 Vol.32, No.10, October 2021
择与排序,然后进行元因果关系的结构与参数学习,最终得到时间序列的元因果关系.
2.2 因果关系结构数据集构建和变量选择
在时间序列段的时序变量因果关系结构学习的基础上,需要将这些因果关系结构转化为用于元因果关系
学习的数据集,即因果关系结构数据集.
(m)
定义 2. 在第 m 段时间序列的因果关系结构 G [t]中,不考虑混合因果关系,时序变量的顺序依次为 X 1 ()m
[tv ( )m 1 q ],..., X 1 ( )m [t v 1 ()m ], X 1 ()m [ ],...,t X n ()m [tv ( )m n q ],..., X n ( )m [t v 1 ()m ], X n ()m [ ].t
用 Y ij ()m []t 表示 X i ()m [t ] h 和 X ()m []t 之间的因果关系变量(当 h=0 和 ij 时,是非时滞因果关系;当 h0 和 i=j
j
时,是时滞因果关系), y ij ()m []t ( f X i ( )m [t h ], X ()m []|t G ( )m [ ])t ,由 y ()m []t 构成的记录称为因果关系结构记录,所有因
j
ij
果关系结构记录构成的数据集则称为因果关系结构数据集. (f X i ()m [t h ], X ()m [ ]|t G ( )m [ ])t 的取值情况如下:
j
1, 存在弧 X ()m [ ]t X ( )m [ ]t
()m i ()m j
0, X i []t 和 X k []t 之间不存在弧 , h 0
( fX i ( )m [t h ], X ()m [ ]|t G ()m [ ])t 1, 存在弧 X i ()m []t X ( )m []t (11)
j
j
()m ( )m
1, 存在弧 X i [t ] h X j [ ]t , h
0
0, 不存在弧
我们将因果关系结构记录分成两个部分:第 1 部分是 (X i ()m [ ],tX ( )m [ ])(t i ) j 产生的非时滞因果关系变量值
j
(这部分的维数固定),第 2 部分是 (X i ()m [t h ], X i ()m [ ])(t h 0) 产生的时滞因果关系变量数对(这部分的维数不固
定,数对为(h,i)).这样,不同因果关系结构记录的维度可能不同,因此,在将因果关系结构记录组建成因果关系结
构数据集时需要补位,补位的值是 0.通过补位,将统一因果关系结构记录的维度,还要将因果关系结构记录中的
数对转化为值 1.我们规定:在因果关系结构记录中,两部分值出现的顺序依次是非时滞因果关系变量值和时滞
因果关系变量值(也可以采用其他方式).在非时滞因果关系变量值部分,值的排列顺序是 i 依次取 1,2,…,n1 且
j=i+1,i+2,…,n;而时滞因果关系变量值部分,值的排列顺序是 i 依次取 1,2,…,n 且 h 值由大到小.虽然因果关系结
构数据集中可能有许多变量,但其中包含大量的冗余变量,在建立元因果关系结构时,可以不考虑这些冗余变量
(通过变量选择去除冗余变量).在因果关系结构数据集中,如果一个变量的取值不发生变化(或者没有统计意义
的变化),便可将其作为冗余变量.当然,随着时间的变化,冗余变量也可能转化为非冗余变量.
2.3 元因果关系的结构与参数学习
在因果关系结构数据集构建和变量选择的基础上,同样采用变量删除法来排序因果关系变量,并通过局部
贪婪打分-搜索来学习元因果关系结构,分别使用最大似然和最大后验估计方法进行元因果关系的初始参数学
习和增量参数学习.具体的元因果关系学习算法如算法 2 所示.
算法 2. 元因果关系学习算法.
输入:时间序列数据集 D c [n,T];
输出:元因果关系(包括结构和参数).
时间序列的丢失数据处理
时间序列的离散化
时间序列分段
for m=1 to
时间序列段的时序变量排序
时间序列段的因果关系结构学习
确定时滞变量
多变量时间序列段的部分转换数据集构建
多变量时间序列段的因果关系结构学习