研究问题
分别使用MLP和RNN网络,将格兰格因果检验扩展到非线性领域
背景动机
- 格兰杰因果关系量化了一个时间序列的历史数值对另一个时间序列的预测程度。
- 大多数格兰格因果检验假设线性时间序列动力学,并使用基于VAR方法,这无法检验非线性依赖问题。
- 现存检验非线性依赖的方法一般使用加性模型,这可能会遗漏预测因子之间重要的非线性交互作用。
模型思想
- 使用MLP和LSTM衡量输入序列的滞后对输出序列的影响
- 对输入的输出权重进行稀疏诱导惩罚,从而选择没有非线性格兰杰效应的时间序列
符号定义
假设
x
t
∈
R
p
x_{t} \in \mathbb{R}^{p}
xt?∈Rp是p维的时间序列在t时刻的取值,根据VAR模型的假设,
x
t
x_{t}
xt?是历史取值的线性组合,即
x
t
=
∑
k
=
1
K
A
(
k
)
x
t
?
k
+
e
t
x_{t}=\sum_{k=1}^{K} A^{(k)} x_{t-k}+e_{t}
xt?=k=1∑K?A(k)xt?k?+et?,其中
A
(
k
)
A^{(k)}
A(k)是一个p×p的矩阵。
时间序列j不是时间序列i的格兰格因当且仅当
?
k
,
A
i
j
(
k
)
=
0
\forall k, A_{i j}^{(k)}=0
?k,Aij(k)?=0,可以将上述问题转换为带约束的回归问题



时间序列j不是时间序列i的格兰格因当且仅当
g
i
g_i
gi?不依赖于
x
<
t
j
x_{<tj}
x<tj?
模型方法
为了能够分离不同时间序列的不同时刻的格兰格因果影响,分别对每一个
g
i
g_i
gi?用MLP进行建模,称这种方式为cMLP
第一个隐藏层的计算公式为:

最终的预测公式为

对第一层的权重添加L1正则化,如果对
g
i
g_i
gi?对应的MLP实现的第一层权重的第j列即
W
:
j
1
k
W_{:j}^{1k}
W:j1k?全都为0,就可以说j不是i的格兰格因。如果将
λ
\lambda
λ调得足够大,就可以获得很小的格兰格因果关系集。

为了确定lag(延迟)的取值,假设其为k,满足
W
:
j
1
k
′
=
0
?for?
k
′
>
k
?且?
W
:
j
1
k
′
≠
0
?for?
k
′
≤
k
W_{: j}^{1 k^{\prime}}=0 \text { for } k^{\prime}>k \text { 且 } W_{: j}^{1 k^{\prime}} \neq 0 \text { for } k^{\prime} \leq k
W:j1k′?=0?for?k′>k?且?W:j1k′??=0?for?k′≤k
将目标函数调整为以下形式:

隐藏层计算公式为:

预测公式为

f这里使用LSTM实现

单层情况下的稀疏约束


实验部分



评价
论文整体上的思想和模型还是比较简单易懂的,但正则参数λ的取值是一个问题。
|