LiNGAMにVAR(Vector Autoregression)モデルを組み合わせて時系列に拡張したもの。LiNGAMと同様な仮定を置いている。
仮定
誤差変数は非ガウス分布
線形の構造方程式モデル
非巡回性
隠れた共通原因がない
通常の VAR は「過去が未来を予測できるか」という グレンジャー因果性(Granger causality) に基づくが、
同時刻内の因果方向は識別できない
構造的(介入的)因果解釈が弱い
という制約がある。VAR-LiNGAM はこれに対し、
を同一モデル内で明示的に推定する。
VARモデルについて¶
変数がn次元、ラグの次数がpだとする。(例えば時点tの観測値は x1,t,x2,t,…,xn,t となる。)
VAR(p) では、各変数 xi,t は、すべての変数の過去 p 期分の線形結合で表される。
xi,t=k=1∑pj=1∑naij(k)xj,t−k+εi,t(i=1,…,n) aij(k):変数 j の k 期前」が「変数 i の現在」に与える影響
εi,t:変数 i に対応する誤差項
状態ベクトル xt∈Rn 、
ラグ k の係数行列 Ak∈Rn×n、
誤差ベクトル εt をそれぞれ
xt=⎝⎛x1,tx2,t⋮xn,t⎠⎞,Ak=⎝⎛a11(k)a21(k)⋮an1(k)a12(k)a22(k)⋮an2(k)⋯⋯⋱⋯a1n(k)a2n(k)⋮ann(k)⎠⎞,εt=⎝⎛ε1,tε2,t⋮εn,t⎠⎞ とおくと、VAR(p) は次のように表現できる。
xt=k=1∑pAkxt−k+εt ※切片を含めた表現もされる
xt=c+k=1∑pAkxt−k+εt VAR-LiNGAM¶
モデル¶
p 次元の時系列 xt に対し、VAR-LiNGAM は以下を仮定する。
xt=B0xt+k=1∑KBkxt−k+et B0:同時(instantaneous)因果効果行列。DAG構造。
Bk:ラグ k における因果効果
et:成分間で独立な非ガウス分布に従う誤差
構造 VAR 表現¶
(I−B0)xt=k=1∑KBkxt−k+et I−B0 は、変数の並び替えにより下三角行列にできる(=因果順序が存在)ことが仮定される。
アルゴリズム¶
VAR-LiNGAM は 2段階推定で実装されることが多い。
Step 1: VAR 部分の推定¶
通常の VAR を推定する。
xt=k=1∑KAkxt−k+rt OLS 等で推定
残差 rt を取得
Step 2: 残差に LiNGAM を適用¶
を推定する。
LiNGAMパッケージにVARLiNGAMが実装されている